|Non-Confidential||PDF version||ARM DUI0472J|
|Home > Overview of the Compiler > Language extensions|
The compiler supports numerous extensions to its various source languages.
These language extensions are categorized as follows:
The compiler makes some language features of C99 available:
As extensions to strict C90,
As extensions to both Standard C++ and strict C90,
The compiler supports numerous extensions to strict C99, for example, function prototypes that override old-style nonprototype definitions.
These extensions to Standard C are also available in C90.
The compiler supports numerous extensions to strict C++, for example, qualified names in the declaration of class members.
These extensions are not available in either Standard C or C90.
The compiler supports some extensions specific to strict C++ and strict C90, for example, anonymous classes, structures, and unions.
The compiler supports some GNU extensions.
The compiler supports a range of extensions specific to the ARM compiler, for example, instruction intrinsics and other built-in functions.