Back in https://reviews.llvm.org/D109459, we stopped using the C++03
emulation for std::nullptr_t by default, which was an ABI break. We
still left a knob for users to turn it back on if they were broken by
the change, with a note that we would remove that knob after one release.
The time has now come to remove the knob and clean up the std::nullptr_t
emulation.
This is where I messed up in this patch, basically. By switching from include_next <stddef.h> to include <stddef.h>, I made it so that ::nullptr_t would be defined even when including <cstddef>. That being said, I really really dislike "clever" headers like this -- IMO all the <cfoo> headers should just include <foo.h> and put their declarations inside namespace std.