cstd-c89.h (2378B)
1 #define STDC_VERSION "199409L" 2 3 /* Translation limits */ 4 /* 5 * 15 nesting levels of compound statements, iteration control 6 * structures, and selection control structures 7 */ 8 #define NR_BLOCK 15 9 /* 10 * 8 nesting levels of conditional inclusion 11 */ 12 #define NR_COND 8 13 /* 14 * 12 pointer, array, and function declarators (in any combinations) 15 * modifying an arithmetic, a structure, a union, or an incomplete type 16 * in a declaration 17 */ 18 #define NR_DECLARATORS 12 19 /* 20 * 31 declarators nested by parentheses within a full declarator 21 */ 22 #define NR_SUBTYPE 31 23 /* 24 * 32 expressions nested by parentheses within a full expression 25 */ 26 #define NR_SUBEXPR 32 27 /* 28 * 31 significant initial characters in an internal identifier or a 29 * macro name 30 */ 31 #define INTIDENTSIZ 31 32 /* 33 * 6 significant initial characters in an external identifier 34 */ 35 #define EXTIDENTSIZ 6 36 /* 37 * 511 external identifiers in one translation unit 38 */ 39 #define NR_EXT_IDENT 511 40 /* 41 * 127 identifiers with block scope declared in one block 42 */ 43 #define NR_INT_IDENT 127 44 /* 45 * 1024 macro identifiers simultaneously defined in one translation 46 * unit 47 */ 48 #define NR_MACROIDENT 1024 49 /* 50 * 31 parameters in one function definition 51 */ 52 #define NR_FUNPARAM 31 53 /* 54 * 31 arguments in one function call 55 */ 56 #define NR_FUNARG 31 57 /* 58 * 31 parameters in one macro definition 59 */ 60 #define NR_MACROPARAM 31 61 /* 62 * 31 arguments in one macro invocation 63 */ 64 #define NR_MACROARG 31 65 /* 66 * 509 characters in a logical source line 67 */ 68 #define LINESIZ 509 69 /* 70 * 509 characters in a character string literal or wide string literal 71 * (after concatenation) 72 */ 73 #define STRINGSIZ 509 74 /* 75 * 32767 bytes in an object (in a hosted environment only) 76 */ 77 #define OBJECTSIZ 32767 78 /* 79 * 8 nesting levels for #include'd files 80 */ 81 #define NR_INCLUDE 8 82 /* 83 * 257 case labels for a switch statement (excluding those for any 84 * nested switch statements) 85 */ 86 #define NR_SWITCH 257 87 /* 88 * 127 members in a single structure or union 89 */ 90 #define NR_FIELDS 127 91 /* 92 * 127 enumeration constants in a single enumeration 93 */ 94 #define NR_ENUM_CTES 127 95 /* 96 * 15 levels of nested structure or union definitions in a single 97 * struct-declaration-list 98 */ 99 #define NR_STRUCT_LEVEL 15 100 /* 101 * number of defined structs/unions in one translation unit 102 */ 103 #define NR_MAXSTRUCTS 127