You copied the Doc URL to your clipboard.

Type attributes

The __attribute__ keyword enables you to specify special attributes of variables or structure fields, functions, and types. The keyword format is either of the following:

__attribute__((attribute1, attribute2, ...))
__attribute__((__attribute1__, __attribute2__, ...))

For example:

void * Function_Attributes_malloc_0(int b) __attribute__((malloc));
static int b __attribute__((__unused__));

Table 11 summarizes the available type attributes.

Table 11. Type attributes that the compiler supports, and their equivalents
Type attributeNon-attribute equivalent
__attribute__((bitband))-
__attribute__((aligned))__align
__attribute__((packed))

__packed[a]

__attribute__((transparent_union))-

[a] The __packed qualifier does not affect type in GNU mode.