Attributes are a way to provide additional information about a declaration to the compiler. The C+11 attribute syntax is consistent with the C2x standard.
The compiler supports three ways to add attributes to your program:
__attribute__((attribute_name(arguments)))
__declspec(attribute_name(argument))
[[attribute_name(arguments)]]
[[attribute-namespace :: attribute_name(arguments)]]
Some attributes are available for both Intel® microprocessors and non-Intel microprocessors but they may perform additional optimizations for Intel® microprocessors than they perform for non-Intel microprocessors. Refer to the individual attribute name for a detailed description.