The following identifiers are reserved for use as keywords and may not be used otherwise:
asm default _Imaginary static __asm do inline struct auto double int switch _Bool else long typedef break enum register union case extern restrict unsigned char float return void _Complex for short volatile const goto signed while continue if sizeofThe keyword asm is reserved in all compilation modes except -Xc. The keyword __asm is a synonym for asm and is available under all compilation modes, although a warning will be issued when it is used under the -Xc mode.
The the new C99 keywords
Imaginary are not recognized as keywords
for -Xc and -Xb.