8.11.14 Uninitialized Variable Attribute

The uninitialized attribute is used with objects having automatic storage duration and indicates to the compiler that the object should not be automatically initialized when the option -ftrivial-auto-var-init is in effect.

The -ftrivial-auto-var-init option forces all automatic variables that do not have explicit initializers to be assigned a value by the compiler. These additional compiler initializations can incur a significant run-time overhead. Use this attribute to exclude selected objects from this initialization, in order to reduce runtime overhead. This attribute has no effect when the -ftrivial-auto-var-init option has not been specified.