<div dir="ltr">Hi,<div><br></div><div>r207606 changed the __need_foo macros to behave like they do with gcc: If they are set, _only_ the __need_foo stuff gets defined. libc++'s cstddef sets a few __need_foo settings, so cstddef now doesn't work right with libc++ after clang r207606.<br>
</div><div><br></div><div>The attached patch removes the __need_foo defines from libc++'s cstddef. They were added with a cryptic commit message ""for ubuntu" years ago – I think they're incorrect, and things still seem to work without them. (libstdc++ doesn't set them either.) Maybe they were needed before clang had r207606 – if so, this patch should also improve how libc++ works when built with gcc.</div>
<div><br></div><div>This fixes PR19723, see the bug for some more information and discussion.</div><div><br></div><div>Ok?</div><div><br></div><div>Nico</div></div>