1196 lines
20 KiB
Plaintext
1196 lines
20 KiB
Plaintext
|
|
||
|
state 0
|
||
|
$accept: .specification $end
|
||
|
|
||
|
CONST shift 11
|
||
|
ENUM shift 10
|
||
|
STRUCT shift 13
|
||
|
TYPEDEF shift 12
|
||
|
UNION shift 14
|
||
|
PROGRAM shift 15
|
||
|
. error
|
||
|
|
||
|
specification goto 1
|
||
|
definition_list goto 2
|
||
|
definition goto 3
|
||
|
enum_definition goto 4
|
||
|
const_definition goto 5
|
||
|
typedef_definition goto 6
|
||
|
struct_definition goto 7
|
||
|
union_definition goto 8
|
||
|
program_definition goto 9
|
||
|
|
||
|
state 1
|
||
|
$accept: specification.$end
|
||
|
|
||
|
$end accept
|
||
|
. error
|
||
|
|
||
|
|
||
|
state 2
|
||
|
specification: definition_list. (1)
|
||
|
|
||
|
. reduce 1 (src line 25)
|
||
|
|
||
|
|
||
|
state 3
|
||
|
definition_list: definition.';'
|
||
|
definition_list: definition.';' definition_list
|
||
|
|
||
|
';' shift 16
|
||
|
. error
|
||
|
|
||
|
|
||
|
state 4
|
||
|
definition: enum_definition. (6)
|
||
|
|
||
|
. reduce 6 (src line 39)
|
||
|
|
||
|
|
||
|
state 5
|
||
|
definition: const_definition. (7)
|
||
|
|
||
|
. reduce 7 (src line 41)
|
||
|
|
||
|
|
||
|
state 6
|
||
|
definition: typedef_definition. (8)
|
||
|
|
||
|
. reduce 8 (src line 42)
|
||
|
|
||
|
|
||
|
state 7
|
||
|
definition: struct_definition. (9)
|
||
|
|
||
|
. reduce 9 (src line 43)
|
||
|
|
||
|
|
||
|
state 8
|
||
|
definition: union_definition. (10)
|
||
|
|
||
|
. reduce 10 (src line 44)
|
||
|
|
||
|
|
||
|
state 9
|
||
|
definition: program_definition. (11)
|
||
|
|
||
|
. reduce 11 (src line 45)
|
||
|
|
||
|
|
||
|
state 10
|
||
|
enum_definition: ENUM.enum_ident '{' enum_value_list '}'
|
||
|
|
||
|
IDENTIFIER shift 18
|
||
|
. error
|
||
|
|
||
|
enum_ident goto 17
|
||
|
|
||
|
state 11
|
||
|
const_definition: CONST.const_ident '=' IDENTIFIER
|
||
|
const_definition: CONST.const_ident '=' CONSTANT
|
||
|
|
||
|
IDENTIFIER shift 20
|
||
|
. error
|
||
|
|
||
|
const_ident goto 19
|
||
|
|
||
|
state 12
|
||
|
typedef_definition: TYPEDEF.$$22 declaration
|
||
|
$$22: . (22)
|
||
|
|
||
|
. reduce 22 (src line 100)
|
||
|
|
||
|
$$22 goto 21
|
||
|
|
||
|
state 13
|
||
|
struct_definition: STRUCT.struct_ident '{' $$49 declaration_list '}'
|
||
|
|
||
|
IDENTIFIER shift 23
|
||
|
. error
|
||
|
|
||
|
struct_ident goto 22
|
||
|
|
||
|
state 14
|
||
|
union_definition: UNION.union_ident $$54 SWITCH '(' simple_declaration ')' '{' case_list '}'
|
||
|
|
||
|
IDENTIFIER shift 25
|
||
|
. error
|
||
|
|
||
|
union_ident goto 24
|
||
|
|
||
|
state 15
|
||
|
program_definition: PROGRAM.program_ident '{' version_list '}' '=' value
|
||
|
|
||
|
IDENTIFIER shift 27
|
||
|
. error
|
||
|
|
||
|
program_ident goto 26
|
||
|
|
||
|
state 16
|
||
|
definition_list: definition ';'. (4)
|
||
|
definition_list: definition ';'.definition_list
|
||
|
|
||
|
CONST shift 11
|
||
|
ENUM shift 10
|
||
|
STRUCT shift 13
|
||
|
TYPEDEF shift 12
|
||
|
UNION shift 14
|
||
|
PROGRAM shift 15
|
||
|
. reduce 4 (src line 34)
|
||
|
|
||
|
definition_list goto 28
|
||
|
definition goto 3
|
||
|
enum_definition goto 4
|
||
|
const_definition goto 5
|
||
|
typedef_definition goto 6
|
||
|
struct_definition goto 7
|
||
|
union_definition goto 8
|
||
|
program_definition goto 9
|
||
|
|
||
|
state 17
|
||
|
enum_definition: ENUM enum_ident.'{' enum_value_list '}'
|
||
|
|
||
|
'{' shift 29
|
||
|
. error
|
||
|
|
||
|
|
||
|
state 18
|
||
|
enum_ident: IDENTIFIER. (17)
|
||
|
|
||
|
. reduce 17 (src line 74)
|
||
|
|
||
|
|
||
|
state 19
|
||
|
const_definition: CONST const_ident.'=' IDENTIFIER
|
||
|
const_definition: CONST const_ident.'=' CONSTANT
|
||
|
|
||
|
'=' shift 30
|
||
|
. error
|
||
|
|
||
|
|
||
|
state 20
|
||
|
const_ident: IDENTIFIER. (21)
|
||
|
|
||
|
. reduce 21 (src line 96)
|
||
|
|
||
|
|
||
|
state 21
|
||
|
typedef_definition: TYPEDEF $$22.declaration
|
||
|
|
||
|
BOOL shift 41
|
||
|
DOUBLE shift 40
|
||
|
ENUM shift 10
|
||
|
FLOAT shift 39
|
||
|
OPAQUE shift 43
|
||
|
STRING shift 42
|
||
|
STRUCT shift 13
|
||
|
UNION shift 14
|
||
|
UNSIGNED shift 38
|
||
|
HYPER shift 48
|
||
|
INT shift 49
|
||
|
SHORT shift 50
|
||
|
CHAR shift 51
|
||
|
IDENTIFIER shift 47
|
||
|
. error
|
||
|
|
||
|
enum_definition goto 44
|
||
|
struct_definition goto 45
|
||
|
union_definition goto 46
|
||
|
declaration goto 31
|
||
|
simple_declaration goto 32
|
||
|
fixed_array_declaration goto 33
|
||
|
variable_array_declaration goto 34
|
||
|
pointer_declaration goto 35
|
||
|
type_specifier goto 36
|
||
|
int_spec goto 37
|
||
|
|
||
|
state 22
|
||
|
struct_definition: STRUCT struct_ident.'{' $$49 declaration_list '}'
|
||
|
|
||
|
'{' shift 52
|
||
|
. error
|
||
|
|
||
|
|
||
|
state 23
|
||
|
struct_ident: IDENTIFIER. (51)
|
||
|
|
||
|
. reduce 51 (src line 161)
|
||
|
|
||
|
|
||
|
state 24
|
||
|
union_definition: UNION union_ident.$$54 SWITCH '(' simple_declaration ')' '{' case_list '}'
|
||
|
$$54: . (54)
|
||
|
|
||
|
. reduce 54 (src line 170)
|
||
|
|
||
|
$$54 goto 53
|
||
|
|
||
|
state 25
|
||
|
union_ident: IDENTIFIER. (56)
|
||
|
|
||
|
. reduce 56 (src line 174)
|
||
|
|
||
|
|
||
|
state 26
|
||
|
program_definition: PROGRAM program_ident.'{' version_list '}' '=' value
|
||
|
|
||
|
'{' shift 54
|
||
|
. error
|
||
|
|
||
|
|
||
|
state 27
|
||
|
program_ident: IDENTIFIER. (64)
|
||
|
|
||
|
. reduce 64 (src line 192)
|
||
|
|
||
|
|
||
|
state 28
|
||
|
definition_list: definition ';' definition_list. (5)
|
||
|
|
||
|
. reduce 5 (src line 36)
|
||
|
|
||
|
|
||
|
state 29
|
||
|
enum_definition: ENUM enum_ident '{'.enum_value_list '}'
|
||
|
|
||
|
IDENTIFIER shift 58
|
||
|
. error
|
||
|
|
||
|
enum_value_list goto 55
|
||
|
enum_value goto 56
|
||
|
enum_value_ident goto 57
|
||
|
|
||
|
state 30
|
||
|
const_definition: CONST const_ident '='.IDENTIFIER
|
||
|
const_definition: CONST const_ident '='.CONSTANT
|
||
|
|
||
|
IDENTIFIER shift 59
|
||
|
CONSTANT shift 60
|
||
|
. error
|
||
|
|
||
|
|
||
|
state 31
|
||
|
typedef_definition: TYPEDEF $$22 declaration. (23)
|
||
|
|
||
|
. reduce 23 (src line 101)
|
||
|
|
||
|
|
||
|
state 32
|
||
|
declaration: simple_declaration. (24)
|
||
|
|
||
|
. reduce 24 (src line 104)
|
||
|
|
||
|
|
||
|
state 33
|
||
|
declaration: fixed_array_declaration. (25)
|
||
|
|
||
|
. reduce 25 (src line 106)
|
||
|
|
||
|
|
||
|
state 34
|
||
|
declaration: variable_array_declaration. (26)
|
||
|
|
||
|
. reduce 26 (src line 107)
|
||
|
|
||
|
|
||
|
state 35
|
||
|
declaration: pointer_declaration. (27)
|
||
|
|
||
|
. reduce 27 (src line 108)
|
||
|
|
||
|
|
||
|
state 36
|
||
|
simple_declaration: type_specifier.variable_ident
|
||
|
fixed_array_declaration: type_specifier.variable_ident '[' value ']'
|
||
|
variable_array_declaration: type_specifier.variable_ident '<' value '>'
|
||
|
variable_array_declaration: type_specifier.variable_ident '<' '>'
|
||
|
pointer_declaration: type_specifier.'*' variable_ident
|
||
|
|
||
|
IDENTIFIER shift 63
|
||
|
'*' shift 62
|
||
|
. error
|
||
|
|
||
|
variable_ident goto 61
|
||
|
|
||
|
state 37
|
||
|
type_specifier: int_spec. (29)
|
||
|
|
||
|
. reduce 29 (src line 115)
|
||
|
|
||
|
|
||
|
state 38
|
||
|
type_specifier: UNSIGNED.int_spec
|
||
|
|
||
|
HYPER shift 48
|
||
|
INT shift 49
|
||
|
SHORT shift 50
|
||
|
CHAR shift 51
|
||
|
. error
|
||
|
|
||
|
int_spec goto 64
|
||
|
|
||
|
state 39
|
||
|
type_specifier: FLOAT. (31)
|
||
|
|
||
|
. reduce 31 (src line 118)
|
||
|
|
||
|
|
||
|
state 40
|
||
|
type_specifier: DOUBLE. (32)
|
||
|
|
||
|
. reduce 32 (src line 119)
|
||
|
|
||
|
|
||
|
state 41
|
||
|
type_specifier: BOOL. (33)
|
||
|
|
||
|
. reduce 33 (src line 120)
|
||
|
|
||
|
|
||
|
state 42
|
||
|
type_specifier: STRING. (34)
|
||
|
|
||
|
. reduce 34 (src line 121)
|
||
|
|
||
|
|
||
|
state 43
|
||
|
type_specifier: OPAQUE. (35)
|
||
|
|
||
|
. reduce 35 (src line 122)
|
||
|
|
||
|
|
||
|
state 44
|
||
|
type_specifier: enum_definition. (36)
|
||
|
|
||
|
. reduce 36 (src line 123)
|
||
|
|
||
|
|
||
|
state 45
|
||
|
type_specifier: struct_definition. (37)
|
||
|
|
||
|
. reduce 37 (src line 124)
|
||
|
|
||
|
|
||
|
state 46
|
||
|
type_specifier: union_definition. (38)
|
||
|
|
||
|
. reduce 38 (src line 125)
|
||
|
|
||
|
|
||
|
state 47
|
||
|
type_specifier: IDENTIFIER. (39)
|
||
|
|
||
|
. reduce 39 (src line 126)
|
||
|
|
||
|
|
||
|
state 48
|
||
|
int_spec: HYPER. (40)
|
||
|
|
||
|
. reduce 40 (src line 129)
|
||
|
|
||
|
|
||
|
state 49
|
||
|
int_spec: INT. (41)
|
||
|
|
||
|
. reduce 41 (src line 131)
|
||
|
|
||
|
|
||
|
state 50
|
||
|
int_spec: SHORT. (42)
|
||
|
|
||
|
. reduce 42 (src line 132)
|
||
|
|
||
|
|
||
|
state 51
|
||
|
int_spec: CHAR. (43)
|
||
|
|
||
|
. reduce 43 (src line 133)
|
||
|
|
||
|
|
||
|
state 52
|
||
|
struct_definition: STRUCT struct_ident '{'.$$49 declaration_list '}'
|
||
|
$$49: . (49)
|
||
|
|
||
|
. reduce 49 (src line 157)
|
||
|
|
||
|
$$49 goto 65
|
||
|
|
||
|
state 53
|
||
|
union_definition: UNION union_ident $$54.SWITCH '(' simple_declaration ')' '{' case_list '}'
|
||
|
|
||
|
SWITCH shift 66
|
||
|
. error
|
||
|
|
||
|
|
||
|
state 54
|
||
|
program_definition: PROGRAM program_ident '{'.version_list '}' '=' value
|
||
|
|
||
|
VERSION shift 69
|
||
|
. error
|
||
|
|
||
|
version_list goto 67
|
||
|
version goto 68
|
||
|
|
||
|
state 55
|
||
|
enum_definition: ENUM enum_ident '{' enum_value_list.'}'
|
||
|
|
||
|
'}' shift 70
|
||
|
. error
|
||
|
|
||
|
|
||
|
state 56
|
||
|
enum_value_list: enum_value. (13)
|
||
|
enum_value_list: enum_value.',' enum_value_list
|
||
|
|
||
|
',' shift 71
|
||
|
. reduce 13 (src line 52)
|
||
|
|
||
|
|
||
|
state 57
|
||
|
enum_value: enum_value_ident. (15)
|
||
|
enum_value: enum_value_ident.'=' value
|
||
|
|
||
|
'=' shift 72
|
||
|
. reduce 15 (src line 57)
|
||
|
|
||
|
|
||
|
state 58
|
||
|
enum_value_ident: IDENTIFIER. (18)
|
||
|
|
||
|
. reduce 18 (src line 78)
|
||
|
|
||
|
|
||
|
state 59
|
||
|
const_definition: CONST const_ident '=' IDENTIFIER. (19)
|
||
|
|
||
|
. reduce 19 (src line 85)
|
||
|
|
||
|
|
||
|
state 60
|
||
|
const_definition: CONST const_ident '=' CONSTANT. (20)
|
||
|
|
||
|
. reduce 20 (src line 87)
|
||
|
|
||
|
|
||
|
state 61
|
||
|
simple_declaration: type_specifier variable_ident. (28)
|
||
|
fixed_array_declaration: type_specifier variable_ident.'[' value ']'
|
||
|
variable_array_declaration: type_specifier variable_ident.'<' value '>'
|
||
|
variable_array_declaration: type_specifier variable_ident.'<' '>'
|
||
|
|
||
|
'[' shift 73
|
||
|
'<' shift 74
|
||
|
. reduce 28 (src line 111)
|
||
|
|
||
|
|
||
|
state 62
|
||
|
pointer_declaration: type_specifier '*'.variable_ident
|
||
|
|
||
|
IDENTIFIER shift 63
|
||
|
. error
|
||
|
|
||
|
variable_ident goto 75
|
||
|
|
||
|
state 63
|
||
|
variable_ident: IDENTIFIER. (44)
|
||
|
|
||
|
. reduce 44 (src line 136)
|
||
|
|
||
|
|
||
|
state 64
|
||
|
type_specifier: UNSIGNED int_spec. (30)
|
||
|
|
||
|
. reduce 30 (src line 117)
|
||
|
|
||
|
|
||
|
state 65
|
||
|
struct_definition: STRUCT struct_ident '{' $$49.declaration_list '}'
|
||
|
|
||
|
BOOL shift 41
|
||
|
DOUBLE shift 40
|
||
|
ENUM shift 10
|
||
|
FLOAT shift 39
|
||
|
OPAQUE shift 43
|
||
|
STRING shift 42
|
||
|
STRUCT shift 13
|
||
|
UNION shift 14
|
||
|
UNSIGNED shift 38
|
||
|
HYPER shift 48
|
||
|
INT shift 49
|
||
|
SHORT shift 50
|
||
|
CHAR shift 51
|
||
|
IDENTIFIER shift 47
|
||
|
. error
|
||
|
|
||
|
enum_definition goto 44
|
||
|
struct_definition goto 45
|
||
|
union_definition goto 46
|
||
|
declaration goto 77
|
||
|
simple_declaration goto 32
|
||
|
fixed_array_declaration goto 33
|
||
|
variable_array_declaration goto 34
|
||
|
pointer_declaration goto 35
|
||
|
type_specifier goto 36
|
||
|
int_spec goto 37
|
||
|
declaration_list goto 76
|
||
|
|
||
|
state 66
|
||
|
union_definition: UNION union_ident $$54 SWITCH.'(' simple_declaration ')' '{' case_list '}'
|
||
|
|
||
|
'(' shift 78
|
||
|
. error
|
||
|
|
||
|
|
||
|
state 67
|
||
|
program_definition: PROGRAM program_ident '{' version_list.'}' '=' value
|
||
|
|
||
|
'}' shift 79
|
||
|
. error
|
||
|
|
||
|
|
||
|
state 68
|
||
|
version_list: version.';'
|
||
|
version_list: version.';' version_list
|
||
|
|
||
|
';' shift 80
|
||
|
. error
|
||
|
|
||
|
|
||
|
state 69
|
||
|
version: VERSION.version_ident '{' procedure_list '}' '=' value ';'
|
||
|
|
||
|
IDENTIFIER shift 82
|
||
|
. error
|
||
|
|
||
|
version_ident goto 81
|
||
|
|
||
|
state 70
|
||
|
enum_definition: ENUM enum_ident '{' enum_value_list '}'. (12)
|
||
|
|
||
|
. reduce 12 (src line 48)
|
||
|
|
||
|
|
||
|
state 71
|
||
|
enum_value_list: enum_value ','.enum_value_list
|
||
|
|
||
|
IDENTIFIER shift 58
|
||
|
. error
|
||
|
|
||
|
enum_value_list goto 83
|
||
|
enum_value goto 56
|
||
|
enum_value_ident goto 57
|
||
|
|
||
|
state 72
|
||
|
enum_value: enum_value_ident '='.value
|
||
|
|
||
|
IDENTIFIER shift 85
|
||
|
CONSTANT shift 86
|
||
|
. error
|
||
|
|
||
|
value goto 84
|
||
|
|
||
|
state 73
|
||
|
fixed_array_declaration: type_specifier variable_ident '['.value ']'
|
||
|
|
||
|
IDENTIFIER shift 85
|
||
|
CONSTANT shift 86
|
||
|
. error
|
||
|
|
||
|
value goto 87
|
||
|
|
||
|
state 74
|
||
|
variable_array_declaration: type_specifier variable_ident '<'.value '>'
|
||
|
variable_array_declaration: type_specifier variable_ident '<'.'>'
|
||
|
|
||
|
IDENTIFIER shift 85
|
||
|
CONSTANT shift 86
|
||
|
'>' shift 89
|
||
|
. error
|
||
|
|
||
|
value goto 88
|
||
|
|
||
|
state 75
|
||
|
pointer_declaration: type_specifier '*' variable_ident. (48)
|
||
|
|
||
|
. reduce 48 (src line 153)
|
||
|
|
||
|
|
||
|
state 76
|
||
|
struct_definition: STRUCT struct_ident '{' $$49 declaration_list.'}'
|
||
|
|
||
|
'}' shift 90
|
||
|
. error
|
||
|
|
||
|
|
||
|
state 77
|
||
|
declaration_list: declaration.';'
|
||
|
declaration_list: declaration.';' declaration_list
|
||
|
|
||
|
';' shift 91
|
||
|
. error
|
||
|
|
||
|
|
||
|
state 78
|
||
|
union_definition: UNION union_ident $$54 SWITCH '('.simple_declaration ')' '{' case_list '}'
|
||
|
|
||
|
BOOL shift 41
|
||
|
DOUBLE shift 40
|
||
|
ENUM shift 10
|
||
|
FLOAT shift 39
|
||
|
OPAQUE shift 43
|
||
|
STRING shift 42
|
||
|
STRUCT shift 13
|
||
|
UNION shift 14
|
||
|
UNSIGNED shift 38
|
||
|
HYPER shift 48
|
||
|
INT shift 49
|
||
|
SHORT shift 50
|
||
|
CHAR shift 51
|
||
|
IDENTIFIER shift 47
|
||
|
. error
|
||
|
|
||
|
enum_definition goto 44
|
||
|
struct_definition goto 45
|
||
|
union_definition goto 46
|
||
|
simple_declaration goto 92
|
||
|
type_specifier goto 93
|
||
|
int_spec goto 37
|
||
|
|
||
|
state 79
|
||
|
program_definition: PROGRAM program_ident '{' version_list '}'.'=' value
|
||
|
|
||
|
'=' shift 94
|
||
|
. error
|
||
|
|
||
|
|
||
|
state 80
|
||
|
version_list: version ';'. (65)
|
||
|
version_list: version ';'.version_list
|
||
|
|
||
|
VERSION shift 69
|
||
|
. reduce 65 (src line 196)
|
||
|
|
||
|
version_list goto 95
|
||
|
version goto 68
|
||
|
|
||
|
state 81
|
||
|
version: VERSION version_ident.'{' procedure_list '}' '=' value ';'
|
||
|
|
||
|
'{' shift 96
|
||
|
. error
|
||
|
|
||
|
|
||
|
state 82
|
||
|
version_ident: IDENTIFIER. (68)
|
||
|
|
||
|
. reduce 68 (src line 205)
|
||
|
|
||
|
|
||
|
state 83
|
||
|
enum_value_list: enum_value ',' enum_value_list. (14)
|
||
|
|
||
|
. reduce 14 (src line 54)
|
||
|
|
||
|
|
||
|
state 84
|
||
|
enum_value: enum_value_ident '=' value. (16)
|
||
|
|
||
|
. reduce 16 (src line 65)
|
||
|
|
||
|
|
||
|
state 85
|
||
|
value: IDENTIFIER. (2)
|
||
|
|
||
|
. reduce 2 (src line 29)
|
||
|
|
||
|
|
||
|
state 86
|
||
|
value: CONSTANT. (3)
|
||
|
|
||
|
. reduce 3 (src line 31)
|
||
|
|
||
|
|
||
|
state 87
|
||
|
fixed_array_declaration: type_specifier variable_ident '[' value.']'
|
||
|
|
||
|
']' shift 97
|
||
|
. error
|
||
|
|
||
|
|
||
|
state 88
|
||
|
variable_array_declaration: type_specifier variable_ident '<' value.'>'
|
||
|
|
||
|
'>' shift 98
|
||
|
. error
|
||
|
|
||
|
|
||
|
state 89
|
||
|
variable_array_declaration: type_specifier variable_ident '<' '>'. (47)
|
||
|
|
||
|
. reduce 47 (src line 146)
|
||
|
|
||
|
|
||
|
state 90
|
||
|
struct_definition: STRUCT struct_ident '{' $$49 declaration_list '}'. (50)
|
||
|
|
||
|
. reduce 50 (src line 158)
|
||
|
|
||
|
|
||
|
state 91
|
||
|
declaration_list: declaration ';'. (52)
|
||
|
declaration_list: declaration ';'.declaration_list
|
||
|
|
||
|
BOOL shift 41
|
||
|
DOUBLE shift 40
|
||
|
ENUM shift 10
|
||
|
FLOAT shift 39
|
||
|
OPAQUE shift 43
|
||
|
STRING shift 42
|
||
|
STRUCT shift 13
|
||
|
UNION shift 14
|
||
|
UNSIGNED shift 38
|
||
|
HYPER shift 48
|
||
|
INT shift 49
|
||
|
SHORT shift 50
|
||
|
CHAR shift 51
|
||
|
IDENTIFIER shift 47
|
||
|
. reduce 52 (src line 165)
|
||
|
|
||
|
enum_definition goto 44
|
||
|
struct_definition goto 45
|
||
|
union_definition goto 46
|
||
|
declaration goto 77
|
||
|
simple_declaration goto 32
|
||
|
fixed_array_declaration goto 33
|
||
|
variable_array_declaration goto 34
|
||
|
pointer_declaration goto 35
|
||
|
type_specifier goto 36
|
||
|
int_spec goto 37
|
||
|
declaration_list goto 99
|
||
|
|
||
|
state 92
|
||
|
union_definition: UNION union_ident $$54 SWITCH '(' simple_declaration.')' '{' case_list '}'
|
||
|
|
||
|
')' shift 100
|
||
|
. error
|
||
|
|
||
|
|
||
|
state 93
|
||
|
simple_declaration: type_specifier.variable_ident
|
||
|
|
||
|
IDENTIFIER shift 63
|
||
|
. error
|
||
|
|
||
|
variable_ident goto 101
|
||
|
|
||
|
state 94
|
||
|
program_definition: PROGRAM program_ident '{' version_list '}' '='.value
|
||
|
|
||
|
IDENTIFIER shift 85
|
||
|
CONSTANT shift 86
|
||
|
. error
|
||
|
|
||
|
value goto 102
|
||
|
|
||
|
state 95
|
||
|
version_list: version ';' version_list. (66)
|
||
|
|
||
|
. reduce 66 (src line 198)
|
||
|
|
||
|
|
||
|
state 96
|
||
|
version: VERSION version_ident '{'.procedure_list '}' '=' value ';'
|
||
|
|
||
|
BOOL shift 41
|
||
|
DOUBLE shift 40
|
||
|
ENUM shift 10
|
||
|
FLOAT shift 39
|
||
|
OPAQUE shift 43
|
||
|
STRING shift 42
|
||
|
STRUCT shift 13
|
||
|
UNION shift 14
|
||
|
UNSIGNED shift 38
|
||
|
HYPER shift 48
|
||
|
INT shift 49
|
||
|
SHORT shift 50
|
||
|
CHAR shift 51
|
||
|
IDENTIFIER shift 47
|
||
|
. error
|
||
|
|
||
|
enum_definition goto 44
|
||
|
struct_definition goto 45
|
||
|
union_definition goto 46
|
||
|
type_specifier goto 105
|
||
|
int_spec goto 37
|
||
|
procedure_list goto 103
|
||
|
procedure goto 104
|
||
|
|
||
|
state 97
|
||
|
fixed_array_declaration: type_specifier variable_ident '[' value ']'. (45)
|
||
|
|
||
|
. reduce 45 (src line 140)
|
||
|
|
||
|
|
||
|
state 98
|
||
|
variable_array_declaration: type_specifier variable_ident '<' value '>'. (46)
|
||
|
|
||
|
. reduce 46 (src line 144)
|
||
|
|
||
|
|
||
|
state 99
|
||
|
declaration_list: declaration ';' declaration_list. (53)
|
||
|
|
||
|
. reduce 53 (src line 167)
|
||
|
|
||
|
|
||
|
state 100
|
||
|
union_definition: UNION union_ident $$54 SWITCH '(' simple_declaration ')'.'{' case_list '}'
|
||
|
|
||
|
'{' shift 106
|
||
|
. error
|
||
|
|
||
|
|
||
|
state 101
|
||
|
simple_declaration: type_specifier variable_ident. (28)
|
||
|
|
||
|
. reduce 28 (src line 111)
|
||
|
|
||
|
|
||
|
state 102
|
||
|
program_definition: PROGRAM program_ident '{' version_list '}' '=' value. (63)
|
||
|
|
||
|
. reduce 63 (src line 188)
|
||
|
|
||
|
|
||
|
state 103
|
||
|
version: VERSION version_ident '{' procedure_list.'}' '=' value ';'
|
||
|
|
||
|
'}' shift 107
|
||
|
. error
|
||
|
|
||
|
|
||
|
state 104
|
||
|
procedure_list: procedure.';'
|
||
|
procedure_list: procedure.';' procedure_list
|
||
|
|
||
|
';' shift 108
|
||
|
. error
|
||
|
|
||
|
|
||
|
state 105
|
||
|
procedure: type_specifier.procedure_ident '(' type_specifier ')' '=' value ';'
|
||
|
|
||
|
IDENTIFIER shift 110
|
||
|
. error
|
||
|
|
||
|
procedure_ident goto 109
|
||
|
|
||
|
state 106
|
||
|
union_definition: UNION union_ident $$54 SWITCH '(' simple_declaration ')' '{'.case_list '}'
|
||
|
|
||
|
CASE shift 113
|
||
|
DEFAULT shift 114
|
||
|
. error
|
||
|
|
||
|
case_list goto 111
|
||
|
case goto 112
|
||
|
|
||
|
state 107
|
||
|
version: VERSION version_ident '{' procedure_list '}'.'=' value ';'
|
||
|
|
||
|
'=' shift 115
|
||
|
. error
|
||
|
|
||
|
|
||
|
state 108
|
||
|
procedure_list: procedure ';'. (69)
|
||
|
procedure_list: procedure ';'.procedure_list
|
||
|
|
||
|
BOOL shift 41
|
||
|
DOUBLE shift 40
|
||
|
ENUM shift 10
|
||
|
FLOAT shift 39
|
||
|
OPAQUE shift 43
|
||
|
STRING shift 42
|
||
|
STRUCT shift 13
|
||
|
UNION shift 14
|
||
|
UNSIGNED shift 38
|
||
|
HYPER shift 48
|
||
|
INT shift 49
|
||
|
SHORT shift 50
|
||
|
CHAR shift 51
|
||
|
IDENTIFIER shift 47
|
||
|
. reduce 69 (src line 209)
|
||
|
|
||
|
enum_definition goto 44
|
||
|
struct_definition goto 45
|
||
|
union_definition goto 46
|
||
|
type_specifier goto 105
|
||
|
int_spec goto 37
|
||
|
procedure_list goto 116
|
||
|
procedure goto 104
|
||
|
|
||
|
state 109
|
||
|
procedure: type_specifier procedure_ident.'(' type_specifier ')' '=' value ';'
|
||
|
|
||
|
'(' shift 117
|
||
|
. error
|
||
|
|
||
|
|
||
|
state 110
|
||
|
procedure_ident: IDENTIFIER. (72)
|
||
|
|
||
|
. reduce 72 (src line 218)
|
||
|
|
||
|
|
||
|
state 111
|
||
|
union_definition: UNION union_ident $$54 SWITCH '(' simple_declaration ')' '{' case_list.'}'
|
||
|
|
||
|
'}' shift 118
|
||
|
. error
|
||
|
|
||
|
|
||
|
state 112
|
||
|
case_list: case.';'
|
||
|
case_list: case.';' case_list
|
||
|
|
||
|
';' shift 119
|
||
|
. error
|
||
|
|
||
|
|
||
|
state 113
|
||
|
case: CASE.value $$59 ':' declaration
|
||
|
|
||
|
IDENTIFIER shift 85
|
||
|
CONSTANT shift 86
|
||
|
. error
|
||
|
|
||
|
value goto 120
|
||
|
|
||
|
state 114
|
||
|
case: DEFAULT.$$61 ':' declaration
|
||
|
$$61: . (61)
|
||
|
|
||
|
. reduce 61 (src line 185)
|
||
|
|
||
|
$$61 goto 121
|
||
|
|
||
|
state 115
|
||
|
version: VERSION version_ident '{' procedure_list '}' '='.value ';'
|
||
|
|
||
|
IDENTIFIER shift 85
|
||
|
CONSTANT shift 86
|
||
|
. error
|
||
|
|
||
|
value goto 122
|
||
|
|
||
|
state 116
|
||
|
procedure_list: procedure ';' procedure_list. (70)
|
||
|
|
||
|
. reduce 70 (src line 211)
|
||
|
|
||
|
|
||
|
state 117
|
||
|
procedure: type_specifier procedure_ident '('.type_specifier ')' '=' value ';'
|
||
|
|
||
|
BOOL shift 41
|
||
|
DOUBLE shift 40
|
||
|
ENUM shift 10
|
||
|
FLOAT shift 39
|
||
|
OPAQUE shift 43
|
||
|
STRING shift 42
|
||
|
STRUCT shift 13
|
||
|
UNION shift 14
|
||
|
UNSIGNED shift 38
|
||
|
HYPER shift 48
|
||
|
INT shift 49
|
||
|
SHORT shift 50
|
||
|
CHAR shift 51
|
||
|
IDENTIFIER shift 47
|
||
|
. error
|
||
|
|
||
|
enum_definition goto 44
|
||
|
struct_definition goto 45
|
||
|
union_definition goto 46
|
||
|
type_specifier goto 123
|
||
|
int_spec goto 37
|
||
|
|
||
|
state 118
|
||
|
union_definition: UNION union_ident $$54 SWITCH '(' simple_declaration ')' '{' case_list '}'. (55)
|
||
|
|
||
|
. reduce 55 (src line 171)
|
||
|
|
||
|
|
||
|
state 119
|
||
|
case_list: case ';'. (57)
|
||
|
case_list: case ';'.case_list
|
||
|
|
||
|
CASE shift 113
|
||
|
DEFAULT shift 114
|
||
|
. reduce 57 (src line 178)
|
||
|
|
||
|
case_list goto 124
|
||
|
case goto 112
|
||
|
|
||
|
state 120
|
||
|
case: CASE value.$$59 ':' declaration
|
||
|
$$59: . (59)
|
||
|
|
||
|
. reduce 59 (src line 183)
|
||
|
|
||
|
$$59 goto 125
|
||
|
|
||
|
state 121
|
||
|
case: DEFAULT $$61.':' declaration
|
||
|
|
||
|
':' shift 126
|
||
|
. error
|
||
|
|
||
|
|
||
|
state 122
|
||
|
version: VERSION version_ident '{' procedure_list '}' '=' value.';'
|
||
|
|
||
|
';' shift 127
|
||
|
. error
|
||
|
|
||
|
|
||
|
state 123
|
||
|
procedure: type_specifier procedure_ident '(' type_specifier.')' '=' value ';'
|
||
|
|
||
|
')' shift 128
|
||
|
. error
|
||
|
|
||
|
|
||
|
state 124
|
||
|
case_list: case ';' case_list. (58)
|
||
|
|
||
|
. reduce 58 (src line 180)
|
||
|
|
||
|
|
||
|
state 125
|
||
|
case: CASE value $$59.':' declaration
|
||
|
|
||
|
':' shift 129
|
||
|
. error
|
||
|
|
||
|
|
||
|
state 126
|
||
|
case: DEFAULT $$61 ':'.declaration
|
||
|
|
||
|
BOOL shift 41
|
||
|
DOUBLE shift 40
|
||
|
ENUM shift 10
|
||
|
FLOAT shift 39
|
||
|
OPAQUE shift 43
|
||
|
STRING shift 42
|
||
|
STRUCT shift 13
|
||
|
UNION shift 14
|
||
|
UNSIGNED shift 38
|
||
|
HYPER shift 48
|
||
|
INT shift 49
|
||
|
SHORT shift 50
|
||
|
CHAR shift 51
|
||
|
IDENTIFIER shift 47
|
||
|
. error
|
||
|
|
||
|
enum_definition goto 44
|
||
|
struct_definition goto 45
|
||
|
union_definition goto 46
|
||
|
declaration goto 130
|
||
|
simple_declaration goto 32
|
||
|
fixed_array_declaration goto 33
|
||
|
variable_array_declaration goto 34
|
||
|
pointer_declaration goto 35
|
||
|
type_specifier goto 36
|
||
|
int_spec goto 37
|
||
|
|
||
|
state 127
|
||
|
version: VERSION version_ident '{' procedure_list '}' '=' value ';'. (67)
|
||
|
|
||
|
. reduce 67 (src line 201)
|
||
|
|
||
|
|
||
|
state 128
|
||
|
procedure: type_specifier procedure_ident '(' type_specifier ')'.'=' value ';'
|
||
|
|
||
|
'=' shift 131
|
||
|
. error
|
||
|
|
||
|
|
||
|
state 129
|
||
|
case: CASE value $$59 ':'.declaration
|
||
|
|
||
|
BOOL shift 41
|
||
|
DOUBLE shift 40
|
||
|
ENUM shift 10
|
||
|
FLOAT shift 39
|
||
|
OPAQUE shift 43
|
||
|
STRING shift 42
|
||
|
STRUCT shift 13
|
||
|
UNION shift 14
|
||
|
UNSIGNED shift 38
|
||
|
HYPER shift 48
|
||
|
INT shift 49
|
||
|
SHORT shift 50
|
||
|
CHAR shift 51
|
||
|
IDENTIFIER shift 47
|
||
|
. error
|
||
|
|
||
|
enum_definition goto 44
|
||
|
struct_definition goto 45
|
||
|
union_definition goto 46
|
||
|
declaration goto 132
|
||
|
simple_declaration goto 32
|
||
|
fixed_array_declaration goto 33
|
||
|
variable_array_declaration goto 34
|
||
|
pointer_declaration goto 35
|
||
|
type_specifier goto 36
|
||
|
int_spec goto 37
|
||
|
|
||
|
state 130
|
||
|
case: DEFAULT $$61 ':' declaration. (62)
|
||
|
|
||
|
. reduce 62 (src line 185)
|
||
|
|
||
|
|
||
|
state 131
|
||
|
procedure: type_specifier procedure_ident '(' type_specifier ')' '='.value ';'
|
||
|
|
||
|
IDENTIFIER shift 85
|
||
|
CONSTANT shift 86
|
||
|
. error
|
||
|
|
||
|
value goto 133
|
||
|
|
||
|
state 132
|
||
|
case: CASE value $$59 ':' declaration. (60)
|
||
|
|
||
|
. reduce 60 (src line 184)
|
||
|
|
||
|
|
||
|
state 133
|
||
|
procedure: type_specifier procedure_ident '(' type_specifier ')' '=' value.';'
|
||
|
|
||
|
';' shift 134
|
||
|
. error
|
||
|
|
||
|
|
||
|
state 134
|
||
|
procedure: type_specifier procedure_ident '(' type_specifier ')' '=' value ';'. (71)
|
||
|
|
||
|
. reduce 71 (src line 214)
|
||
|
|
||
|
|
||
|
40 terminals, 41 nonterminals
|
||
|
73 grammar rules, 135/8000 states
|
||
|
0 shift/reduce, 0 reduce/reduce conflicts reported
|
||
|
90 working sets used
|
||
|
memory: parser 155/120000
|
||
|
40 extra closures
|
||
|
212 shift entries, 1 exceptions
|
||
|
69 goto entries
|
||
|
62 entries saved by goto default
|
||
|
Optimizer space used: output 148/120000
|
||
|
148 table entries, 0 zero
|
||
|
maximum spread: 40, maximum offset: 131
|