https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93469

Jonathan Wakely <redi at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|WAITING                     |UNCONFIRMED
     Ever confirmed|1                           |0

--- Comment #7 from Jonathan Wakely <redi at gcc dot gnu.org> ---
Thanks. This seems to be an Mac OS X feature, not a bug.

Selecting a specific POSIX version overrides the __STDC_VERSION and __cplusplus
values, and so names from newer POSIX standards (like aligned_alloc) are not
available.

IMO that is wrong, but it seems to be an intentional property of the OS X
system headers. Which means that you can't combine -std=c++2a with
-D_XOPEN_SOURCE=500. It produces an impossible combination where names required
to exist by one standard are required to _not_ exist by the other standard.

You could try reporting a radar bug and see if Apple really do consider this
correct behaviour.

Reply via email to