On Fri, Jul 14, 2023 at 04:56:18PM +0100, Richard Sandiford via Gcc-patches wrote: > Summary: We'd like to be able to specify some attributes using > keywords, rather than the traditional __attribute__ or [[...]] > syntax. Would that be OK?
Will defer to C/C++ maintainers, but as you mentioned, there are many attributes which really can't be ignored and change behavior significantly. vector_size is one of those, mode attribute another, no_unique_address another one (changes ABI in various cases), the OpenMP attributes (omp::directive, omp::sequence) can change behavior if -fopenmp, etc. One can easily error with #ifdef __has_cpp_attribute #if !__has_cpp_attribute (arm::whatever) #error arm::whatever attribute unsupported #endif #else #error __has_cpp_attribute unsupported #endif Adding keywords instead of attributes seems to be too ugly to me. Jakub