cstd-c89.h - scc - simple c99 compiler
HTML git clone git://git.simple-cc.org/scc
DIR Log
DIR Files
DIR Refs
DIR Submodules
DIR README
DIR LICENSE
---
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