ref: 39ebee1972c3affd1e02c59971e77f5425da95d3
dir: /inc/c99/cstd.h/
/* See LICENSE file for copyright and license details. */ #define STDC_VERSION "199901L" /* Translation limits */ /* * 127 nesting levels of blocks */ #define NR_BLOCK 127 /* * 63 nesting levels of conditional inclusion */ #define NR_COND 63 /* * 12 pointer, array, and function declarators (in any combinations) * modifying an arithmetic, a structure, a union, or an incomplete type * in a declaration */ #define NR_DECLARATORS 12 /* * 63 nesting levels of parenthesized declarators within a full * declarator */ #define NR_SUBTYPE 63 /* * 63 nesting levels of parenthesized expressions within a full * expression */ #define NR_SUBEXPR 63 /* * 63 significant initial characters in an internal identifier or a * macro name (each universal character name or extended source * character is considered a single character) */ #define INTIDENTSIZ 63 /* * 31 significant initial characters in an external identifier (each * universal character name specifying a short identifier of 0000FFFF * or less is considered 6 characters, each universal character name * specifying a short identifier of 00010000 or more is considered 10 * characters, and each extended source character is considered the * same number of characters as the corresponding universal character * name, if any) */ #define EXTIDENTSIZ 31 /* * 4095 external identifiers in one translation unit */ #define NR_EXT_IDENT 4095 /* * 511 identifiers with block scope declared in one block */ #define NR_INT_IDENT 511 /* * 4096 macro identifiers simultaneously defined in one preprocessing * translation unit */ #define NR_MACROIDENT 4096 /* * 127 parameters in one function definition */ #define NR_FUNPARAM 127 /* * 127 arguments in one function call */ #define NR_FUNARG 127 /* * 127 parameters in one macro definition */ #define NR_MACROPARAM 127 /* * 127 arguments in one macro invocation */ #define NR_MACROARG 127 /* * 4095 characters in a logical source line */ #define LINESIZ 4095 /* * 4095 characters in a character string literal or wide string literal * (after concatenation) */ #define STRINGSIZ 4095 /* * 65535 bytes in an object (in a hosted environment only) */ #define OBJECTSIZ 65535 /* * 15 nesting levels for #include'd files */ #define NR_INCLUDE 15 /* * 1023 case labels for a switch statement (excluding those for any * nested switch statements) */ #define NR_SWITCH 1023 /* * 1023 members in a single structure or union */ #define NR_FIELDS 1023 /* * 1023 enumeration constants in a single enumeration */ #define NR_ENUM_CTES 1023 /* * 63 levels of nested structure or union definitions in a single * struct-declaration-list */ #define NR_STRUCT_LEVEL 63 /* * number of defined structs/unions in one translation unit */ #define NR_MAXSTRUCTS 127