C Extensions (Using the GNU Compiler Collection (GCC)) (original) (raw)
Next: Built-in Functions Provided by GCC, Previous: C++ Implementation-Defined Behavior, Up: Introduction [Contents][Index]
6 Extensions to the C Language Family ¶
GNU C provides several language features not found in ISO standard C. (The -pedantic option directs GCC to print a warning message if any of these features is used.) To test for the availability of these features in conditional compilation, check for a predefined macro__GNUC__
, which is always defined under GCC.
These extensions are available in C and Objective-C. Most of them are also available in C++. See Extensions to the C++ Language, for extensions that apply only to C++.
Some features that are in ISO C99 but not C90 or C++ are also, as extensions, accepted by GCC in C90 mode and in C++.
- Additional Numeric Types
- Array, Union, and Struct Extensions
- Named Address Spaces
- Attributes Specific to GCC
- Pragmas Accepted by GCC
- Thread-Local Storage
- OpenMP
- OpenACC
- An Inline Function is As Fast As a Macro
- When is a Volatile Object Accessed?
- How to Use Inline Assembly Language in C Code
- Other Extensions to C Syntax
- Extensions to C Semantics