| Specifying Attributes of Variables

Previous | GNU C Language Extensions | Next

The keyword `__attribute__` allows you to specify special attributes of variables or structure fields. This keyword is followed by an attribute specification inside double parentheses. The following attributes are currently defined for variables:

- aligned
- mode
- nocommon
- packed
- section
- transparent_union
- cleanup
- unused
- deprecated

Other attributes are available for functions (see Function Attributes) and for types (see Type Attributes).
You may also specify attributes with `__` preceding and following each keyword. This allows you to use them in header files without being concerned about a possible macro of the same name. For example, you may use `__aligned__` instead of `aligned`.
See Attribute Syntax for details of the exact syntax for using attributes.
To specify multiple attributes, separate them by commas within the double parentheses: for example, `__attribute__ ((aligned (16), packed))`.