ANSI implementation-defined behavior

Translation limits

The following translation limits are defined for this implementation:

Defined translation limits

Item Actual Minimum  
nesting levels of compound statements, iteration control structures, and selection control structures. >=256 15 nesting levels of conditional inclusion
>=32 8   pointer, array, and function declarators (in any combinations) modifying an arithmetic, a structure, a union, or an incomplete type in a declaration
>=32 12   declarators nested by parentheses within a full declarator
>=32 12   expressions nested by parentheses within a full expression
>=128 32   significant initial characters in an internal identifier or a macro name
>=1024 31   significant initial characters in an external identifier
>=1024 6   external identifiers in one translation unit
>=1024 511   identifiers with block scope declared in one block
>=2048 127   macro identifiers simultaneously defined in one translation unit
>=4096 1024   parameters in one function definition
>=256 31   arguments in one function call
>=256 31   parameters in one macro definition
>=128 31   arguments in one macro invocation
>=128 31   characters in a logical source line
>=4096 509   characters in a character string literal or wide string literal (after concatenation)
>=4096 509   bytes in an object (in a hosted environment)
>=65535 32767   nesting levels for #include'd files
>=16 8   case labels for a switch statement (excluding those for any nested switch statements)
unlimited 257   members in a single structure or union
>=512 127   enumeration constants in a single enumeration
>=512 127   levels of nested structure or union definitions in a single struct-declaration-list
>=64 15   functions that can be registered by atexit().
37 32  

Previous topic: C Implementation limits description

© 2003 Caldera International, Inc. All rights reserved.
SCO OpenServer Release 5.0.7 -- 11 February 2003