Appendix C
Translation Limits
According to ANSI/ISO standard, each compiler conforming to the standard should be able to translate and execute a program that contains constructs subject to the following limits:
- 127 nesting levels of blocks
- 63 nesting levels of conditional inclusion
- 12 pointer, array and function declarators (in any combinations) modifying an arithmetic, structure, union or incomplete type in a declaration
- 63 nesting levels of parenthesized expressions within a full expression
- 63 significant characters in an internal identifier (i.e. with internal linkage) or a macro name
- 31 significant characters in an external identifier (i.e. external linkage)
- 4095 external identifiers in one translation unit (i.e. file)
- 511 identifiers ...
Get Programming in C: A Practical Approach, First Edition now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.