c/thread

C includes built-in support for threads, atomic operations, mutual exclusion, condition variables, and thread-specific storages.

These features are optionally provided:
 * if the macro constant is defined by the compiler, the header  and all of the names provided in it are not provided;
 * if the macro constant is defined by the compiler, the header  and all of the names provided in it are not provided.

Reserved identifiers
In future revisions of the C standard:
 * function names, type names, and enumeration constants that begin with either, , , or , and a lowercase letter may be added to the declarations in the header;
 * macros that begin with and an uppercase letter may be added to the macros defined in the  header;
 * typedef names that begin with either or, and a lowercase letter may be added to the declarations in the  header;
 * enumeration constants that begin with and a lowercase letter may be added to the definition of the memory_order type in the  header;
 * function names that begin with and a lowercase letter may be added to the declarations in the  header.

Identifiers reserved for functions names are always reserved for use as identifiers with external linkage, while other identifiers list here are  reserved when  is included.

Declaring, defining, or ing such an identifier results in undefined behavior. Portable programs should not use those identifiers.