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 |