| Nesting levels of compound statements, iteration
control structures, and selection control structures. | 256 | mem |
| Nesting levels of conditional inclusion. | 256 | mem |
| Pointer, array, and function declarators (in
any combination) modifying an arithmetic, structure, union, or incomplete
type in a declaration. | 256 | mem |
| Nesting levels of parenthesized expressions
within a full expression. | 256 | mem |
| Number of initial characters in an internal
identifier or macro name. | 1024 | mem |
| Number of initial characters in an external
identifier. | 1024 | mem |
| External identifiers in one translation unit. | 65536 | mem |
| Identifiers with block scope declared in one
block. | 1024 | mem |
| Macro identifiers simultaneously defined in
one translation unit. | 65536 | mem |
| Parameters in one function declaration. Note
that overload resolution is sensitive to the first 32 arguments
only. | 256 | mem |
| Arguments in one function call. Note that overload
resolution is sensitive to the first 32 arguments only. | 256 | mem |
| Parameters in one macro definition. | 256 | mem |
| Arguments in one macro invocation. | 256 | mem |
| Characters in one logical source line. | 65536 | mem |
| Characters in a character string literal or
wide string literal after concatenation. | 65536 | mem |
| Size of a C++ object. | 262144 | 8388607 |
| Nesting levels of #include file. | 256 | mem |
| Case labels for a switch statement, excluding
those for any nested switch statements. | 16384 | mem |
| Data members in a single class, structure,
or union. | 16384 | mem |
| Enumeration constants in a single enumeration. | 4096 | mem |
| Levels of nested class, structure, or union
definitions in a single struct-declaration-list. | 256 | mem |
Functions registered by atexit(). | 32 | 33 |
| Direct and indirect base classes | 16384 | mem |
| Direct base classes for a single class | 1024 | mem |
| Members declared in a single class | 4096 | mem |
| Final overriding virtual functions in a class,
accessible or not | 16384 | mem |
| Direct and indirect virtual bases of a class | 1024 | mem |
| Static members of a class | 1024 | mem |
| Friend declarations in a class | 4096 | mem |
| Access control declarations in a class | 4096 | mem |
| Member initializers in a constructor definition | 6144 | mem |
| Scope qualifications of one identifier | 256 | mem |
| Nested external specifications | 1024 | mem |
| Template arguments in a template declaration | 1024 | mem |
| Recursively nested template instantiations | 17 | mem |
| Handlers per try block | 256 | mem |
| Throw specifications on a single function declaration | 256 | mem |