Extensions for GNU C compatibility
The following features are enabled with the LANGLVL(*EXTENDED) option, which is the default language level. For more information, see the LANGLVL option in the ILE C/C++ Compiler Reference.
| Language feature | Discussed in: |
|---|---|
| Placement of flexible array members anywhere in structure or union | Flexible array members |
| Static initialization of flexible array members of aggregates | Flexible array members |
__alignof__ operator |
The __alignof__ operator |
__typeof__ operator |
The __typeof__ operator |
| Generalized lvalues | Lvalues and rvalues |
| Function attributes | Function attributes |
#include_next preprocessor
directive |
The #include_next directive |
| Alternate keywords | Keywords for language extensions |
__extension__ keyword |
Keywords for language extensions |
| Type attributes | Type attributes |
| Variable attributes | Variable attributes |
| Zero-extent arrays | Zero-extent array members |
| Variadic macro extensions | Variadic macro extensions |
#warning preprocessor directive |
The #warning directive |
#assert, #unassert preprocessor
directives |
Assertion directives |
The following feature requires compilation with the use of an additional option.
| Language feature | Discussed in: |
|---|---|
| Dollar signs in identifiers | Characters in identifiers |