On Fri, 25 Sept 2026 at 17:41, Tomasz Kaminski <[email protected]> wrote:
>
>
>
> On Fri, Sep 25, 2026 at 6:30 PM Jonathan Wakely <[email protected]> wrote:
>>
>> The stdalign.h macros were removed from C++26 but this patch just tweaks
>> the comment, without actually removing them. Doing so would be a
>> breaking change, although probably not in practice because it seems very
>> unlikely any C++ code is checking those macros.
>>
>> The macros were also removed from C23, so if we remove them from
>> stdalign.h for C then we can decide to do the same for C++ at that time.
>>
>> gcc/ChangeLog:
>>
>>         * ginclude/stdalign.h: Note that the macros were removed from
>>         C++ in C++26.
>>         * ginclude/stdbool.h: Note that the macro is deprecated since
>>         C++23.
>> ---
>>
>> Tested x86_64-linux.
>>
>> OK for trunk?
>
> This looks good to me, but we usually reserve OK as approval from the 
> official reviewer.
> (unless I become one, and I am not aware of it).

It needs approval from a GCC front-end maintainer or global approver,
because these headers are not part of libstdc++ (I included the
libstdc++ list for awareness because these headers are certainly used
by libstdc++ and deprecating/removing the macros is a C++ library
change).


>>
>>
>>  gcc/ginclude/stdalign.h | 2 +-
>>  gcc/ginclude/stdbool.h  | 1 +
>>  2 files changed, 2 insertions(+), 1 deletion(-)
>>
>> diff --git a/gcc/ginclude/stdalign.h b/gcc/ginclude/stdalign.h
>> index a68cb28059ce..94ecbf14a417 100644
>> --- a/gcc/ginclude/stdalign.h
>> +++ b/gcc/ginclude/stdalign.h
>> @@ -33,7 +33,7 @@ see the files COPYING3 and COPYING.RUNTIME respectively.  
>> If not, see
>>  #define alignof _Alignof
>>  #endif
>>
>> -/* These are defined for C++, but deprecated in C++23.  */
>> +/* These are defined for C++, but deprecated in C++23 and gone in C++26.  */
>>  #define __alignas_is_defined 1
>>  #define __alignof_is_defined 1
>>
>> diff --git a/gcc/ginclude/stdbool.h b/gcc/ginclude/stdbool.h
>> index 9070a1876233..6f72714f6d62 100644
>> --- a/gcc/ginclude/stdbool.h
>> +++ b/gcc/ginclude/stdbool.h
>> @@ -46,6 +46,7 @@ see the files COPYING3 and COPYING.RUNTIME respectively.  
>> If not, see
>>  #endif /* __cplusplus */
>>
>>  /* Signal that all the definitions are present.  */
>> +/* This is defined for C++, but deprecated in C++23.  */
>>  #define __bool_true_false_are_defined  1
>>
>>  #endif /* stdbool.h */
>> --
>> 2.55.0
>>

Reply via email to