Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
A
asn1c
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Libraries
asn1c
Commits
1893ddfb
Commit
1893ddfb
authored
Mar 20, 2005
by
Lev Walkin
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
parsing support for CONSTRAINED BY
parent
6ffb0141
Changes
12
Show whitespace changes
Inline
Side-by-side
Showing
12 changed files
with
1486 additions
and
1421 deletions
+1486
-1421
ChangeLog
ChangeLog
+1
-0
TODO
TODO
+3
-3
libasn1fix/asn1fix_constraint_compat.c
libasn1fix/asn1fix_constraint_compat.c
+2
-0
libasn1parser/asn1p_constr.c
libasn1parser/asn1p_constr.c
+2
-0
libasn1parser/asn1p_constr.h
libasn1parser/asn1p_constr.h
+1
-0
libasn1parser/asn1p_l.c
libasn1parser/asn1p_l.c
+888
-883
libasn1parser/asn1p_l.l
libasn1parser/asn1p_l.l
+1
-1
libasn1parser/asn1p_y.c
libasn1parser/asn1p_y.c
+552
-530
libasn1parser/asn1p_y.y
libasn1parser/asn1p_y.y
+11
-3
libasn1print/asn1print.c
libasn1print/asn1print.c
+5
-0
tests/34-class-OK.asn1.-EF
tests/34-class-OK.asn1.-EF
+1
-1
tests/79-constrained-by-OK.asn1
tests/79-constrained-by-OK.asn1
+19
-0
No files found.
ChangeLog
View file @
1893ddfb
...
...
@@ -5,6 +5,7 @@
* More RFC variations supported in crfc2asn1.pl.
* Refined string values compatibility. (Test cases 77, 78).
* Support for ContainedSubtype constraints. (Test case 16).
* Parsing support for CONSTRAINED BY. (Test case 79).
0.9.12: 2005-Mar-10
...
...
TODO
View file @
1893ddfb
...
...
@@ -10,9 +10,9 @@ which is already completed. Also see #3.2.
2. MEDIUM:
2.1 Support for
DEFAULT encoding and decoding, at least in INTEGER/ENUMERATED
types.
2.2 Support for EXTERNAL, EMBEDDED-PDV and CHARACTER STRING types
.
2.1 Support for
EXTERNAL, EMBEDDED-PDV and CHARACTER STRING
types.
Requires something from 1.2 (Information Object Classes)
.
3. MINOR:
3.1
Parsing of CONSTRAINED BY clauses
3.1
Support for DEFAULT encoding and decoding, at least in INTEGER/ENUMERATED types.
libasn1fix/asn1fix_constraint_compat.c
View file @
1893ddfb
...
...
@@ -77,6 +77,8 @@ asn1constraint_compatible(asn1p_expr_type_e expr_type,
default:
break
;
}
return
0
;
case
ACT_CT_CTDBY
:
return
1
;
case
ACT_CA_SET
:
case
ACT_CA_CRC
:
case
ACT_CA_CSV
:
...
...
libasn1parser/asn1p_constr.c
View file @
1893ddfb
...
...
@@ -137,6 +137,8 @@ asn1p_constraint_type2str(enum asn1p_constraint_type_e type) {
return
"SingleTypeConstraint"
;
case
ACT_CT_WCOMPS
:
return
"MultipleTypeConstraints"
;
case
ACT_CT_CTDBY
:
return
"UserDefinedConstraint"
;
case
ACT_CA_SET
:
return
"SET"
;
case
ACT_CA_CRC
:
...
...
libasn1parser/asn1p_constr.h
View file @
1893ddfb
...
...
@@ -25,6 +25,7 @@ typedef struct asn1p_constraint_s {
ACT_CT_FROM
,
/* FROM constraint type */
ACT_CT_WCOMP
,
/* WITH COMPONENT */
ACT_CT_WCOMPS
,
/* WITH COMPONENTS */
ACT_CT_CTDBY
,
/* CONSTRAINED BY */
/*
* Arrays of constraints.
*/
...
...
libasn1parser/asn1p_l.c
View file @
1893ddfb
This source diff could not be displayed because it is too large. You can
view the blob
instead.
libasn1parser/asn1p_l.l
View file @
1893ddfb
...
...
@@ -269,7 +269,7 @@ CHOICE return TOK_CHOICE;
CLASS return TOK_CLASS;
COMPONENT return TOK_COMPONENT;
COMPONENTS return TOK_COMPONENTS;
CONSRAINED return TOK_CONSTRAINED;
CONS
T
RAINED return TOK_CONSTRAINED;
CONTAINING return TOK_CONTAINING;
DEFAULT return TOK_DEFAULT;
DEFINED {
...
...
libasn1parser/asn1p_y.c
View file @
1893ddfb
...
...
@@ -204,11 +204,11 @@ typedef union {
#define YYFINAL 4
18
#define YYFINAL 4
23
#define YYFLAG -32768
#define YYNTBASE 116
#define YYTRANSLATE(x) ((unsigned)(x) <= 354 ? yytranslate[x] : 21
8
)
#define YYTRANSLATE(x) ((unsigned)(x) <= 354 ? yytranslate[x] : 21
9
)
static
const
char
yytranslate
[]
=
{
0
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
...
...
@@ -271,64 +271,65 @@ static const short yyprhs[] = { 0,
490
,
492
,
494
,
496
,
498
,
500
,
502
,
504
,
506
,
508
,
510
,
512
,
514
,
515
,
517
,
519
,
524
,
528
,
533
,
535
,
539
,
545
,
547
,
551
,
555
,
559
,
564
,
568
,
570
,
572
,
576
,
580
,
584
,
588
,
590
,
592
,
594
,
597
,
600
,
604
,
606
,
608
,
610
,
612
,
614
,
616
,
618
,
620
,
626
,
628
,
632
,
634
,
638
,
639
,
641
,
643
,
645
,
647
,
649
,
651
,
655
,
660
,
662
,
666
,
669
,
673
,
675
,
679
,
680
,
682
,
684
,
687
,
690
,
694
,
696
,
700
,
702
,
707
,
712
,
714
,
716
,
718
,
720
,
721
,
723
,
726
,
731
,
732
,
734
,
736
,
738
,
739
,
741
,
743
,
745
,
747
,
749
,
750
,
752
576
,
580
,
584
,
588
,
590
,
592
,
593
,
599
,
601
,
604
,
607
,
611
,
613
,
615
,
617
,
619
,
621
,
623
,
625
,
627
,
633
,
635
,
639
,
641
,
645
,
646
,
648
,
650
,
652
,
654
,
656
,
658
,
662
,
667
,
669
,
673
,
676
,
680
,
682
,
686
,
687
,
689
,
691
,
694
,
697
,
701
,
703
,
707
,
709
,
714
,
719
,
721
,
723
,
725
,
727
,
728
,
730
,
733
,
738
,
739
,
741
,
743
,
745
,
746
,
748
,
750
,
752
,
754
,
756
,
757
,
759
};
static
const
short
yyrhs
[]
=
{
117
,
0
,
118
,
0
,
117
,
118
,
0
,
21
4
,
119
,
34
,
123
,
0
,
118
,
0
,
117
,
118
,
0
,
21
5
,
119
,
34
,
123
,
3
,
21
,
126
,
39
,
0
,
0
,
120
,
0
,
103
,
121
,
104
,
0
,
103
,
104
,
0
,
122
,
0
,
121
,
122
,
0
,
21
7
,
0
,
217
,
105
,
9
,
106
,
0
,
9
,
0
,
0
,
21
8
,
0
,
218
,
105
,
9
,
106
,
0
,
9
,
0
,
0
,
124
,
0
,
125
,
0
,
124
,
125
,
0
,
41
,
84
,
0
,
52
,
84
,
0
,
20
,
84
,
0
,
43
,
53
,
0
,
12
,
57
,
0
,
0
,
127
,
0
,
128
,
0
,
127
,
128
,
0
,
130
,
0
,
135
,
0
,
143
,
0
,
170
,
0
,
138
,
0
,
0
,
38
,
12
,
129
,
0
,
178
,
0
,
54
,
131
,
107
,
0
,
54
,
46
,
0
,
132
,
0
,
131
,
132
,
0
,
133
,
46
,
21
4
,
119
,
0
,
134
,
0
,
133
,
108
,
134
,
0
,
21
4
,
0
,
214
,
103
,
104
,
0
,
217
,
0
,
42
,
136
,
46
,
21
5
,
119
,
0
,
134
,
0
,
133
,
108
,
134
,
0
,
21
5
,
0
,
215
,
103
,
104
,
0
,
218
,
0
,
42
,
136
,
107
,
0
,
42
,
17
,
107
,
0
,
42
,
107
,
0
,
137
,
0
,
136
,
108
,
137
,
0
,
21
4
,
0
,
214
,
103
,
104
,
0
,
21
7
,
0
,
214
,
139
,
3
,
103
,
140
,
104
,
0
,
0
,
136
,
108
,
137
,
0
,
21
5
,
0
,
215
,
103
,
104
,
0
,
21
8
,
0
,
215
,
139
,
3
,
103
,
140
,
104
,
0
,
165
,
0
,
175
,
0
,
0
,
141
,
0
,
142
,
0
,
141
,
108
,
142
,
0
,
102
,
0
,
186
,
0
,
21
4
,
3
,
209
,
87
,
0
,
21
4
,
3
,
163
,
0
,
214
,
3
,
153
,
0
,
21
4
,
103
,
144
,
104
,
3
,
163
,
0
,
145
,
0
,
144
,
108
,
145
,
0
,
21
4
,
0
,
214
,
109
,
217
,
0
,
214
,
109
,
21
4
,
0
,
175
,
109
,
217
,
0
,
147
,
0
,
146
,
108
,
147
,
0
,
163
,
0
,
21
7
,
0
,
0
,
149
,
0
,
150
,
0
,
149
,
108
,
150
,
0
,
21
7
,
163
,
203
,
0
,
108
,
142
,
0
,
102
,
0
,
186
,
0
,
21
5
,
3
,
210
,
87
,
0
,
21
5
,
3
,
163
,
0
,
215
,
3
,
153
,
0
,
21
5
,
103
,
144
,
104
,
3
,
163
,
0
,
145
,
0
,
144
,
108
,
145
,
0
,
21
5
,
0
,
215
,
109
,
218
,
0
,
215
,
109
,
21
5
,
0
,
175
,
109
,
218
,
0
,
147
,
0
,
146
,
108
,
147
,
0
,
163
,
0
,
21
8
,
0
,
0
,
149
,
0
,
150
,
0
,
149
,
108
,
150
,
0
,
21
8
,
163
,
204
,
0
,
30
,
68
,
163
,
0
,
162
,
0
,
152
,
0
,
151
,
108
,
152
,
0
,
21
7
,
163
,
0
,
162
,
0
,
28
,
103
,
155
,
152
,
0
,
21
8
,
163
,
0
,
162
,
0
,
28
,
103
,
155
,
104
,
157
,
0
,
0
,
88
,
0
,
156
,
0
,
155
,
108
,
156
,
0
,
168
,
20
3
,
0
,
168
,
163
,
154
,
203
,
0
,
168
,
168
,
154
,
20
3
,
0
,
0
,
158
,
0
,
0
,
95
,
156
,
0
,
168
,
20
4
,
0
,
168
,
163
,
154
,
204
,
0
,
168
,
168
,
154
,
20
4
,
0
,
0
,
158
,
0
,
0
,
95
,
82
,
103
,
159
,
160
,
104
,
0
,
161
,
0
,
160
,
161
,
0
,
4
,
0
,
168
,
0
,
102
,
0
,
102
,
110
,
173
,
0
,
102
,
110
,
20
8
,
0
,
209
,
164
,
182
,
0
,
177
,
0
,
102
,
110
,
20
9
,
0
,
210
,
164
,
182
,
0
,
177
,
0
,
27
,
103
,
151
,
104
,
0
,
78
,
103
,
148
,
104
,
0
,
79
,
103
,
148
,
104
,
0
,
78
,
182
,
68
,
21
6
,
2
09
,
164
,
0
,
79
,
182
,
68
,
216
,
209
,
164
,
0
,
18
,
0
,
18
,
35
,
25
,
21
7
,
0
,
214
,
103
,
146
,
0
,
79
,
103
,
148
,
104
,
0
,
78
,
182
,
68
,
21
7
,
2
10
,
164
,
0
,
79
,
182
,
68
,
217
,
210
,
164
,
0
,
18
,
0
,
18
,
35
,
25
,
21
8
,
0
,
215
,
103
,
146
,
104
,
0
,
165
,
0
,
56
,
68
,
165
,
0
,
11
,
0
,
11
,
111
,
21
4
,
0
,
215
,
111
,
214
,
0
,
11
,
111
,
21
7
,
0
,
215
,
0
,
215
,
111
,
166
,
0
,
167
,
0
,
11
,
111
,
21
5
,
0
,
216
,
111
,
215
,
0
,
11
,
111
,
21
8
,
0
,
216
,
0
,
216
,
111
,
166
,
0
,
167
,
0
,
166
,
111
,
167
,
0
,
169
,
0
,
169
,
0
,
13
,
0
,
14
,
0
,
21
7
,
139
,
3
,
171
,
0
,
217
,
109
,
171
,
14
,
0
,
21
8
,
139
,
3
,
171
,
0
,
218
,
109
,
171
,
0
,
0
,
103
,
172
,
174
,
0
,
63
,
0
,
45
,
0
,
86
,
0
,
5
,
0
,
7
,
0
,
6
,
0
,
20
8
,
0
,
173
,
0
,
21
7
,
0
,
214
,
111
,
217
,
0
,
4
,
0
,
86
,
0
,
5
,
0
,
7
,
0
,
6
,
0
,
20
9
,
0
,
173
,
0
,
21
8
,
0
,
215
,
111
,
218
,
0
,
4
,
0
,
174
,
4
,
0
,
24
,
0
,
63
,
0
,
76
,
0
,
176
,
0
,
67
,
81
,
0
,
65
,
51
,
0
,
77
,
0
,
44
,
0
,
36
,
71
,
0
,
26
,
81
,
0
,
91
,
0
,
47
,
0
,
178
,
0
,
58
,
0
,
40
,
0
,
22
,
81
,
0
,
175
,
0
,
176
,
20
5
,
0
,
23
,
0
,
48
,
0
,
49
,
175
,
0
,
176
,
20
6
,
0
,
23
,
0
,
48
,
0
,
49
,
0
,
50
,
0
,
59
,
0
,
64
,
0
,
74
,
0
,
83
,
0
,
85
,
0
,
90
,
0
,
92
,
0
,
93
,
0
,
94
,
0
,
66
,
0
,
99
,
0
,
100
,
0
,
97
,
0
,
98
,
...
...
@@ -336,27 +337,27 @@ static const short yyrhs[] = { 117,
185
,
106
,
0
,
105
,
185
,
106
,
0
,
184
,
105
,
185
,
106
,
0
,
186
,
0
,
186
,
108
,
102
,
0
,
186
,
108
,
102
,
108
,
186
,
0
,
187
,
0
,
186
,
179
,
187
,
0
,
186
,
180
,
187
,
0
,
187
,
181
,
187
,
0
,
1
89
,
105
,
185
,
106
,
0
,
105
,
185
,
106
,
0
,
19
0
,
0
,
191
,
0
,
19
0
,
188
,
190
,
0
,
61
,
188
,
190
,
0
,
190
,
18
8
,
60
,
0
,
61
,
188
,
60
,
0
,
197
,
0
,
192
,
0
,
101
,
0
,
101
,
112
,
0
,
112
,
101
,
0
,
112
,
101
,
112
,
0
,
80
,
0
,
46
,
0
,
45
,
0
,
86
,
0
,
208
,
0
,
6
,
0
,
217
,
0
,
214
,
0
,
95
,
30
,
103
,
193
,
104
,
0
,
194
,
0
,
193
,
108
,
194
,
0
,
102
,
0
,
217
,
182
,
195
,
0
,
0
,
196
,
0
,
73
,
0
,
15
,
0
,
69
,
0
,
198
,
0
,
199
,
0
,
103
,
214
,
104
,
0
,
198
,
103
,
200
,
104
,
0
,
201
,
0
,
200
,
108
,
201
,
0
,
113
,
202
,
0
,
113
,
111
,
202
,
0
,
217
,
0
,
202
,
111
,
217
,
0
,
0
,
204
,
0
,
69
,
0
,
33
,
171
,
0
,
103
,
104
,
0
,
103
,
206
,
104
,
0
,
207
,
0
,
206
,
108
,
207
,
0
,
217
,
0
,
217
,
105
,
208
,
106
,
0
,
217
,
105
,
173
,
106
,
0
,
208
,
0
,
102
,
0
,
9
,
0
,
10
,
0
,
0
,
210
,
0
,
211
,
213
,
0
,
114
,
212
,
9
,
115
,
0
,
0
,
89
,
0
,
19
,
0
,
75
,
0
,
0
,
52
,
0
,
41
,
0
,
11
,
0
,
12
,
0
,
12
,
0
,
0
,
217
,
0
,
8
,
0
186
,
180
,
187
,
0
,
187
,
181
,
187
,
0
,
1
90
,
105
,
185
,
106
,
0
,
105
,
185
,
106
,
0
,
19
1
,
0
,
192
,
0
,
19
1
,
189
,
191
,
0
,
61
,
189
,
191
,
0
,
191
,
18
9
,
60
,
0
,
61
,
189
,
60
,
0
,
198
,
0
,
193
,
0
,
0
,
31
,
25
,
103
,
188
,
174
,
0
,
101
,
0
,
101
,
112
,
0
,
112
,
101
,
0
,
112
,
101
,
112
,
0
,
80
,
0
,
46
,
0
,
45
,
0
,
86
,
0
,
209
,
0
,
6
,
0
,
218
,
0
,
215
,
0
,
95
,
30
,
103
,
194
,
104
,
0
,
195
,
0
,
194
,
108
,
195
,
0
,
102
,
0
,
218
,
182
,
196
,
0
,
0
,
197
,
0
,
73
,
0
,
15
,
0
,
69
,
0
,
199
,
0
,
200
,
0
,
103
,
215
,
104
,
0
,
199
,
103
,
201
,
104
,
0
,
202
,
0
,
201
,
108
,
202
,
0
,
113
,
203
,
0
,
113
,
111
,
203
,
0
,
218
,
0
,
203
,
111
,
218
,
0
,
0
,
205
,
0
,
69
,
0
,
33
,
171
,
0
,
103
,
104
,
0
,
103
,
207
,
104
,
0
,
208
,
0
,
207
,
108
,
208
,
0
,
218
,
0
,
218
,
105
,
209
,
106
,
0
,
218
,
105
,
173
,
106
,
0
,
209
,
0
,
102
,
0
,
9
,
0
,
10
,
0
,
0
,
211
,
0
,
212
,
214
,
0
,
114
,
213
,
9
,
115
,
0
,
0
,
89
,
0
,
19
,
0
,
75
,
0
,
0
,
52
,
0
,
41
,
0
,
11
,
0
,
12
,
0
,
12
,
0
,
0
,
218
,
0
,
8
,
0
};
#endif
...
...
@@ -377,19 +378,20 @@ static const short yyrline[] = { 0,
1110
,
1120
,
1130
,
1136
,
1150
,
1174
,
1181
,
1195
,
1204
,
1214
,
1224
,
1234
,
1242
,
1263
,
1272
,
1281
,
1282
,
1284
,
1291
,
1303
,
1313
,
1321
,
1321
,
1326
,
1331
,
1336
,
1341
,
1345
,
1349
,
1353
,
1356
,
1361
,
1373
,
1389
,
1400
,
1414
,
1416
,
1417
,
1418
,
1419
,
1420
,
1421
,
1422
,
1423
,
1424
,
1425
,
1426
,
1427
,
1433
,
1435
,
1436
,
1439
,
1446
,
1458
,
1460
,
1464
,
1468
,
1469
,
1470
,
1471
,
1472
,
1476
,
1477
,
1478
,
1479
,
1483
,
1484
,
1491
,
1491
,
1492
,
1492
,
1493
,
1495
,
1497
,
1502
,
1506
,
1515
,
1519
,
1524
,
1528
,
1534
,
1544
,
1548
,
1551
,
1554
,
1559
,
1568
,
1576
,
1582
,
1588
,
1595
,
1603
,
1611
,
1620
,
1623
,
1628
,
1630
,
1631
,
1632
,
1635
,
1639
,
1644
,
1650
,
1655
,
1658
,
1662
,
1675
,
1689
,
1695
,
1699
,
1704
,
1710
,
1722
,
1724
,
1727
,
1731
,
1734
,
1739
,
1743
,
1751
,
1766
,
1772
,
1779
,
1792
,
1804
,
1819
,
1823
,
1840
,
1845
,
1848
,
1853
,
1875
,
1880
,
1885
,
1891
,
1897
,
1905
,
1913
,
1921
,
1928
,
1938
,
1943
,
1973
,
1975
,
1978
,
1985
,
1991
,
1993
,
1994
,
1995
,
1998
,
2000
,
2001
,
2004
,
2009
,
2016
,
2023
,
2025
,
2029
1356
,
1361
,
1373
,
1389
,
1399
,
1413
,
1415
,
1416
,
1417
,
1418
,
1419
,
1420
,
1421
,
1422
,
1423
,
1424
,
1425
,
1426
,
1432
,
1434
,
1435
,
1438
,
1445
,
1457
,
1459
,
1463
,
1467
,
1468
,
1469
,
1470
,
1471
,
1475
,
1476
,
1477
,
1478
,
1482
,
1483
,
1490
,
1490
,
1491
,
1491
,
1492
,
1494
,
1496
,
1501
,
1505
,
1514
,
1518
,
1523
,
1527
,
1533
,
1543
,
1547
,
1550
,
1553
,
1558
,
1567
,
1575
,
1581
,
1587
,
1594
,
1602
,
1610
,
1619
,
1622
,
1625
,
1626
,
1636
,
1638
,
1639
,
1640
,
1643
,
1647
,
1652
,
1658
,
1663
,
1666
,
1670
,
1683
,
1697
,
1703
,
1707
,
1712
,
1718
,
1730
,
1732
,
1735
,
1739
,
1742
,
1747
,
1751
,
1759
,
1774
,
1780
,
1787
,
1800
,
1812
,
1827
,
1831
,
1848
,
1853
,
1856
,
1861
,
1883
,
1888
,
1893
,
1899
,
1905
,
1913
,
1921
,
1929
,
1936
,
1946
,
1951
,
1981
,
1983
,
1986
,
1993
,
1999
,
2001
,
2002
,
2003
,
2006
,
2008
,
2009
,
2012
,
2017
,
2024
,
2031
,
2033
,
2037
};
#endif
...
...
@@ -432,13 +434,13 @@ static const char * const yytname[] = { "$","error","$undefined.","TOK_PPEQ",
"Value"
,
"@3"
,
"DefinedValue"
,
"Opaque"
,
"BasicTypeId"
,
"BasicTypeId_UniverationCompatible"
,
"BasicType"
,
"BasicString"
,
"Union"
,
"Intersection"
,
"Except"
,
"optConstraints"
,
"Constraints"
,
"SetOfConstraints"
,
"ElementSetSpecs"
,
"ElementSetSpec"
,
"ConstraintSubtypeElement"
,
"
ConstraintRangeSpec"
,
"ConstraintSpec"
,
"SingleValue"
,
"ContainedSubtype"
,
"WithComponents
"
,
"WithComponents
List"
,
"WithComponentsElement"
,
"optPresenceConstraint"
,
"
PresenceConstraint"
,
"
TableConstraint"
,
"SimpleTableConstraint"
,
"ComponentRelationConstraint"
,
"AtNotationLis
t"
,
"AtNotation
Element"
,
"ComponentIdList"
,
"optMarker"
,
"Marker"
,
"UniverationDefinition
"
,
"Univeration
List"
,
"UniverationElement"
,
"SignedNumber"
,
"optTag"
,
"Tag"
,
"TagTypeValue
"
,
"
TagClass"
,
"TagPlicit"
,
"TypeRefName"
,
"ObjectClassReference"
,
"optIdentifier
"
,
"Identifier"
,
NULL
"
@4"
,
"ConstraintRangeSpec"
,
"ConstraintSpec"
,
"SingleValue"
,
"ContainedSubtype
"
,
"WithComponents
"
,
"WithComponentsList"
,
"WithComponentsElement"
,
"opt
PresenceConstraint"
,
"
PresenceConstraint"
,
"TableConstraint"
,
"SimpleTableConstraint"
,
"ComponentRelationConstrain
t"
,
"AtNotation
List"
,
"AtNotationElement"
,
"ComponentIdList"
,
"optMarker"
,
"Marker
"
,
"Univeration
Definition"
,
"UniverationList"
,
"UniverationElement"
,
"SignedNumber
"
,
"
optTag"
,
"Tag"
,
"TagTypeValue"
,
"TagClass"
,
"TagPlicit"
,
"TypeRefName"
,
"ObjectClassReference
"
,
"
optIdentifier"
,
"
Identifier"
,
NULL
};
#endif
...
...
@@ -463,13 +465,14 @@ static const short yyr1[] = { 0,
178
,
178
,
178
,
178
,
178
,
178
,
178
,
179
,
179
,
180
,
180
,
181
,
182
,
182
,
183
,
183
,
184
,
184
,
185
,
185
,
185
,
186
,
186
,
186
,
186
,
187
,
187
,
187
,
187
,
187
,
187
,
187
,
187
,
187
,
187
,
188
,
188
,
188
,
188
,
189
,
189
,
190
,
190
,
190
,
190
,
190
,
191
,
192
,
193
,
193
,
194
,
194
,
195
,
195
,
196
,
196
,
196
,
197
,
197
,
198
,
199
,
200
,
200
,
201
,
201
,
202
,
202
,
203
,
203
,
204
,
204
,
205
,
205
,
206
,
206
,
207
,
207
,
207
,
207
,
207
,
208
,
208
,
209
,
209
,
210
,
211
,
212
,
212
,
212
,
212
,
213
,
213
,
213
,
214
,
214
,
215
,
216
,
216
,
217
187
,
187
,
187
,
187
,
187
,
188
,
187
,
189
,
189
,
189
,
189
,
190
,
190
,
191
,
191
,
191
,
191
,
191
,
192
,
193
,
194
,
194
,
195
,
195
,
196
,
196
,
197
,
197
,
197
,
198
,
198
,
199
,
200
,
201
,
201
,
202
,
202
,
203
,
203
,
204
,
204
,
205
,
205
,
206
,
206
,
207
,
207
,
208
,
208
,
208
,
208
,
208
,
209
,
209
,
210
,
210
,
211
,
212
,
213
,
213
,
213
,
213
,
214
,
214
,
214
,
215
,
215
,
216
,
217
,
217
,
218
};
static
const
short
yyr2
[]
=
{
0
,
...
...
@@ -493,17 +496,18 @@ static const short yyr2[] = { 0,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
0
,
1
,
1
,
4
,
3
,
4
,
1
,
3
,
5
,
1
,
3
,
3
,
3
,
4
,
3
,
1
,
1
,
3
,
3
,
3
,
3
,
1
,
1
,
1
,
2
,
2
,
3
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
5
,
1
,
3
,
1
,
3
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
3
,
4
,
1
,
3
,
2
,
3
,
1
,
3
,
0
,
1
,
1
,
2
,
2
,
3
,
1
,
3
,
1
,
4
,
4
,
1
,
1
,
1
,
1
,
0
,
1
,
2
,
4
,
0
,
1
,
1
,
1
,
0
,
1
,
1
,
1
,
1
,
1
,
0
,
1
,
1
3
,
3
,
3
,
1
,
1
,
0
,
5
,
1
,
2
,
2
,
3
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
5
,
1
,
3
,
1
,
3
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
3
,
4
,
1
,
3
,
2
,
3
,
1
,
3
,
0
,
1
,
1
,
2
,
2
,
3
,
1
,
3
,
1
,
4
,
4
,
1
,
1
,
1
,
1
,
0
,
1
,
2
,
4
,
0
,
1
,
1
,
1
,
0
,
1
,
1
,
1
,
1
,
1
,
0
,
1
,
1
};
static
const
short
yydefact
[]
=
{
0
,
26
4
,
265
,
1
,
2
,
5
,
3
,
0
,
0
,
6
,
269
,
26
6
,
267
,
1
,
2
,
5
,
3
,
0
,
0
,
6
,
271
,
13
,
8
,
0
,
9
,
11
,
14
,
7
,
10
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
15
,
16
,
0
,
22
,
20
,
18
,
21
,
19
,
0
,
17
,
12
,
23
,
164
,
0
,
0
,
...
...
@@ -511,287 +515,291 @@ static const short yydefact[] = { 0,
173
,
174
,
175
,
176
,
0
,
24
,
25
,
27
,
28
,
31
,
29
,
30
,
34
,
0
,
0
,
32
,
0
,
47
,
0
,
48
,
50
,
52
,
36
,
0
,
37
,
0
,
40
,
42
,
44
,
4
,
26
,
25
3
,
118
,
266
,
0
,
146
,
0
,
0
,
160
,
153
,
26
,
25
5
,
118
,
268
,
0
,
146
,
0
,
0
,
160
,
153
,
157
,
159
,
147
,
0
,
0
,
148
,
152
,
156
,
0
,
0
,
54
,
55
,
149
,
158
,
122
,
0
,
33
,
46
,
45
,
0
,
0
,
35
,
38
,
0
,
0
,
0
,
0
,
25
7
,
64
,
63
,
0
,
25
4
,
261
,
0
,
161
,
155
,
154
,
151
,
150
,
0
,
0
,
35
,
38
,
0
,
0
,
0
,
0
,
25
9
,
64
,
63
,
0
,
25
6
,
263
,
0
,
161
,
155
,
154
,
151
,
150
,
0
,
66
,
0
,
68
,
0
,
0
,
0
,
49
,
51
,
5
,
41
,
43
,
0
,
2
59
,
260
,
258
,
0
,
118
,
266
,
113
,
0
,
43
,
0
,
2
61
,
262
,
260
,
0
,
118
,
268
,
113
,
0
,
0
,
183
,
183
,
62
,
183
,
116
,
162
,
149
,
107
,
0
,
26
3
,
262
,
255
,
119
,
121
,
0
,
0
,
0
,
0
,
56
,
128
,
129
,
123
,
124
,
126
,
120
,
137
,
139
,
138
,
25
1
,
25
2
,
135
,
134
,
136
,
132
,
130
,
141
,
140
,
0
,
142
,
39
,
0
,
90
,
25
3
,
127
,
0
,
0
,
0
,
0
,
0
,
26
5
,
264
,
257
,
119
,
121
,
0
,
0
,
0
,
0
,
56
,
128
,
129
,
123
,
124
,
126
,
120
,
137
,
139
,
138
,
25
3
,
25
4
,
135
,
134
,
136
,
132
,
130
,
141
,
140
,
0
,
142
,
39
,
0
,
90
,
25
5
,
127
,
0
,
0
,
0
,
0
,
0
,
76
,
0
,
0
,
184
,
185
,
76
,
0
,
106
,
0
,
163
,
253
,
253
,
67
,
71
,
70
,
69
,
215
,
212
,
211
,
0
,
210
,
213
,
0
,
60
,
0
,
0
,
0
,
57
,
58
,
61
,
192
,
0
,
198
,
199
,
205
,
204
,
228
,
229
,
214
,
217
,
216
,
0
,
0
,
0
,
0
,
95
,
0
,
0
,
240
,
88
,
88
,
92
,
239
,
0
,
256
,
0
,
103
,
0
,
83
,
86
,
253
,
117
,
0
,
0
,
0
,
77
,
78
,
82
,
253
,
0
,
189
,
267
,
0
,
0
,
267
,
250
,
242
,
0
,
244
,
249
,
246
,
0
,
72
,
74
,
75
,
65
,
206
,
0
,
0
,
0
,
0
,
0
,
53
,
0
,
180
,
181
,
178
,
179
,
0
,
0
,
182
,
0
,
0
,
0
,
0
,
125
,
144
,
133
,
143
,
131
,
0
,
87
,
96
,
91
,
241
,
89
,
238
,
238
,
114
,
0
,
108
,
0
,
85
,
0
,
253
,
109
,
0
,
238
,
187
,
0
,
253
,
268
,
0
,
110
,
253
,
243
,
0
,
0
,
115
,
253
,
207
,
208
,
203
,
201
,
0
,
230
,
197
,
59
,
193
,
194
,
195
,
0
,
202
,
200
,
0
,
0
,
232
,
145
,
0
,
93
,
94
,
104
,
105
,
142
,
84
,
186
,
81
,
79
,
80
,
190
,
0
,
188
,
0
,
245
,
0
,
0
,
73
,
209
,
221
,
0
,
219
,
183
,
196
,
0
,
234
,
236
,
231
,
0
,
97
,
0
,
111
,
112
,
248
,
247
,
218
,
0
,
223
,
235
,
0
,
233
,
0
,
191
,
220
,
226
,
227
,
225
,
222
,
224
,
237
,
101
,
0
,
99
,
102
,
98
,
100
,
0
,
0
,
0
255
,
255
,
67
,
71
,
70
,
69
,
217
,
0
,
214
,
213
,
0
,
212
,
215
,
0
,
60
,
0
,
0
,
0
,
57
,
58
,
61
,
192
,
0
,
198
,
199
,
205
,
204
,
230
,
231
,
216
,
219
,
218
,
0
,
0
,
0
,
0
,
95
,
0
,
0
,
242
,
88
,
88
,
92
,
241
,
0
,
258
,
0
,
103
,
0
,
83
,
86
,
255
,
117
,
0
,
0
,
0
,
77
,
78
,
82
,
255
,
0
,
189
,
269
,
0
,
0
,
269
,
252
,
244
,
0
,
246
,
251
,
248
,
0
,
72
,
74
,
75
,
65
,
0
,
208
,
0
,
0
,
0
,
0
,
0
,
53
,
0
,
180
,
181
,
178
,
179
,
0
,
0
,
182
,
0
,
0
,
0
,
0
,
125
,
144
,
133
,
143
,
131
,
0
,
87
,
96
,
91
,
243
,
89
,
240
,
240
,
114
,
0
,
108
,
0
,
85
,
0
,
255
,
109
,
0
,
240
,
187
,
0
,
255
,
270
,
0
,
110
,
255
,
245
,
0
,
0
,
115
,
255
,
206
,
209
,
210
,
203
,
201
,
0
,
232
,
197
,
59
,
193
,
194
,
195
,
0
,
202
,
200
,
0
,
0
,
234
,
145
,
0
,
93
,
94
,
104
,
105
,
142
,
84
,
186
,
81
,
79
,
80
,
190
,
0
,
188
,
0
,
247
,
0
,
0
,
73
,
0
,
211
,
223
,
0
,
221
,
183
,
196
,
0
,
236
,
238
,
233
,
0
,
97
,
0
,
111
,
112
,
250
,
249
,
207
,
220
,
0
,
225
,
237
,
0
,
235
,
0
,
191
,
222
,
228
,
229
,
227
,
224
,
226
,
239
,
101
,
0
,
99
,
102
,
98
,
100
,
0
,
0
,
0
};
static
const
short
yydefgoto
[]
=
{
4
16
,
static
const
short
yydefgoto
[]
=
{
4
21
,
3
,
4
,
8
,
9
,
13
,
14
,
25
,
26
,
27
,
55
,
56
,
57
,
107
,
58
,
74
,
75
,
76
,
77
,
59
,
69
,
70
,
60
,
100
,
22
7
,
228
,
229
,
61
,
130
,
131
,
282
,
28
3
,
265
,
266
,
267
,
258
,
259
,
119
,
317
,
192
,
193
,
31
2
,
313
,
401
,
411
,
412
,
268
,
284
,
155
,
156
,
173
,
174
,
194
,
195
,
62
,
186
,
24
3
,
187
,
308
,
157
,
103
,
159
,
104
,
299
,
300
,
302
,
203
,
204
,
205
,
270
,
271
,
23
1
,
289
,
232
,
233
,
234
,
235
,
380
,
381
,
407
,
408
,
236
,
237
,
238
,
356
,
357
,
385
,
252
,
253
,
210
,
278
,
279
,
2
39
,
254
,
122
,
123
,
146
,
163
,
240
,
105
,
331
,
241
70
,
60
,
100
,
22
8
,
229
,
230
,
61
,
130
,
131
,
283
,
28
4
,
266
,
267
,
268
,
259
,
260
,
119
,
319
,
192
,
193
,
31
4
,
315
,
406
,
416
,
417
,
269
,
285
,
155
,
156
,
173
,
174
,
194
,
195
,
62
,
186
,
24
4
,
187
,
310
,
157
,
103
,
159
,
104
,
301
,
302
,
304
,
203
,
204
,
205
,
271
,
272
,
23
2
,
381
,
291
,
233
,
234
,
235
,
236
,
384
,
385
,
412
,
413
,
237
,
238
,
239
,
359
,
360
,
389
,
253
,
254
,
210
,
279
,
2
80
,
240
,
255
,
122
,
123
,
146
,
163
,
241
,
105
,
333
,
242
};
static
const
short
yypact
[]
=
{
228
,
-
32768
,
-
32768
,
228
,
-
32768
,
-
71
,
-
32768
,
38
,
59
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
49
,
-
32768
,
-
3
,
58
,
-
32768
,
-
32768
,
74
,
54
,
60
,
67
,
112
,
84
,
136
,
58
,
-
32768
,
82
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
152
,
-
32768
,
-
32768
,
419
,
-
32768
,
178
,
33
,
-
32768
,
-
32768
,
-
32768
,
61
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
181
,
419
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
332
,
648
,
-
32768
,
121
,
-
32768
,
144
,
-
32768
,
132
,
-
32768
,
-
32768
,
17
,
-
32768
,
-
22
,
-
32768
,
143
,
-
32768
,
-
32768
,
-
32768
,
-
17
,
137
,
-
32768
,
183
,
-
32768
,
194
,
186
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
208
,
203
,
-
32768
,
-
32768
,
-
32768
,
723
,
275
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
179
,
288
,
-
32768
,
-
32768
,
-
32768
,
184
,
190
,
-
32768
,
-
32768
,
228
,
184
,
191
,
193
,
20
,
-
32768
,
-
32768
,
496
,
-
32768
,
86
,
184
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
79
,
-
32768
,
188
,
195
,
200
,
258
,
355
,
-
32768
,
-
32768
,
-
71
,
-
32768
,
-
32768
,
260
,
-
32768
,
-
32768
,
-
32768
,
284
,
53
,
202
,
263
,
205
,
238
,
-
15
,
-
14
,
-
32768
,
55
,
-
32768
,
-
32768
,
206
,
-
32768
,
207
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
308
,
723
,
304
,
184
,
197
,
-
32768
,
-
32768
,
210
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
211
,
209
,
-
32768
,
93
,
-
32768
,
29
,
-
32768
,
199
,
292
,
11
,
269
,
214
,
10
,
221
,
255
,
-
32768
,
220
,
10
,
259
,
-
32768
,
46
,
-
32768
,
6
,
215
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
62
,
-
32768
,
-
32768
,
298
,
-
32768
,
228
,
221
,
230
,
224
,
-
32768
,
189
,
240
,
232
,
62
,
-
32768
,
-
32768
,
-
32768
,
236
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
260
,
336
,
304
,
355
,
246
,
260
,
355
,
-
32768
,
254
,
254
,
-
32768
,
-
32768
,
573
,
-
32768
,
304
,
235
,
108
,
-
32768
,
-
32768
,
215
,
-
32768
,
221
,
278
,
243
,
241
,
-
32768
,
-
32768
,
215
,
244
,
72
,
304
,
221
,
248
,
304
,
-
32768
,
-
32768
,
109
,
-
32768
,
-
32768
,
252
,
110
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
247
,
270
,
71
,
250
,
266
,
267
,
-
32768
,
197
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
221
,
221
,
-
32768
,
221
,
221
,
176
,
261
,
-
32768
,
-
32768
,
371
,
-
32768
,
-
32768
,
296
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
15
,
15
,
-
32768
,
167
,
-
32768
,
11
,
-
32768
,
277
,
215
,
-
32768
,
10
,
15
,
-
32768
,
282
,
215
,
-
32768
,
279
,
-
32768
,
215
,
-
32768
,
13
,
167
,
-
32768
,
6
,
-
32768
,
274
,
-
32768
,
-
32768
,
52
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
281
,
-
32768
,
-
32768
,
12
,
115
,
-
32768
,
-
32768
,
285
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
286
,
573
,
-
32768
,
573
,
-
32768
,
287
,
295
,
-
32768
,
-
32768
,
-
32768
,
118
,
-
32768
,
55
,
-
32768
,
304
,
294
,
-
32768
,
-
32768
,
261
,
-
32768
,
221
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
52
,
23
,
294
,
304
,
-
32768
,
145
,
189
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
22
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
403
,
407
,
-
32768
static
const
short
yypact
[]
=
{
247
,
-
32768
,
-
32768
,
247
,
-
32768
,
-
74
,
-
32768
,
46
,
59
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
49
,
-
32768
,
-
66
,
221
,
-
32768
,
-
32768
,
57
,
55
,
75
,
83
,
119
,
104
,
195
,
221
,
-
32768
,
116
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
208
,
-
32768
,
-
32768
,
427
,
-
32768
,
222
,
24
,
-
32768
,
-
32768
,
-
32768
,
86
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
209
,
427
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
351
,
656
,
-
32768
,
146
,
-
32768
,
189
,
-
32768
,
162
,
-
32768
,
-
32768
,
32
,
-
32768
,
-
1
,
-
32768
,
167
,
-
32768
,
-
32768
,
-
32768
,
-
8
,
171
,
-
32768
,
194
,
-
32768
,
203
,
223
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
249
,
225
,
-
32768
,
-
32768
,
-
32768
,
731
,
299
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
196
,
305
,
-
32768
,
-
32768
,
-
32768
,
232
,
205
,
-
32768
,
-
32768
,
247
,
232
,
210
,
213
,
6
,
-
32768
,
-
32768
,
504
,
-
32768
,
18
,
232
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
3
,
-
32768
,
202
,
204
,
216
,
267
,
200
,
-
32768
,
-
32768
,
-
74
,
-
32768
,
-
32768
,
285
,
-
32768
,
-
32768
,
-
32768
,
303
,
-
42
,
218
,
288
,
224
,
257
,
-
18
,
68
,
-
32768
,
71
,
-
32768
,
-
32768
,
226
,
-
32768
,
227
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
323
,
731
,
320
,
232
,
80
,
-
32768
,
-
32768
,
220
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
229
,
228
,
-
32768
,
61
,
-
32768
,
5
,
-
32768
,
219
,
311
,
26
,
293
,
233
,
52
,
215
,
274
,
-
32768
,
238
,
52
,
276
,
-
32768
,
43
,
-
32768
,
8
,
231
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
321
,
-
32768
,
-
32768
,
-
2
,
-
32768
,
-
32768
,
317
,
-
32768
,
247
,
215
,
244
,
241
,
-
32768
,
193
,
256
,
248
,
-
2
,
-
32768
,
-
32768
,
-
32768
,
252
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
285
,
352
,
320
,
200
,
262
,
285
,
200
,
-
32768
,
270
,
270
,
-
32768
,
-
32768
,
581
,
-
32768
,
320
,
250
,
66
,
-
32768
,
-
32768
,
231
,
-
32768
,
215
,
291
,
260
,
253
,
-
32768
,
-
32768
,
231
,
261
,
81
,
320
,
215
,
265
,
320
,
-
32768
,
-
32768
,
124
,
-
32768
,
-
32768
,
266
,
143
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
263
,
258
,
271
,
70
,
273
,
275
,
272
,
-
32768
,
80
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
215
,
215
,
-
32768
,
215
,
215
,
279
,
269
,
-
32768
,
-
32768
,
376
,
-
32768
,
-
32768
,
301
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
31
,
31
,
-
32768
,
207
,
-
32768
,
26
,
-
32768
,
278
,
231
,
-
32768
,
52
,
31
,
-
32768
,
283
,
231
,
-
32768
,
280
,
-
32768
,
231
,
-
32768
,
38
,
207
,
-
32768
,
8
,
-
32768
,
-
32768
,
277
,
-
32768
,
-
32768
,
42
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
282
,
-
32768
,
-
32768
,
7
,
163
,
-
32768
,
-
32768
,
287
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
284
,
581
,
-
32768
,
581
,
-
32768
,
290
,
297
,
-
32768
,
352
,
-
32768
,
-
32768
,
164
,
-
32768
,
71
,
-
32768
,
320
,
294
,
-
32768
,
-
32768
,
269
,
-
32768
,
215
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
376
,
-
32768
,
42
,
2
,
294
,
320
,
-
32768
,
173
,
193
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
10
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
393
,
406
,
-
32768
};
static
const
short
yypgoto
[]
=
{
-
32768
,
-
32768
,
40
8
,
271
,
-
32768
,
-
32768
,
399
,
-
32768
,
-
32768
,
387
,
-
32768
,
-
32768
,
35
8
,
-
32768
,
-
32768
,
-
32768
,
342
,
-
32768
,
305
,
-
32768
,
-
32768
,
3
09
,
-
32768
,
356
,
-
32768
,
-
32768
,
134
,
-
32768
,
-
32768
,
262
,
-
32768
,
92
,
227
,
-
32768
,
107
,
-
32768
,
114
,
-
32768
,
187
,
-
32768
,
192
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
26
,
-
188
,
-
80
,
-
312
,
-
52
,
-
32768
,
198
,
-
186
,
-
120
,
-
32768
,
-
1
,
-
32768
,
-
244
,
-
32768
,
-
48
,
-
118
,
-
32768
,
69
,
-
32768
,
-
32768
,
-
32768
,
-
148
,
-
32768
,
-
32768
,
-
199
,
-
166
,
-
39
,
212
,
-
32768
,
-
204
,
-
32768
,
-
32768
,
-
32768
,
47
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
56
,
63
,
-
265
,
-
32768
,
-
32768
,
-
32768
,
111
,
-
127
,
-
81
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
31
,
-
32768
,
171
,
-
7
-
32768
,
40
4
,
281
,
-
32768
,
-
32768
,
395
,
-
32768
,
-
32768
,
385
,
-
32768
,
-
32768
,
35
6
,
-
32768
,
-
32768
,
-
32768
,
339
,
-
32768
,
304
,
-
32768
,
-
32768
,
3
12
,
-
32768
,
358
,
-
32768
,
-
32768
,
125
,
-
32768
,
-
32768
,
259
,
-
32768
,
82
,
234
,
-
32768
,
100
,
-
32768
,
106
,
-
32768
,
179
,
-
32768
,
184
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
17
,
-
189
,
-
78
,
-
139
,
-
53
,
-
32768
,
206
,
-
186
,
-
122
,
-
32768
,
-
56
,
-
32768
,
-
185
,
56
,
-
43
,
-
119
,
-
32768
,
40
,
-
32768
,
-
32768
,
-
32768
,
-
150
,
-
32768
,
-
32768
,
-
201
,
-
163
,
-
101
,
-
32768
,
212
,
-
32768
,
-
264
,
-
32768
,
-
32768
,
-
32768
,
47
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
60
,
63
,
-
162
,
-
32768
,
-
32768
,
-
32768
,
108
,
-
126
,
-
81
,
-
32768
,
-
32768
,
-
32768
,
-
32768
,
28
,
-
32768
,
177
,
-
7
};
#define YYLAST 8
17
#define YYLAST 8
25
static
const
short
yytable
[]
=
{
15
,
121
,
120
,
158
,
230
,
207
,
15
,
208
,
251
,
188
,
260
,
117
,
101
,
101
,
10
,
175
,
102
,
102
,
10
,
10
,
10
,
10
,
180
,
181
,
114
,
10
,
410
,
292
,
1
,
2
,
65
,
5
,
7
,
72
,
5
,
171
,
172
,
79
,
404
,
143
,
264
,
10
,
171
,
172
,
1
,
2
,
10
,
11
,
248
,
65
,
67
,
132
,
360
,
361
,
10
,
180
,
181
,
10
,
11
,
391
,
10
,
392
,
248
,
369
,
324
,
200
,
200
,
79
,
64
,
10
,
20
,
71
,
1
,
2
,
333
,
78
,
362
,
217
,
21
,
10
,
180
,
181
,
280
,
28
,
249
,
344
,
115
,
64
,
201
,
206
,
202
,
202
,
405
,
16
,
375
,
144
,
406
,
118
,
249
,
22
,
354
,
23
,
19
,
72
,
352
,
78
,
63
,
73
,
79
,
145
,
24
,
29
,
257
,
257
,
250
,
276
,
218
,
165
,
188
,
132
,
118
,
188
,
175
,
384
,
112
,
63
,
414
,
161
,
230
,
190
,
133
,
343
,
286
,
-
238
,
260
,
200
,
158
,
-
238
,
162
,
34
,
68
,
71
,
12
,
118
,
30
,
139
,
78
,
262
,
276
,
410
,
277
,
31
,
160
,
17
,
379
,
164
,
-
264
,
222
,
171
,
172
,
202
,
214
,
216
,
287
,
124
,
32
,
176
,
189
,
33
,
295
,
296
,
297
,
298
,
37
,
288
,
10
,
180
,
181
,
1
,
2
,
330
,
323
,
217
,
166
,
10
,
180
,
181
,
167
,
36
,
328
,
66
,
261
,
10
,
363
,
269
,
1
,
2
,
246
,
133
,
269
,
215
,
247
,
281
,
217
,
285
,
10
,
180
,
181
,
1
,
2
,
280
,
376
,
321
,
336
,
339
,
413
,
322
,
337
,
340
,
387
,
80
,
218
,
395
,
388
,
402
,
413
,
396
,
217
,
108
,
10
,
180
,
181
,
1
,
2
,
397
,
111
,
353
,
309
,
190
,
1
,
2
,
190
,
218
,
219
,
310
,
367
,
116
,
315
,
124
,
319
,
371
,
109
,
110
,
158
,
373
,
158
,
291
,
127
,
220
,
128
,
349
,
350
,
222
,
351
,
125
,
332
,
218
,
219
,
332
,
1
,
2
,
171
,
172
,
171
,
172
,
126
,
189
,
221
,
134
,
189
,
83
,
84
,
220
,
222
,
129
,
160
,
295
,
296
,
297
,
298
,
135
,
136
,
223
,
196
,
138
,
141
,
142
,
168
,
197
,
224
,
225
,
221
,
226
,
170
,
169
,
-
265
,
199
,
222
,
198
,
209
,
211
,
212
,
10
,
364
,
255
,
261
,
223
,
256
,
245
,
263
,
269
,
242
,
244
,
272
,
225
,
273
,
226
,
275
,
290
,
118
,
281
,
364
,
294
,
285
,
293
,
82
,
301
,
303
,
382
,
305
,
307
,
311
,
316
,
83
,
84
,
320
,
325
,
326
,
386
,
327
,
329
,
189
,
334
,
345
,
85
,
38
,
86
,
338
,
87
,
341
,
177
,
178
,
179
,
10
,
180
,
181
,
1
,
2
,
88
,
189
,
346
,
342
,
89
,
347
,
355
,
358
,
90
,
386
,
359
,
91
,
41
,
42
,
43
,
366
,
370
,
372
,
378
,
383
,
389
,
382
,
92
,
45
,
409
,
393
,
390
,
93
,
46
,
94
,
47
,
95
,
182
,
394
,
160
,
417
,
160
,
399
,
48
,
418
,
96
,
97
,
191
,
6
,
18
,
35
,
81
,
49
,
113
,
50
,
183
,
137
,
140
,
106
,
51
,
98
,
52
,
53
,
54
,
10
,
348
,
213
,
1
,
2
,
377
,
274
,
368
,
99
,
365
,
415
,
318
,
314
,
306
,
184
,
38
,
403
,
400
,
304
,
335
,
398
,
374
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
39
,
185
,
0
,
0
,
40
,
0
,
0
,
0
,
0
,
0
,
41
,
42
,
43
,
0
,
0
,
0
,
44
,
0
,
0
,
0
,
0
,
45
,
0
,
0
,
0
,
0
,
46
,
0
,
47
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
48
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
49
,
0
,
50
,
0
,
0
,
147
,
148
,
51
,
0
,
52
,
53
,
54
,
149
,
0
,
0
,
0
,
85
,
38
,
86
,
0
,
87
,
150
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
121
,
158
,
207
,
120
,
208
,
15
,
231
,
252
,
261
,
188
,
101
,
101
,
175
,
415
,
10
,
10
,
409
,
171
,
172
,
117
,
102
,
102
,
171
,
172
,
143
,
294
,
347
,
5
,
7
,
65
,
5
,
10
,
72
,
10
,
1
,
2
,
79
,
249
,
19
,
10
,
67
,
357
,
1
,
2
,
114
,
10
,
180
,
181
,
65
,
10
,
10
,
180
,
181
,
10
,
11
,
132
,
10
,
11
,
161
,
10
,
-
266
,
200
,
326
,
249
,
64
,
28
,
79
,
71
,
124
,
162
,
410
,
78
,
335
,
250
,
411
,
217
,
63
,
10
,
180
,
181
,
144
,
265
,
281
,
64
,
201
,
217
,
202
,
10
,
180
,
181
,
1
,
2
,
16
,
10
,
145
,
63
,
1
,
2
,
289
,
250
,
166
,
78
,
72
,
355
,
167
,
118
,
115
,
79
,
-
240
,
290
,
218
,
29
,
-
240
,
419
,
219
,
251
,
165
,
388
,
118
,
188
,
175
,
118
,
188
,
132
,
219
,
220
,
133
,
258
,
190
,
346
,
68
,
73
,
231
,
287
,
261
,
158
,
365
,
71
,
112
,
277
,
221
,
139
,
78
,
383
,
277
,
263
,
278
,
200
,
160
,
12
,
200
,
164
,
17
,
258
,
378
,
223
,
363
,
364
,
30
,
222
,
214
,
216
,
176
,
189
,
247
,
223
,
31
,
372
,
248
,
323
,
206
,
32
,
202
,
324
,
224
,
202
,
415
,
297
,
298
,
299
,
300
,
225
,
226
,
325
,
227
,
171
,
172
,
33
,
332
,
312
,
262
,
330
,
317
,
270
,
133
,
366
,
215
,
34
,
270
,
352
,
353
,
282
,
354
,
286
,
177
,
178
,
179
,
10
,
180
,
181
,
1
,
2
,
281
,
379
,
10
,
180
,
181
,
1
,
2
,
418
,
217
,
36
,
10
,
180
,
181
,
1
,
2
,
338
,
37
,
418
,
407
,
339
,
20
,
66
,
395
,
402
,
396
,
311
,
190
,
10
,
21
,
190
,
1
,
2
,
182
,
218
,
341
,
80
,
370
,
321
,
342
,
374
,
108
,
293
,
158
,
376
,
158
,
1
,
2
,
219
,
220
,
22
,
183
,
23
,
111
,
334
,
391
,
400
,
334
,
116
,
392
,
401
,
24
,
189
,
125
,
221
,
189
,
1
,
2
,
171
,
172
,
124
,
160
,
126
,
217
,
184
,
10
,
180
,
181
,
297
,
298
,
299
,
300
,
127
,
222
,
109
,
110
,
171
,
172
,
128
,
223
,
134
,
185
,
83
,
84
,
129
,
135
,
136
,
138
,
224
,
168
,
196
,
169
,
141
,
367
,
142
,
262
,
226
,
170
,
227
,
-
267
,
270
,
197
,
219
,
199
,
212
,
198
,
10
,
209
,
211
,
243
,
282
,
367
,
256
,
286
,
257
,
246
,
264
,
356
,
245
,
386
,
273
,
274
,
276
,
118
,
288
,
292
,
295
,
296
,
189
,
390
,
303
,
305
,
82
,
307
,
309
,
313
,
318
,
327
,
322
,
329
,
83
,
84
,
328
,
223
,
343
,
331
,
189
,
336
,
344
,
340
,
345
,
85
,
38
,
86
,
348
,
87
,
350
,
349
,
361
,
390
,
358
,
362
,
369
,
373
,
375
,
88
,
387
,
382
,
393
,
89
,
394
,
422
,
386
,
90
,
397
,
414
,
91
,
41
,
42
,
43
,
160
,
398
,
160
,
404
,
423
,
6
,
18
,
92
,
45
,
35
,
81
,
113
,
93
,
46
,
94
,
47
,
95
,
140
,
191
,
351
,
137
,
106
,
380
,
48
,
213
,
96
,
97
,
371
,
368
,
320
,
316
,
420
,
49
,
10
,
50
,
399
,
1
,
2
,
275
,
51
,
98
,
52
,
53
,
54
,
306
,
377
,
408
,
308
,
38
,
403
,
405
,
337
,
99
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
39
,
0
,
0
,
0
,
40
,
0
,
0
,
0
,
0
,
0
,
41
,
42
,
43
,
0
,
0
,
0
,
44
,
0
,
0
,
0
,
0
,
45
,
0
,
0
,
0
,
0
,
46
,
0
,
47
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
48
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
49
,
0
,
50
,
0
,
0
,
147
,
148
,
51
,
0
,
52
,
53
,
54
,
149
,
0
,
0
,
0
,
85
,
38
,
86
,
0
,
87
,
150
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
88
,
0
,
0
,
0
,
89
,
0
,
0
,
0
,
90
,
0
,
0
,
91
,
41
,
42
,
43
,
0
,
0
,
0
,
0
,
0
,
151
,
0
,
92
,
45
,
0
,
0
,
0
,
93
,
46
,
94
,
47
,
95
,
0
,
0
,
0
,
0
,
0
,
0
,
48
,
0
,
96
,
97
,
152
,
153
,
0
,
0
,
0
,
49
,
0
,
50
,
0
,
154
,
147
,
148
,
51
,
98
,
52
,
53
,
54
,
149
,
0
,
0
,
0
,
85
,
38
,
86
,
0
,
87
,
150
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
88
,
0
,
0
,
0
,
89
,
0
,
0
,
0
,
90
,
0
,
0
,
91
,
41
,
42
,
43
,
0
,
0
,
0
,
0
,
0
,
151
,
0
,
92
,
45
,
0
,
0
,
0
,
93
,
46
,
94
,
47
,
95
,
0
,
0
,
0
,
0
,
0
,
0
,
48
,
0
,
96
,
97
,
152
,
153
,
0
,
0
,
0
,
49
,
0
,
50
,
83
,
84
,
0
,
0
,
51
,
98
,
52
,
53
,
54
,
0
,
0
,
85
,
38
,
86
,
0
,
87
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
88
,
0
,
0
,
0
,
89
,
0
,
0
,
0
,
90
,
0
,
0
,
91
,
41
,
42
,
43
,
0
,
0
,
0
,
0
,
0
,
151
,
0
,
92
,
45
,
0
,
0
,
0
,
93
,
46
,
0
,
0
,
0
,
92
,
45
,
0
,
0
,
0
,
93
,
46
,
94
,
47
,
95
,
0
,
0
,
0
,
0
,
0
,
0
,
48
,
0
,
96
,
97
,
152
,
153
,
0
,
0
,
0
,
49
,
0
,
50
,
0
,
154
,
147
,
148
,
51
,
98
,
52
,
53
,
54
,
149
,
0
,
0
,
0
,
85
,
38
,
86
,
0
,
87
,
150
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
88
,
0
,
0
,
0
,
89
,
0
,
0
,
0
,
90
,
0
,
0
,
91
,
41
,
42
,
43
,
0
,
0
,
0
,
0
,
0
,
151
,
0
,
92
,
45
,
0
,
0
,
0
,
93
,
46
,
94
,
47
,
95
,
0
,
0
,
0
,
0
,
0
,
0
,
48
,
0
,
96
,
97
,
152
,
153
,
0
,
0
,
0
,
49
,
0
,
50
,
83
,
84
,
0
,
0
,
51
,
98
,
52
,
53
,
54
,
0
,
0
,
85
,
38
,
86
,
0
,
87
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
88
,
0
,
0
,
0
,
89
,
0
,
0
,
0
,
90
,
0
,
0
,
91
,
41
,
42
,
43
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
92
,
45
,
0
,
0
,
0
,
93
,
46
,
94
,
47
,
95
,
0
,
0
,
0
,
0
,
0
,
0
,
48
,
0
,
96
,
97
,
0
,
0
,
0
,
0
,
0
,
49
,
0
,
50
,
1
,
2
,
0
,
0
,
51
,
98
,
52
,
53
,
54
,
0
,
0
,
85
,
38
,
86
,
0
,
87
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
88
,
0
,
0
,
0
,
89
,
0
,
0
,
0
,
90
,
0
,
0
,
91
,
41
,
42
,
43
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
92
,
45
,
0
,
0
,
0
,
93
,
46
,
94
,
47
,
95
,
0
,
0
,
0
,
0
,
0
,
0
,
48
,
0
,
96
,
97
,
0
,
0
,
0
,
0
,
0
,
49
,
0
,
50
,
0
,
0
,
0
,
0
,
51
,
98
,
52
,
53
,
54
0
,
96
,
97
,
0
,
0
,
0
,
0
,
0
,
49
,
0
,
50
,
1
,
2
,
0
,
0
,
51
,
98
,
52
,
53
,
54
,
0
,
0
,
85
,
38
,
86
,
0
,
87
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
88
,
0
,
0
,
0
,
89
,
0
,
0
,
0
,
90
,
0
,
0
,
91
,
41
,
42
,
43
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
92
,
45
,
0
,
0
,
0
,
93
,
46
,
94
,
47
,
95
,
0
,
0
,
0
,
0
,
0
,
0
,
48
,
0
,
96
,
97
,
0
,
0
,
0
,
0
,
0
,
49
,
0
,
50
,
0
,
0
,
0
,
0
,
51
,
98
,
52
,
53
,
54
};
static
const
short
yycheck
[]
=
{
7
,
82
,
82
,
121
,
170
,
153
,
13
,
155
,
194
,
136
,
198
,
28
,
64
,
65
,
8
,
135
,
64
,
65
,
8
,
8
,
8
,
8
,
9
,
10
,
46
,
8
,
4
,
226
,
11
,
12
,
37
,
0
,
103
,
40
,
3
,
13
,
14
,
44
,
15
,
19
,
30
,
8
,
13
,
14
,
11
,
12
,
8
,
9
,
33
,
56
,
17
,
99
,
317
,
318
,
8
,
9
,
10
,
8
,
9
,
371
,
8
,
373
,
33
,
328
,
263
,
80
,
80
,
74
,
37
,
8
,
12
,
40
,
11
,
12
,
273
,
44
,
320
,
6
,
20
,
8
,
9
,
10
,
209
,
9
,
69
,
289
,
108
,
56
,
103
,
103
,
105
,
105
,
69
,
34
,
338
,
75
,
73
,
114
,
69
,
41
,
304
,
43
,
105
,
110
,
303
,
74
,
37
,
46
,
115
,
89
,
52
,
57
,
102
,
102
,
194
,
102
,
45
,
124
,
245
,
167
,
114
,
248
,
242
,
111
,
107
,
56
,
104
,
41
,
294
,
136
,
99
,
60
,
212
,
104
,
322
,
80
,
254
,
108
,
52
,
3
,
107
,
110
,
104
,
114
,
84
,
114
,
115
,
199
,
102
,
4
,
104
,
84
,
121
,
104
,
102
,
124
,
103
,
86
,
13
,
14
,
105
,
168
,
169
,
101
,
111
,
53
,
135
,
136
,
84
,
97
,
98
,
99
,
100
,
21
,
112
,
8
,
9
,
10
,
11
,
12
,
108
,
261
,
6
,
104
,
8
,
9
,
10
,
108
,
106
,
269
,
12
,
198
,
8
,
320
,
201
,
11
,
12
,
104
,
167
,
206
,
169
,
108
,
209
,
6
,
211
,
8
,
9
,
10
,
11
,
12
,
337
,
338
,
104
,
104
,
104
,
401
,
108
,
108
,
108
,
104
,
39
,
45
,
104
,
108
,
390
,
411
,
108
,
6
,
107
,
8
,
9
,
10
,
11
,
12
,
382
,
103
,
60
,
244
,
245
,
11
,
12
,
248
,
45
,
46
,
245
,
325
,
103
,
248
,
111
,
256
,
331
,
107
,
108
,
371
,
335
,
373
,
225
,
71
,
61
,
51
,
299
,
300
,
86
,
302
,
81
,
272
,
45
,
46
,
275
,
11
,
12
,
13
,
14
,
13
,
14
,
81
,
245
,
80
,
3
,
248
,
11
,
12
,
61
,
86
,
81
,
254
,
97
,
98
,
99
,
100
,
111
,
3
,
95
,
9
,
104
,
104
,
103
,
109
,
35
,
102
,
103
,
80
,
105
,
103
,
109
,
103
,
68
,
86
,
103
,
103
,
103
,
3
,
8
,
320
,
115
,
322
,
95
,
25
,
109
,
105
,
327
,
111
,
111
,
68
,
103
,
105
,
105
,
68
,
30
,
114
,
337
,
338
,
108
,
340
,
104
,
3
,
96
,
105
,
345
,
103
,
4
,
95
,
88
,
11
,
12
,
110
,
68
,
104
,
355
,
108
,
106
,
320
,
104
,
103
,
22
,
23
,
24
,
105
,
26
,
112
,
5
,
6
,
7
,
8
,
9
,
10
,
11
,
12
,
36
,
338
,
104
,
101
,
40
,
106
,
113
,
4
,
44
,
384
,
82
,
47
,
48
,
49
,
50
,
106
,
102
,
106
,
112
,
106
,
103
,
396
,
58
,
59
,
399
,
106
,
108
,
63
,
64
,
65
,
66
,
67
,
45
,
106
,
371
,
0
,
373
,
111
,
74
,
0
,
76
,
77
,
139
,
3
,
13
,
26
,
56
,
83
,
74
,
85
,
63
,
110
,
115
,
65
,
90
,
91
,
92
,
93
,
94
,
8
,
294
,
167
,
11
,
12
,
340
,
206
,
327
,
103
,
322
,
411
,
251
,
247
,
242
,
86
,
23
,
396
,
388
,
233
,
275
,
384
,
337
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
38
,
103
,
-
1
,
-
1
,
42
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
48
,
49
,
50
,
-
1
,
-
1
,
-
1
,
54
,
-
1
,
-
1
,
-
1
,
-
1
,
59
,
-
1
,
-
1
,
-
1
,
-
1
,
64
,
-
1
,
66
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
74
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
83
,
-
1
,
85
,
-
1
,
-
1
,
11
,
12
,
90
,
-
1
,
92
,
93
,
94
,
18
,
-
1
,
-
1
,
-
1
,
22
,
23
,
24
,
-
1
,
26
,
27
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
82
,
121
,
153
,
82
,
155
,
13
,
170
,
194
,
198
,
136
,
64
,
65
,
135
,
4
,
8
,
8
,
15
,
13
,
14
,
28
,
64
,
65
,
13
,
14
,
19
,
227
,
291
,
0
,
103
,
37
,
3
,
8
,
40
,
8
,
11
,
12
,
44
,
33
,
105
,
8
,
17
,
306
,
11
,
12
,
46
,
8
,
9
,
10
,
56
,
8
,
8
,
9
,
10
,
8
,
9
,
99
,
8
,
9
,
41
,
8
,
103
,
80
,
264
,
33
,
37
,
9
,
74
,
40
,
111
,
52
,
69
,
44
,
274
,
69
,
73
,
6
,
37
,
8
,
9
,
10
,
75
,
30
,
209
,
56
,
103
,
6
,
105
,
8
,
9
,
10
,
11
,
12
,
34
,
8
,
89
,
56
,
11
,
12
,
101
,
69
,
104
,
74
,
110
,
305
,
108
,
114
,
108
,
115
,
104
,
112
,
31
,
57
,
108
,
104
,
45
,
194
,
124
,
111
,
114
,
246
,
243
,
114
,
249
,
167
,
45
,
46
,
99
,
102
,
136
,
60
,
107
,
46
,
296
,
212
,
324
,
255
,
322
,
110
,
107
,
102
,
61
,
114
,
115
,
102
,
102
,
199
,
104
,
80
,
121
,
104
,
80
,
124
,
104
,
102
,
340
,
86
,
319
,
320
,
84
,
80
,
168
,
169
,
135
,
136
,
104
,
86
,
84
,
330
,
108
,
104
,
103
,
53
,
105
,
108
,
95
,
105
,
4
,
97
,
98
,
99
,
100
,
102
,
103
,
262
,
105
,
13
,
14
,
84
,
108
,
246
,
198
,
270
,
249
,
201
,
167
,
322
,
169
,
3
,
206
,
301
,
302
,
209
,
304
,
211
,
5
,
6
,
7
,
8
,
9
,
10
,
11
,
12
,
339
,
340
,
8
,
9
,
10
,
11
,
12
,
406
,
6
,
106
,
8
,
9
,
10
,
11
,
12
,
104
,
21
,
416
,
394
,
108
,
12
,
12
,
374
,
386
,
376
,
245
,
246
,
8
,
20
,
249
,
11
,
12
,
45
,
31
,
104
,
39
,
327
,
257
,
108
,
333
,
107
,
226
,
374
,
337
,
376
,
11
,
12
,
45
,
46
,
41
,
63
,
43
,
103
,
273
,
104
,
104
,
276
,
103
,
108
,
108
,
52
,
246
,
81
,
61
,
249
,
11
,
12
,
13
,
14
,
111
,
255
,
81
,
6
,
86
,
8
,
9
,
10
,
97
,
98
,
99
,
100
,
71
,
80
,
107
,
108
,
13
,
14
,
51
,
86
,
3
,
103
,
11
,
12
,
81
,
111
,
3
,
104
,
95
,
109
,
9
,
109
,
104
,
322
,
103
,
324
,
103
,
103
,
105
,
103
,
329
,
35
,
45
,
68
,
3
,
103
,
8
,
103
,
103
,
111
,
339
,
340
,
115
,
342
,
25
,
109
,
105
,
60
,
111
,
348
,
68
,
105
,
68
,
114
,
25
,
30
,
104
,
108
,
322
,
358
,
96
,
105
,
3
,
103
,
4
,
95
,
88
,
68
,
110
,
108
,
11
,
12
,
104
,
86
,
103
,
106
,
340
,
104
,
112
,
105
,
101
,
22
,
23
,
24
,
103
,
26
,
106
,
104
,
4
,
388
,
113
,
82
,
106
,
102
,
106
,
36
,
106
,
112
,
103
,
40
,
108
,
0
,
401
,
44
,
106
,
404
,
47
,
48
,
49
,
50
,
374
,
106
,
376
,
111
,
0
,
3
,
13
,
58
,
59
,
26
,
56
,
74
,
63
,
64
,
65
,
66
,
67
,
115
,
139
,
296
,
110
,
65
,
342
,
74
,
167
,
76
,
77
,
329
,
324
,
252
,
248
,
416
,
83
,
8
,
85
,
381
,
11
,
12
,
206
,
90
,
91
,
92
,
93
,
94
,
234
,
339
,
401
,
243
,
23
,
388
,
392
,
276
,
103
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
38
,
-
1
,
-
1
,
-
1
,
42
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
48
,
49
,
50
,
-
1
,
-
1
,
-
1
,
54
,
-
1
,
-
1
,
-
1
,
-
1
,
59
,
-
1
,
-
1
,
-
1
,
-
1
,
64
,
-
1
,
66
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
74
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
83
,
-
1
,
85
,
-
1
,
-
1
,
11
,
12
,
90
,
-
1
,
92
,
93
,
94
,
18
,
-
1
,
-
1
,
-
1
,
22
,
23
,
24
,
-
1
,
26
,
27
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
36
,
-
1
,
-
1
,
-
1
,
40
,
-
1
,
-
1
,
-
1
,
44
,
-
1
,
-
1
,
47
,
48
,
49
,
50
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
56
,
-
1
,
58
,
59
,
-
1
,
-
1
,
-
1
,
63
,
64
,
65
,
66
,
67
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
74
,
-
1
,
76
,
77
,
78
,
79
,
-
1
,
-
1
,
-
1
,
83
,
-
1
,
85
,
-
1
,
87
,
11
,
12
,
90
,
91
,
92
,
93
,
94
,
18
,
-
1
,
-
1
,
-
1
,
22
,
23
,
24
,
-
1
,
26
,
27
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
36
,
-
1
,
-
1
,
-
1
,
40
,
-
1
,
-
1
,
-
1
,
44
,
-
1
,
-
1
,
47
,
48
,
49
,
50
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
56
,
-
1
,
58
,
59
,
-
1
,
-
1
,
-
1
,
63
,
64
,
65
,
66
,
67
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
74
,
-
1
,
76
,
77
,
78
,
79
,
-
1
,
-
1
,
-
1
,
83
,
-
1
,
85
,
11
,
12
,
-
1
,
-
1
,
90
,
91
,
92
,
93
,
94
,
-
1
,
-
1
,
22
,
23
,
24
,
-
1
,
26
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
36
,
-
1
,
-
1
,
-
1
,
40
,
-
1
,
-
1
,
-
1
,
44
,
-
1
,
-
1
,
47
,
48
,
49
,
50
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
56
,
-
1
,
58
,
59
,
-
1
,
-
1
,
-
1
,
63
,
64
,
-
1
,
-
1
,
-
1
,
58
,
59
,
-
1
,
-
1
,
-
1
,
63
,
64
,
65
,
66
,
67
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
74
,
-
1
,
76
,
77
,
78
,
79
,
-
1
,
-
1
,
-
1
,
83
,
-
1
,
85
,
-
1
,
87
,
11
,
12
,
90
,
91
,
92
,
93
,
94
,
18
,
-
1
,
-
1
,
-
1
,
22
,
23
,
24
,
-
1
,
26
,
27
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
36
,
-
1
,
-
1
,
-
1
,
40
,
-
1
,
-
1
,
-
1
,
44
,
-
1
,
-
1
,
47
,
48
,
49
,
50
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
56
,
-
1
,
58
,
59
,
-
1
,
-
1
,
-
1
,
63
,
64
,
65
,
66
,
67
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
74
,
-
1
,
76
,
77
,
78
,
79
,
-
1
,
-
1
,
-
1
,
83
,
-
1
,
85
,
11
,
12
,
-
1
,
-
1
,
90
,
91
,
92
,
93
,
94
,
-
1
,
-
1
,
22
,
23
,
24
,
-
1
,
26
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
36
,
-
1
,
-
1
,
-
1
,
40
,
-
1
,
-
1
,
-
1
,
44
,
-
1
,
-
1
,
47
,
48
,
49
,
50
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
58
,
59
,
-
1
,
-
1
,
-
1
,
63
,
64
,
65
,
66
,
67
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
74
,
-
1
,
76
,
77
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
83
,
-
1
,
85
,
11
,
12
,
-
1
,
-
1
,
90
,
91
,
92
,
93
,
94
,
-
1
,
-
1
,
22
,
23
,
24
,
-
1
,
26
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
36
,
-
1
,
-
1
,
-
1
,
40
,
-
1
,
-
1
,
-
1
,
44
,
-
1
,
-
1
,
47
,
48
,
49
,
50
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
58
,
59
,
-
1
,
-
1
,
-
1
,
63
,
64
,
65
,
66
,
67
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
74
,
-
1
,
76
,
77
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
83
,
-
1
,
85
,
-
1
,
-
1
,
-
1
,
-
1
,
90
,
91
,
92
,
93
,
94
-
1
,
76
,
77
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
83
,
-
1
,
85
,
11
,
12
,
-
1
,
-
1
,
90
,
91
,
92
,
93
,
94
,
-
1
,
-
1
,
22
,
23
,
24
,
-
1
,
26
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
36
,
-
1
,
-
1
,
-
1
,
40
,
-
1
,
-
1
,
-
1
,
44
,
-
1
,
-
1
,
47
,
48
,
49
,
50
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
58
,
59
,
-
1
,
-
1
,
-
1
,
63
,
64
,
65
,
66
,
67
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
74
,
-
1
,
76
,
77
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
83
,
-
1
,
85
,
-
1
,
-
1
,
-
1
,
-
1
,
90
,
91
,
92
,
93
,
94
};
/* -*-C-*- Note some compilers choke on comments on `#line' lines. */
#line 3 "/usr/share/bison.simple"
...
...
@@ -2563,18 +2571,17 @@ case 143:
case
144
:
#line 1390 "asn1p_y.y"
{
yyval
.
tv_opaque
.
len
=
yyvsp
[
0
].
tv_opaque
.
len
+
2
;
yyval
.
tv_opaque
.
len
=
yyvsp
[
0
].
tv_opaque
.
len
+
1
;
yyval
.
tv_opaque
.
buf
=
malloc
(
yyval
.
tv_opaque
.
len
+
1
);
checkmem
(
yyval
.
tv_opaque
.
buf
);
yyval
.
tv_opaque
.
buf
[
0
]
=
'{'
;
yyval
.
tv_opaque
.
buf
[
1
]
=
' '
;
memcpy
(
yyval
.
tv_opaque
.
buf
+
2
,
yyvsp
[
0
].
tv_opaque
.
buf
,
yyvsp
[
0
].
tv_opaque
.
len
);
memcpy
(
yyval
.
tv_opaque
.
buf
+
1
,
yyvsp
[
0
].
tv_opaque
.
buf
,
yyvsp
[
0
].
tv_opaque
.
len
);
yyval
.
tv_opaque
.
buf
[
yyval
.
tv_opaque
.
len
]
=
'\0'
;
free
(
yyvsp
[
0
].
tv_opaque
.
buf
);
;
break
;}
case
145
:
#line 1
400
"asn1p_y.y"
#line 1
399
"asn1p_y.y"
{
int
newsize
=
yyvsp
[
-
1
].
tv_opaque
.
len
+
yyvsp
[
0
].
tv_opaque
.
len
;
char
*
p
=
malloc
(
newsize
+
1
);
...
...
@@ -2589,71 +2596,71 @@ case 145:
;
break
;}
case
146
:
#line 141
5
"asn1p_y.y"
#line 141
4
"asn1p_y.y"
{
yyval
.
a_type
=
ASN_BASIC_BOOLEAN
;
;
break
;}
case
147
:
#line 141
6
"asn1p_y.y"
#line 141
5
"asn1p_y.y"
{
yyval
.
a_type
=
ASN_BASIC_NULL
;
;
break
;}
case
148
:
#line 141
7
"asn1p_y.y"
#line 141
6
"asn1p_y.y"
{
yyval
.
a_type
=
ASN_BASIC_REAL
;
;
break
;}
case
149
:
#line 141
8
"asn1p_y.y"
#line 141
7
"asn1p_y.y"
{
yyval
.
a_type
=
yyvsp
[
0
].
a_type
;
;
break
;}
case
150
:
#line 141
9
"asn1p_y.y"
#line 141
8
"asn1p_y.y"
{
yyval
.
a_type
=
ASN_BASIC_OCTET_STRING
;
;
break
;}
case
151
:
#line 14
20
"asn1p_y.y"
#line 14
19
"asn1p_y.y"
{
yyval
.
a_type
=
ASN_BASIC_OBJECT_IDENTIFIER
;
;
break
;}
case
152
:
#line 142
1
"asn1p_y.y"
#line 142
0
"asn1p_y.y"
{
yyval
.
a_type
=
ASN_BASIC_RELATIVE_OID
;
;
break
;}
case
153
:
#line 142
2
"asn1p_y.y"
#line 142
1
"asn1p_y.y"
{
yyval
.
a_type
=
ASN_BASIC_EXTERNAL
;
;
break
;}
case
154
:
#line 142
3
"asn1p_y.y"
#line 142
2
"asn1p_y.y"
{
yyval
.
a_type
=
ASN_BASIC_EMBEDDED_PDV
;
;
break
;}
case
155
:
#line 142
4
"asn1p_y.y"
#line 142
3
"asn1p_y.y"
{
yyval
.
a_type
=
ASN_BASIC_CHARACTER_STRING
;
;
break
;}
case
156
:
#line 142
5
"asn1p_y.y"
#line 142
4
"asn1p_y.y"
{
yyval
.
a_type
=
ASN_BASIC_UTCTime
;
;
break
;}
case
157
:
#line 142
6
"asn1p_y.y"
#line 142
5
"asn1p_y.y"
{
yyval
.
a_type
=
ASN_BASIC_GeneralizedTime
;
;
break
;}
case
158
:
#line 142
7
"asn1p_y.y"
#line 142
6
"asn1p_y.y"
{
yyval
.
a_type
=
yyvsp
[
0
].
a_type
;
;
break
;}
case
159
:
#line 143
4
"asn1p_y.y"
#line 143
3
"asn1p_y.y"
{
yyval
.
a_type
=
ASN_BASIC_INTEGER
;
;
break
;}
case
160
:
#line 143
5
"asn1p_y.y"
#line 143
4
"asn1p_y.y"
{
yyval
.
a_type
=
ASN_BASIC_ENUMERATED
;
;
break
;}
case
161
:
#line 143
6
"asn1p_y.y"
#line 143
5
"asn1p_y.y"
{
yyval
.
a_type
=
ASN_BASIC_BIT_STRING
;
;
break
;}
case
162
:
#line 14
40
"asn1p_y.y"
#line 14
39
"asn1p_y.y"
{
yyval
.
a_expr
=
asn1p_expr_new
(
yylineno
);
checkmem
(
yyval
.
a_expr
);
...
...
@@ -2662,7 +2669,7 @@ case 162:
;
break
;}
case
163
:
#line 144
6
"asn1p_y.y"
#line 144
5
"asn1p_y.y"
{
if
(
yyvsp
[
0
].
a_expr
)
{
yyval
.
a_expr
=
yyvsp
[
0
].
a_expr
;
...
...
@@ -2675,91 +2682,91 @@ case 163:
;
break
;}
case
164
:
#line 145
9
"asn1p_y.y"
#line 145
8
"asn1p_y.y"
{
yyval
.
a_type
=
ASN_STRING_BMPString
;
;
break
;}
case
165
:
#line 14
60
"asn1p_y.y"
#line 14
59
"asn1p_y.y"
{
yyval
.
a_type
=
ASN_STRING_GeneralString
;
fprintf
(
stderr
,
"WARNING: GeneralString is not fully supported
\n
"
);
;
break
;}
case
166
:
#line 146
4
"asn1p_y.y"
#line 146
3
"asn1p_y.y"
{
yyval
.
a_type
=
ASN_STRING_GraphicString
;
fprintf
(
stderr
,
"WARNING: GraphicString is not fully supported
\n
"
);
;
break
;}
case
167
:
#line 146
8
"asn1p_y.y"
#line 146
7
"asn1p_y.y"
{
yyval
.
a_type
=
ASN_STRING_IA5String
;
;
break
;}
case
168
:
#line 146
9
"asn1p_y.y"
#line 146
8
"asn1p_y.y"
{
yyval
.
a_type
=
ASN_STRING_ISO646String
;
;
break
;}
case
169
:
#line 14
70
"asn1p_y.y"
#line 14
69
"asn1p_y.y"
{
yyval
.
a_type
=
ASN_STRING_NumericString
;
;
break
;}
case
170
:
#line 147
1
"asn1p_y.y"
#line 147
0
"asn1p_y.y"
{
yyval
.
a_type
=
ASN_STRING_PrintableString
;
;
break
;}
case
171
:
#line 147
2
"asn1p_y.y"
#line 147
1
"asn1p_y.y"
{
yyval
.
a_type
=
ASN_STRING_T61String
;
fprintf
(
stderr
,
"WARNING: T61String is not fully supported
\n
"
);
;
break
;}
case
172
:
#line 147
6
"asn1p_y.y"
#line 147
5
"asn1p_y.y"
{
yyval
.
a_type
=
ASN_STRING_TeletexString
;
;
break
;}
case
173
:
#line 147
7
"asn1p_y.y"
#line 147
6
"asn1p_y.y"
{
yyval
.
a_type
=
ASN_STRING_UniversalString
;
;
break
;}
case
174
:
#line 147
8
"asn1p_y.y"
#line 147
7
"asn1p_y.y"
{
yyval
.
a_type
=
ASN_STRING_UTF8String
;
;
break
;}
case
175
:
#line 147
9
"asn1p_y.y"
#line 147
8
"asn1p_y.y"
{
yyval
.
a_type
=
ASN_STRING_VideotexString
;
fprintf
(
stderr
,
"WARNING: VideotexString is not fully supported
\n
"
);
;
break
;}
case
176
:
#line 148
3
"asn1p_y.y"
#line 148
2
"asn1p_y.y"
{
yyval
.
a_type
=
ASN_STRING_VisibleString
;
;
break
;}
case
177
:
#line 148
4
"asn1p_y.y"
#line 148
3
"asn1p_y.y"
{
yyval
.
a_type
=
ASN_STRING_ObjectDescriptor
;
;
break
;}
case
183
:
#line 149
6
"asn1p_y.y"
#line 149
5
"asn1p_y.y"
{
yyval
.
a_constr
=
0
;
;
break
;}
case
184
:
#line 149
7
"asn1p_y.y"
#line 149
6
"asn1p_y.y"
{
yyval
.
a_constr
=
yyvsp
[
0
].
a_constr
;
;
break
;}
case
185
:
#line 150
3
"asn1p_y.y"
#line 150
2
"asn1p_y.y"
{
CONSTRAINT_INSERT
(
yyval
.
a_constr
,
ACT_CA_SET
,
yyvsp
[
0
].
a_constr
,
0
);
;
break
;}
case
186
:
#line 150
6
"asn1p_y.y"
#line 150
5
"asn1p_y.y"
{
/*
* This is a special case, for compatibility purposes.
...
...
@@ -2769,25 +2776,25 @@ case 186:
;
break
;}
case
187
:
#line 151
6
"asn1p_y.y"
#line 151
5
"asn1p_y.y"
{
yyval
.
a_constr
=
yyvsp
[
-
1
].
a_constr
;
;
break
;}
case
188
:
#line 151
9
"asn1p_y.y"
#line 151
8
"asn1p_y.y"
{
CONSTRAINT_INSERT
(
yyval
.
a_constr
,
ACT_CA_SET
,
yyvsp
[
-
3
].
a_constr
,
yyvsp
[
-
1
].
a_constr
);
;
break
;}
case
189
:
#line 152
5
"asn1p_y.y"
#line 152
4
"asn1p_y.y"
{
yyval
.
a_constr
=
yyvsp
[
0
].
a_constr
;
;
break
;}
case
190
:
#line 152
8
"asn1p_y.y"
#line 152
7
"asn1p_y.y"
{
asn1p_constraint_t
*
ct
;
ct
=
asn1p_constraint_new
(
yylineno
);
...
...
@@ -2796,7 +2803,7 @@ case 190:
;
break
;}
case
191
:
#line 153
4
"asn1p_y.y"
#line 153
3
"asn1p_y.y"
{
asn1p_constraint_t
*
ct
;
ct
=
asn1p_constraint_new
(
yylineno
);
...
...
@@ -2807,31 +2814,31 @@ case 191:
;
break
;}
case
192
:
#line 154
5
"asn1p_y.y"
#line 154
4
"asn1p_y.y"
{
yyval
.
a_constr
=
yyvsp
[
0
].
a_constr
;
;
break
;}
case
193
:
#line 154
8
"asn1p_y.y"
#line 154
7
"asn1p_y.y"
{
CONSTRAINT_INSERT
(
yyval
.
a_constr
,
ACT_CA_UNI
,
yyvsp
[
-
2
].
a_constr
,
yyvsp
[
0
].
a_constr
);
;
break
;}
case
194
:
#line 155
1
"asn1p_y.y"
#line 155
0
"asn1p_y.y"
{
CONSTRAINT_INSERT
(
yyval
.
a_constr
,
ACT_CA_INT
,
yyvsp
[
-
2
].
a_constr
,
yyvsp
[
0
].
a_constr
);
;
break
;}
case
195
:
#line 155
4
"asn1p_y.y"
#line 155
3
"asn1p_y.y"
{
CONSTRAINT_INSERT
(
yyval
.
a_constr
,
ACT_CA_EXC
,
yyvsp
[
-
2
].
a_constr
,
yyvsp
[
0
].
a_constr
);
;
break
;}
case
196
:
#line 15
60
"asn1p_y.y"
#line 15
59
"asn1p_y.y"
{
int
ret
;
yyval
.
a_constr
=
asn1p_constraint_new
(
yylineno
);
...
...
@@ -2842,7 +2849,7 @@ case 196:
;
break
;}
case
197
:
#line 156
8
"asn1p_y.y"
#line 156
7
"asn1p_y.y"
{
int
ret
;
yyval
.
a_constr
=
asn1p_constraint_new
(
yylineno
);
...
...
@@ -2853,7 +2860,7 @@ case 197:
;
break
;}
case
198
:
#line 157
6
"asn1p_y.y"
#line 157
5
"asn1p_y.y"
{
yyval
.
a_constr
=
asn1p_constraint_new
(
yylineno
);
checkmem
(
yyval
.
a_constr
);
...
...
@@ -2862,7 +2869,7 @@ case 198:
;
break
;}
case
199
:
#line 158
2
"asn1p_y.y"
#line 158
1
"asn1p_y.y"
{
yyval
.
a_constr
=
asn1p_constraint_new
(
yylineno
);
checkmem
(
yyval
.
a_constr
);
...
...
@@ -2871,7 +2878,7 @@ case 199:
;
break
;}
case
200
:
#line 158
8
"asn1p_y.y"
#line 158
7
"asn1p_y.y"
{
yyval
.
a_constr
=
asn1p_constraint_new
(
yylineno
);
checkmem
(
yyval
.
a_constr
);
...
...
@@ -2881,7 +2888,7 @@ case 200:
;
break
;}
case
201
:
#line 159
5
"asn1p_y.y"
#line 159
4
"asn1p_y.y"
{
yyval
.
a_constr
=
asn1p_constraint_new
(
yylineno
);
checkmem
(
yyval
.
a_constr
);
...
...
@@ -2892,7 +2899,7 @@ case 201:
;
break
;}
case
202
:
#line 160
3
"asn1p_y.y"
#line 160
2
"asn1p_y.y"
{
yyval
.
a_constr
=
asn1p_constraint_new
(
yylineno
);
checkmem
(
yyval
.
a_constr
);
...
...
@@ -2903,7 +2910,7 @@ case 202:
;
break
;}
case
203
:
#line 161
1
"asn1p_y.y"
#line 161
0
"asn1p_y.y"
{
yyval
.
a_constr
=
asn1p_constraint_new
(
yylineno
);
checkmem
(
yyval
.
a_constr
);
...
...
@@ -2915,76 +2922,91 @@ case 203:
;
break
;}
case
204
:
#line 16
20
"asn1p_y.y"
#line 16
19
"asn1p_y.y"
{
yyval
.
a_constr
=
yyvsp
[
0
].
a_constr
;
;
break
;}
case
205
:
#line 162
3
"asn1p_y.y"
#line 162
2
"asn1p_y.y"
{
yyval
.
a_constr
=
yyvsp
[
0
].
a_constr
;
;
break
;}
case
206
:
#line 162
9
"asn1p_y.y"
{
yyval
.
a_ctype
=
ACT_EL_RANGE
;
;
#line 162
6
"asn1p_y.y"
{
asn1p_lexer_hack_push_opaque_state
()
;
;
break
;}
case
207
:
#line 1630 "asn1p_y.y"
{
yyval
.
a_ctype
=
ACT_EL_RLRANGE
;
;
#line 1626 "asn1p_y.y"
{
yyval
.
a_constr
=
asn1p_constraint_new
(
yylineno
);
checkmem
(
yyval
.
a_constr
);
yyval
.
a_constr
->
type
=
ACT_CT_CTDBY
;
yyval
.
a_constr
->
value
=
asn1p_value_frombuf
(
yyvsp
[
0
].
tv_opaque
.
buf
,
yyvsp
[
0
].
tv_opaque
.
len
,
0
);
checkmem
(
yyval
.
a_constr
->
value
);
yyval
.
a_constr
->
value
->
type
=
ATV_UNPARSED
;
;
break
;}
case
208
:
#line 163
1
"asn1p_y.y"
{
yyval
.
a_ctype
=
ACT_EL_
LL
RANGE
;
;
#line 163
7
"asn1p_y.y"
{
yyval
.
a_ctype
=
ACT_EL_RANGE
;
;
break
;}
case
209
:
#line 163
2
"asn1p_y.y"
{
yyval
.
a_ctype
=
ACT_EL_
U
LRANGE
;
;
#line 163
8
"asn1p_y.y"
{
yyval
.
a_ctype
=
ACT_EL_
R
LRANGE
;
;
break
;}
case
210
:
#line 1636 "asn1p_y.y"
#line 1639 "asn1p_y.y"
{
yyval
.
a_ctype
=
ACT_EL_LLRANGE
;
;
break
;}
case
211
:
#line 1640 "asn1p_y.y"
{
yyval
.
a_ctype
=
ACT_EL_ULRANGE
;
;
break
;}
case
212
:
#line 1644 "asn1p_y.y"
{
yyval
.
a_ctype
=
ACT_CT_SIZE
;
;
break
;}
case
21
1
:
#line 16
39
"asn1p_y.y"
case
21
3
:
#line 16
47
"asn1p_y.y"
{
yyval
.
a_ctype
=
ACT_CT_FROM
;
;
break
;}
case
21
2
:
#line 16
45
"asn1p_y.y"
case
21
4
:
#line 16
53
"asn1p_y.y"
{
yyval
.
a_value
=
asn1p_value_fromint
(
0
);
checkmem
(
yyval
.
a_value
);
yyval
.
a_value
->
type
=
ATV_FALSE
;
;
break
;}
case
21
3
:
#line 165
0
"asn1p_y.y"
case
21
5
:
#line 165
8
"asn1p_y.y"
{
yyval
.
a_value
=
asn1p_value_fromint
(
1
);
checkmem
(
yyval
.
a_value
);
yyval
.
a_value
->
type
=
ATV_TRUE
;
;
break
;}
case
21
4
:
#line 16
55
"asn1p_y.y"
case
21
6
:
#line 16
63
"asn1p_y.y"
{
yyval
.
a_value
=
yyvsp
[
0
].
a_value
;
;
break
;}
case
21
5
:
#line 16
58
"asn1p_y.y"
case
21
7
:
#line 16
66
"asn1p_y.y"
{
yyval
.
a_value
=
asn1p_value_frombuf
(
yyvsp
[
0
].
tv_opaque
.
buf
,
yyvsp
[
0
].
tv_opaque
.
len
,
0
);
checkmem
(
yyval
.
a_value
);
;
break
;}
case
21
6
:
#line 16
62
"asn1p_y.y"
case
21
8
:
#line 16
70
"asn1p_y.y"
{
asn1p_ref_t
*
ref
;
int
ret
;
...
...
@@ -2997,8 +3019,8 @@ case 216:
free
(
yyvsp
[
0
].
tv_str
);
;
break
;}
case
21
7
:
#line 16
76
"asn1p_y.y"
case
21
9
:
#line 16
84
"asn1p_y.y"
{
asn1p_ref_t
*
ref
;
int
ret
;
...
...
@@ -3011,34 +3033,34 @@ case 217:
free
(
yyvsp
[
0
].
tv_str
);
;
break
;}
case
2
18
:
#line 169
0
"asn1p_y.y"
case
2
20
:
#line 169
8
"asn1p_y.y"
{
CONSTRAINT_INSERT
(
yyval
.
a_constr
,
ACT_CT_WCOMPS
,
yyvsp
[
-
1
].
a_constr
,
0
);
;
break
;}
case
2
19
:
#line 1
696
"asn1p_y.y"
case
2
21
:
#line 1
704
"asn1p_y.y"
{
yyval
.
a_constr
=
yyvsp
[
0
].
a_constr
;
;
break
;}
case
22
0
:
#line 1
699
"asn1p_y.y"
case
22
2
:
#line 1
707
"asn1p_y.y"
{
CONSTRAINT_INSERT
(
yyval
.
a_constr
,
ACT_CT_WCOMPS
,
yyvsp
[
-
2
].
a_constr
,
yyvsp
[
0
].
a_constr
);
;
break
;}
case
22
1
:
#line 17
05
"asn1p_y.y"
case
22
3
:
#line 17
13
"asn1p_y.y"
{
yyval
.
a_constr
=
asn1p_constraint_new
(
yylineno
);
checkmem
(
yyval
.
a_constr
);
yyval
.
a_constr
->
type
=
ACT_EL_EXT
;
;
break
;}
case
22
2
:
#line 171
0
"asn1p_y.y"
case
22
4
:
#line 171
8
"asn1p_y.y"
{
yyval
.
a_constr
=
asn1p_constraint_new
(
yylineno
);
checkmem
(
yyval
.
a_constr
);
...
...
@@ -3047,46 +3069,46 @@ case 222:
yyval
.
a_constr
->
presence
=
yyvsp
[
0
].
a_pres
;
;
break
;}
case
22
3
:
#line 17
23
"asn1p_y.y"
case
22
5
:
#line 17
31
"asn1p_y.y"
{
yyval
.
a_pres
=
ACPRES_DEFAULT
;
;
break
;}
case
22
4
:
#line 17
24
"asn1p_y.y"
case
22
6
:
#line 17
32
"asn1p_y.y"
{
yyval
.
a_pres
=
yyvsp
[
0
].
a_pres
;
;
break
;}
case
22
5
:
#line 17
28
"asn1p_y.y"
case
22
7
:
#line 17
36
"asn1p_y.y"
{
yyval
.
a_pres
=
ACPRES_PRESENT
;
;
break
;}
case
22
6
:
#line 173
1
"asn1p_y.y"
case
22
8
:
#line 173
9
"asn1p_y.y"
{
yyval
.
a_pres
=
ACPRES_ABSENT
;
;
break
;}
case
22
7
:
#line 17
34
"asn1p_y.y"
case
22
9
:
#line 17
42
"asn1p_y.y"
{
yyval
.
a_pres
=
ACPRES_OPTIONAL
;
;
break
;}
case
2
28
:
#line 174
0
"asn1p_y.y"
case
2
30
:
#line 174
8
"asn1p_y.y"
{
yyval
.
a_constr
=
yyvsp
[
0
].
a_constr
;
;
break
;}
case
2
29
:
#line 17
43
"asn1p_y.y"
case
2
31
:
#line 17
51
"asn1p_y.y"
{
yyval
.
a_constr
=
yyvsp
[
0
].
a_constr
;
;
break
;}
case
23
0
:
#line 17
52
"asn1p_y.y"
case
23
2
:
#line 17
60
"asn1p_y.y"
{
asn1p_ref_t
*
ref
=
asn1p_ref_new
(
yylineno
);
asn1p_constraint_t
*
ct
;
...
...
@@ -3100,14 +3122,14 @@ case 230:
CONSTRAINT_INSERT
(
yyval
.
a_constr
,
ACT_CA_CRC
,
ct
,
0
);
;
break
;}
case
23
1
:
#line 17
67
"asn1p_y.y"
case
23
3
:
#line 17
75
"asn1p_y.y"
{
CONSTRAINT_INSERT
(
yyval
.
a_constr
,
ACT_CA_CRC
,
yyvsp
[
-
3
].
a_constr
,
yyvsp
[
-
1
].
a_constr
);
;
break
;}
case
23
2
:
#line 17
73
"asn1p_y.y"
case
23
4
:
#line 17
81
"asn1p_y.y"
{
yyval
.
a_constr
=
asn1p_constraint_new
(
yylineno
);
checkmem
(
yyval
.
a_constr
);
...
...
@@ -3115,8 +3137,8 @@ case 232:
yyval
.
a_constr
->
value
=
asn1p_value_fromref
(
yyvsp
[
0
].
a_ref
,
0
);
;
break
;}
case
23
3
:
#line 17
79
"asn1p_y.y"
case
23
5
:
#line 17
87
"asn1p_y.y"
{
asn1p_constraint_t
*
ct
;
ct
=
asn1p_constraint_new
(
yylineno
);
...
...
@@ -3126,8 +3148,8 @@ case 233:
CONSTRAINT_INSERT
(
yyval
.
a_constr
,
ACT_CA_CSV
,
yyvsp
[
-
2
].
a_constr
,
ct
);
;
break
;}
case
23
4
:
#line 1
793
"asn1p_y.y"
case
23
6
:
#line 1
801
"asn1p_y.y"
{
char
*
p
=
malloc
(
strlen
(
yyvsp
[
0
].
tv_str
)
+
2
);
int
ret
;
...
...
@@ -3140,8 +3162,8 @@ case 234:
free
(
yyvsp
[
0
].
tv_str
);
;
break
;}
case
23
5
:
#line 18
04
"asn1p_y.y"
case
23
7
:
#line 18
12
"asn1p_y.y"
{
char
*
p
=
malloc
(
strlen
(
yyvsp
[
0
].
tv_str
)
+
3
);
int
ret
;
...
...
@@ -3155,14 +3177,14 @@ case 235:
free
(
yyvsp
[
0
].
tv_str
);
;
break
;}
case
23
6
:
#line 182
0
"asn1p_y.y"
case
23
8
:
#line 182
8
"asn1p_y.y"
{
yyval
.
tv_str
=
yyvsp
[
0
].
tv_str
;
;
break
;}
case
23
7
:
#line 18
23
"asn1p_y.y"
case
23
9
:
#line 18
31
"asn1p_y.y"
{
int
l1
=
strlen
(
yyvsp
[
-
2
].
tv_str
);
int
l3
=
strlen
(
yyvsp
[
0
].
tv_str
);
...
...
@@ -3173,61 +3195,61 @@ case 237:
yyval
.
tv_str
[
l1
+
1
+
l3
]
=
'\0'
;
;
break
;}
case
2
38
:
#line 184
1
"asn1p_y.y"
case
2
40
:
#line 184
9
"asn1p_y.y"
{
yyval
.
a_marker
.
flags
=
EM_NOMARK
;
yyval
.
a_marker
.
default_value
=
0
;
;
break
;}
case
2
39
:
#line 18
45
"asn1p_y.y"
case
2
41
:
#line 18
53
"asn1p_y.y"
{
yyval
.
a_marker
=
yyvsp
[
0
].
a_marker
;
;
break
;}
case
24
0
:
#line 18
49
"asn1p_y.y"
case
24
2
:
#line 18
57
"asn1p_y.y"
{
yyval
.
a_marker
.
flags
=
EM_OPTIONAL
;
yyval
.
a_marker
.
default_value
=
0
;
;
break
;}
case
24
1
:
#line 18
53
"asn1p_y.y"
case
24
3
:
#line 18
61
"asn1p_y.y"
{
yyval
.
a_marker
.
flags
=
EM_DEFAULT
;
yyval
.
a_marker
.
default_value
=
yyvsp
[
0
].
a_value
;
;
break
;}
case
24
2
:
#line 18
76
"asn1p_y.y"
case
24
4
:
#line 18
84
"asn1p_y.y"
{
yyval
.
a_expr
=
asn1p_expr_new
(
yylineno
);
checkmem
(
yyval
.
a_expr
);
;
break
;}
case
24
3
:
#line 188
0
"asn1p_y.y"
case
24
5
:
#line 188
8
"asn1p_y.y"
{
yyval
.
a_expr
=
yyvsp
[
-
1
].
a_expr
;
;
break
;}
case
24
4
:
#line 18
86
"asn1p_y.y"
case
24
6
:
#line 18
94
"asn1p_y.y"
{
yyval
.
a_expr
=
asn1p_expr_new
(
yylineno
);
checkmem
(
yyval
.
a_expr
);
asn1p_expr_add
(
yyval
.
a_expr
,
yyvsp
[
0
].
a_expr
);
;
break
;}
case
24
5
:
#line 189
1
"asn1p_y.y"
case
24
7
:
#line 189
9
"asn1p_y.y"
{
yyval
.
a_expr
=
yyvsp
[
-
2
].
a_expr
;
asn1p_expr_add
(
yyval
.
a_expr
,
yyvsp
[
0
].
a_expr
);
;
break
;}
case
24
6
:
#line 1
898
"asn1p_y.y"
case
24
8
:
#line 1
906
"asn1p_y.y"
{
yyval
.
a_expr
=
asn1p_expr_new
(
yylineno
);
checkmem
(
yyval
.
a_expr
);
...
...
@@ -3236,8 +3258,8 @@ case 246:
yyval
.
a_expr
->
Identifier
=
yyvsp
[
0
].
tv_str
;
;
break
;}
case
24
7
:
#line 19
05
"asn1p_y.y"
case
24
9
:
#line 19
13
"asn1p_y.y"
{
yyval
.
a_expr
=
asn1p_expr_new
(
yylineno
);
checkmem
(
yyval
.
a_expr
);
...
...
@@ -3247,8 +3269,8 @@ case 247:
yyval
.
a_expr
->
value
=
yyvsp
[
-
1
].
a_value
;
;
break
;}
case
2
48
:
#line 19
13
"asn1p_y.y"
case
2
50
:
#line 19
21
"asn1p_y.y"
{
yyval
.
a_expr
=
asn1p_expr_new
(
yylineno
);
checkmem
(
yyval
.
a_expr
);
...
...
@@ -3258,8 +3280,8 @@ case 248:
yyval
.
a_expr
->
value
=
yyvsp
[
-
1
].
a_value
;
;
break
;}
case
2
49
:
#line 192
1
"asn1p_y.y"
case
2
51
:
#line 192
9
"asn1p_y.y"
{
yyval
.
a_expr
=
asn1p_expr_new
(
yylineno
);
checkmem
(
yyval
.
a_expr
);
...
...
@@ -3268,8 +3290,8 @@ case 249:
yyval
.
a_expr
->
value
=
yyvsp
[
0
].
a_value
;
;
break
;}
case
25
0
:
#line 19
28
"asn1p_y.y"
case
25
2
:
#line 19
36
"asn1p_y.y"
{
yyval
.
a_expr
=
asn1p_expr_new
(
yylineno
);
checkmem
(
yyval
.
a_expr
);
...
...
@@ -3279,103 +3301,103 @@ case 250:
yyval
.
a_expr
->
meta_type
=
AMT_VALUE
;
;
break
;}
case
25
1
:
#line 19
39
"asn1p_y.y"
case
25
3
:
#line 19
47
"asn1p_y.y"
{
yyval
.
a_value
=
asn1p_value_fromint
(
yyvsp
[
0
].
a_int
);
checkmem
(
yyval
.
a_value
);
;
break
;}
case
25
2
:
#line 19
43
"asn1p_y.y"
case
25
4
:
#line 19
51
"asn1p_y.y"
{
yyval
.
a_value
=
asn1p_value_fromint
(
yyvsp
[
0
].
a_int
);
checkmem
(
yyval
.
a_value
);
;
break
;}
case
25
3
:
#line 19
74
"asn1p_y.y"
case
25
5
:
#line 19
82
"asn1p_y.y"
{
memset
(
&
yyval
.
a_tag
,
0
,
sizeof
(
yyval
.
a_tag
));
;
break
;}
case
25
4
:
#line 19
75
"asn1p_y.y"
case
25
6
:
#line 19
83
"asn1p_y.y"
{
yyval
.
a_tag
=
yyvsp
[
0
].
a_tag
;
;
break
;}
case
25
5
:
#line 19
79
"asn1p_y.y"
case
25
7
:
#line 19
87
"asn1p_y.y"
{
yyval
.
a_tag
=
yyvsp
[
-
1
].
a_tag
;
yyval
.
a_tag
.
tag_mode
=
yyvsp
[
0
].
a_tag
.
tag_mode
;
;
break
;}
case
25
6
:
#line 19
86
"asn1p_y.y"
case
25
8
:
#line 19
94
"asn1p_y.y"
{
yyval
.
a_tag
=
yyvsp
[
-
2
].
a_tag
;
yyval
.
a_tag
.
tag_value
=
yyvsp
[
-
1
].
a_int
;
;
break
;}
case
25
7
:
#line
1992
"asn1p_y.y"
case
25
9
:
#line
2000
"asn1p_y.y"
{
yyval
.
a_tag
.
tag_class
=
TC_CONTEXT_SPECIFIC
;
;
break
;}
case
2
58
:
#line
1993
"asn1p_y.y"
case
2
60
:
#line
2001
"asn1p_y.y"
{
yyval
.
a_tag
.
tag_class
=
TC_UNIVERSAL
;
;
break
;}
case
2
59
:
#line
1994
"asn1p_y.y"
case
2
61
:
#line
2002
"asn1p_y.y"
{
yyval
.
a_tag
.
tag_class
=
TC_APPLICATION
;
;
break
;}
case
26
0
:
#line
1995
"asn1p_y.y"
case
26
2
:
#line
2003
"asn1p_y.y"
{
yyval
.
a_tag
.
tag_class
=
TC_PRIVATE
;
;
break
;}
case
26
1
:
#line
1999
"asn1p_y.y"
case
26
3
:
#line
2007
"asn1p_y.y"
{
yyval
.
a_tag
.
tag_mode
=
TM_DEFAULT
;
;
break
;}
case
26
2
:
#line 200
0
"asn1p_y.y"
case
26
4
:
#line 200
8
"asn1p_y.y"
{
yyval
.
a_tag
.
tag_mode
=
TM_IMPLICIT
;
;
break
;}
case
26
3
:
#line 200
1
"asn1p_y.y"
case
26
5
:
#line 200
9
"asn1p_y.y"
{
yyval
.
a_tag
.
tag_mode
=
TM_EXPLICIT
;
;
break
;}
case
26
4
:
#line 20
05
"asn1p_y.y"
case
26
6
:
#line 20
13
"asn1p_y.y"
{
checkmem
(
yyvsp
[
0
].
tv_str
);
yyval
.
tv_str
=
yyvsp
[
0
].
tv_str
;
;
break
;}
case
26
5
:
#line 20
09
"asn1p_y.y"
case
26
7
:
#line 20
17
"asn1p_y.y"
{
checkmem
(
yyvsp
[
0
].
tv_str
);
yyval
.
tv_str
=
yyvsp
[
0
].
tv_str
;
;
break
;}
case
26
6
:
#line 20
17
"asn1p_y.y"
case
26
8
:
#line 20
25
"asn1p_y.y"
{
checkmem
(
yyvsp
[
0
].
tv_str
);
yyval
.
tv_str
=
yyvsp
[
0
].
tv_str
;
;
break
;}
case
26
7
:
#line 20
24
"asn1p_y.y"
case
26
9
:
#line 20
32
"asn1p_y.y"
{
yyval
.
tv_str
=
0
;
;
break
;}
case
2
68
:
#line 20
25
"asn1p_y.y"
case
2
70
:
#line 20
33
"asn1p_y.y"
{
yyval
.
tv_str
=
yyvsp
[
0
].
tv_str
;
;
break
;}
case
2
69
:
#line 203
0
"asn1p_y.y"
case
2
71
:
#line 203
8
"asn1p_y.y"
{
checkmem
(
yyvsp
[
0
].
tv_str
);
yyval
.
tv_str
=
yyvsp
[
0
].
tv_str
;
...
...
@@ -3603,7 +3625,7 @@ yyerrhandle:
}
return
1
;
}
#line 20
36
"asn1p_y.y"
#line 20
44
"asn1p_y.y"
...
...
libasn1parser/asn1p_y.y
View file @
1893ddfb
...
...
@@ -1388,12 +1388,11 @@ DefinedValue:
Opaque:
TOK_opaque {
$$.len = $1.len +
2
;
$$.len = $1.len +
1
;
$$.buf = malloc($$.len + 1);
checkmem($$.buf);
$$.buf[0] = '{';
$$.buf[1] = ' ';
memcpy($$.buf + 2, $1.buf, $1.len);
memcpy($$.buf + 1, $1.buf, $1.len);
$$.buf[$$.len] = '\0';
free($1.buf);
}
...
...
@@ -1623,6 +1622,15 @@ ConstraintSubtypeElement:
| WithComponents {
$$ = $1;
}
| TOK_CONSTRAINED TOK_BY '{'
{ asn1p_lexer_hack_push_opaque_state(); } Opaque /* '}' */ {
$$ = asn1p_constraint_new(yylineno);
checkmem($$);
$$->type = ACT_CT_CTDBY;
$$->value = asn1p_value_frombuf($5.buf, $5.len, 0);
checkmem($$->value);
$$->value->type = ATV_UNPARSED;
}
;
ConstraintRangeSpec:
...
...
libasn1print/asn1print.c
View file @
1893ddfb
...
...
@@ -322,6 +322,11 @@ asn1print_constraint(asn1p_constraint_t *ct, enum asn1print_flags flags) {
case
ACT_CT_WCOMP
:
case
ACT_CT_WCOMPS
:
printf
(
"???"
);
case
ACT_CT_CTDBY
:
printf
(
"CONSTRAINED BY "
);
assert
(
ct
->
value
->
type
==
ATV_UNPARSED
);
fwrite
(
ct
->
value
->
value
.
string
.
buf
,
1
,
ct
->
value
->
value
.
string
.
size
,
stdout
);
break
;
case
ACT_CA_SET
:
symno
++
;
case
ACT_CA_CRC
:
symno
++
;
...
...
tests/34-class-OK.asn1.-EF
View file @
1893ddfb
...
...
@@ -22,7 +22,7 @@ EXTENSION-ATTRIBUTE ::= CLASS {
} WITH SYNTAX {&Type IDENTIFIED BY &id}
terminal-type EXTENSION-ATTRIBUTE ::= {
TerminalType IDENTIFIED BY 23}
terminal-type EXTENSION-ATTRIBUTE ::= {TerminalType IDENTIFIED BY 23}
ExtensionAttribute ::= SEQUENCE {
extension-attribute-type [0] IMPLICIT EXTENSION-ATTRIBUTE.&id ({ExtensionAttributeTable}),
...
...
tests/79-constrained-by-OK.asn1
0 → 100644
View file @
1893ddfb
-- OK: Everything is fine
-- iso.org.dod.internet.private.enterprise (1.3.6.1.4.1)
-- .spelio.software.asn1c.test (9363.1.5.1)
-- .79
ModuleTestConstrainedBy
{ iso org(3) dod(6) internet(1) private(4) enterprise(1)
spelio(9363) software(1) asn1c(5) test(1) 79 }
DEFINITIONS ::=
BEGIN
Type ::= SEQUENCE {
int INTEGER,
...
} (CONSTRAINED BY { -- nothing -- })
END
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment