Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
R
riscv-gcc-1
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
lvzhengyang
riscv-gcc-1
Commits
b6a6823e
Commit
b6a6823e
authored
Feb 28, 2000
by
Jason Merrill
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
regen
From-SVN: r32236
parent
b0e3a658
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
1061 additions
and
993 deletions
+1061
-993
gcc/c-parse.c
+378
-378
gcc/cexp.c
+173
-105
gcc/cp/parse.c
+0
-0
gcc/objc/objc-parse.c
+508
-508
gcc/objc/objc-parse.y
+2
-2
No files found.
gcc/c-parse.c
View file @
b6a6823e
...
@@ -66,7 +66,7 @@
...
@@ -66,7 +66,7 @@
#define ALIAS 316
#define ALIAS 316
#define OBJC_STRING 317
#define OBJC_STRING 317
#line 3
3
"c-parse.y"
#line 3
4
"c-parse.y"
#include "config.h"
#include "config.h"
#include "system.h"
#include "system.h"
...
@@ -95,10 +95,10 @@ const char * const language_string = "GNU C";
...
@@ -95,10 +95,10 @@ const char * const language_string = "GNU C";
/* Cause the `yydebug' variable to be defined. */
/* Cause the `yydebug' variable to be defined. */
#define YYDEBUG 1
#define YYDEBUG 1
#line 6
4
"c-parse.y"
#line 6
5
"c-parse.y"
typedef
union
{
long
itype
;
tree
ttype
;
enum
tree_code
code
;
typedef
union
{
long
itype
;
tree
ttype
;
enum
tree_code
code
;
char
*
filename
;
int
lineno
;
int
ends_in_label
;
}
YYSTYPE
;
char
*
filename
;
int
lineno
;
int
ends_in_label
;
}
YYSTYPE
;
#line 18
4
"c-parse.y"
#line 18
5
"c-parse.y"
/* Number of statements (loosely speaking) and compound statements
/* Number of statements (loosely speaking) and compound statements
seen so far. */
seen so far. */
...
@@ -380,47 +380,47 @@ static const short yyrhs[] = { -1,
...
@@ -380,47 +380,47 @@ static const short yyrhs[] = { -1,
#if YYDEBUG != 0
#if YYDEBUG != 0
static
const
short
yyrline
[]
=
{
0
,
static
const
short
yyrline
[]
=
{
0
,
23
4
,
239
,
253
,
255
,
255
,
256
,
258
,
260
,
261
,
269
,
23
5
,
240
,
254
,
256
,
256
,
257
,
259
,
261
,
262
,
270
,
27
3
,
283
,
287
,
291
,
293
,
295
,
296
,
297
,
302
,
309
,
27
4
,
284
,
288
,
292
,
294
,
296
,
297
,
298
,
303
,
310
,
31
1
,
315
,
319
,
325
,
327
,
331
,
335
,
341
,
343
,
347
,
31
2
,
316
,
320
,
326
,
328
,
332
,
336
,
342
,
344
,
348
,
35
3
,
355
,
358
,
360
,
362
,
364
,
366
,
368
,
370
,
374
,
35
4
,
356
,
359
,
361
,
363
,
365
,
367
,
369
,
371
,
375
,
37
8
,
381
,
384
,
387
,
391
,
393
,
396
,
399
,
403
,
431
,
37
9
,
382
,
385
,
388
,
392
,
394
,
397
,
400
,
404
,
432
,
43
7
,
440
,
443
,
446
,
448
,
450
,
454
,
458
,
462
,
464
,
43
8
,
441
,
444
,
447
,
449
,
451
,
455
,
459
,
463
,
465
,
46
7
,
471
,
498
,
500
,
502
,
504
,
506
,
508
,
510
,
512
,
46
8
,
472
,
499
,
501
,
503
,
505
,
507
,
509
,
511
,
513
,
51
4
,
516
,
518
,
520
,
522
,
524
,
528
,
530
,
534
,
536
,
51
5
,
517
,
519
,
521
,
523
,
525
,
529
,
531
,
535
,
537
,
5
39
,
543
,
545
,
552
,
555
,
563
,
574
,
673
,
674
,
676
,
5
40
,
544
,
546
,
553
,
556
,
564
,
575
,
674
,
675
,
677
,
68
2
,
684
,
707
,
716
,
718
,
720
,
724
,
730
,
732
,
737
,
68
3
,
685
,
708
,
717
,
719
,
721
,
725
,
731
,
733
,
738
,
7
39
,
747
,
749
,
750
,
760
,
765
,
767
,
768
,
769
,
776
,
7
40
,
748
,
750
,
751
,
761
,
766
,
768
,
769
,
770
,
777
,
78
1
,
785
,
788
,
796
,
801
,
803
,
804
,
805
,
812
,
822
,
78
2
,
786
,
789
,
797
,
802
,
804
,
805
,
806
,
813
,
823
,
82
6
,
831
,
835
,
839
,
843
,
845
,
847
,
856
,
859
,
863
,
82
7
,
832
,
836
,
840
,
844
,
846
,
848
,
857
,
860
,
864
,
86
5
,
867
,
872
,
876
,
879
,
883
,
886
,
888
,
900
,
903
,
86
6
,
868
,
873
,
877
,
880
,
884
,
887
,
889
,
901
,
904
,
90
5
,
907
,
911
,
915
,
917
,
920
,
933
,
936
,
940
,
942
,
90
6
,
908
,
912
,
916
,
918
,
921
,
934
,
937
,
941
,
943
,
95
0
,
951
,
952
,
956
,
958
,
964
,
965
,
966
,
969
,
971
,
95
1
,
952
,
953
,
957
,
959
,
965
,
966
,
967
,
970
,
972
,
97
4
,
976
,
979
,
982
,
988
,
995
,
997
,
1004
,
1011
,
1014
,
97
5
,
977
,
980
,
983
,
989
,
996
,
998
,
1005
,
1012
,
1015
,
102
1
,
1024
,
1028
,
1031
,
1035
,
1040
,
1043
,
1047
,
1050
,
1052
,
102
2
,
1025
,
1029
,
1032
,
1036
,
1041
,
1044
,
1048
,
1051
,
1053
,
105
4
,
1056
,
1063
,
1065
,
1066
,
1067
,
1072
,
1074
,
1076
,
1078
,
105
5
,
1057
,
1064
,
1066
,
1067
,
1068
,
1073
,
1075
,
1077
,
1079
,
108
3
,
1087
,
1090
,
1092
,
1097
,
1099
,
1100
,
1103
,
1103
,
1106
,
108
4
,
1088
,
1091
,
1093
,
1098
,
1100
,
1101
,
1104
,
1104
,
1107
,
11
09
,
1111
,
1113
,
1116
,
1118
,
1121
,
1127
,
1129
,
1133
,
1147
,
11
10
,
1112
,
1114
,
1117
,
1119
,
1122
,
1128
,
1130
,
1134
,
1148
,
115
5
,
1159
,
1173
,
1181
,
1188
,
1190
,
1195
,
1198
,
1203
,
1205
,
115
6
,
1160
,
1174
,
1182
,
1189
,
1191
,
1196
,
1199
,
1204
,
1206
,
120
7
,
1214
,
1216
,
1224
,
1230
,
1235
,
1237
,
1239
,
1246
,
1248
,
120
8
,
1215
,
1217
,
1225
,
1231
,
1236
,
1238
,
1240
,
1247
,
1249
,
125
4
,
1260
,
1262
,
1264
,
1269
,
1271
,
1278
,
1280
,
1283
,
1286
,
125
5
,
1261
,
1263
,
1265
,
1270
,
1272
,
1279
,
1281
,
1284
,
1287
,
129
0
,
1293
,
1297
,
1300
,
1304
,
1309
,
1311
,
1315
,
1317
,
1319
,
129
1
,
1294
,
1298
,
1301
,
1305
,
1310
,
1312
,
1316
,
1318
,
1320
,
132
1
,
1325
,
1327
,
1329
,
1332
,
1334
,
1337
,
1341
,
1343
,
1346
,
132
2
,
1326
,
1328
,
1330
,
1333
,
1335
,
1338
,
1342
,
1344
,
1347
,
134
8
,
1353
,
1356
,
1361
,
1363
,
1365
,
1379
,
1385
,
1398
,
1403
,
134
9
,
1354
,
1357
,
1362
,
1364
,
1366
,
1380
,
1386
,
1399
,
1404
,
140
8
,
1410
,
1415
,
1417
,
1421
,
1425
,
1429
,
1439
,
1441
,
1446
,
140
9
,
1411
,
1416
,
1418
,
1422
,
1426
,
1430
,
1440
,
1442
,
1447
,
145
1
,
1454
,
1458
,
1461
,
1465
,
1468
,
1471
,
1474
,
1478
,
1481
,
145
2
,
1455
,
1459
,
1462
,
1466
,
1469
,
1472
,
1475
,
1479
,
1482
,
148
5
,
1489
,
1491
,
1493
,
1495
,
1497
,
1499
,
1501
,
1503
,
1507
,
148
6
,
1490
,
1492
,
1494
,
1496
,
1498
,
1500
,
1502
,
1504
,
1508
,
151
5
,
1523
,
1525
,
1527
,
1531
,
1533
,
1536
,
1539
,
1549
,
1551
,
151
6
,
1524
,
1526
,
1528
,
1532
,
1534
,
1537
,
1540
,
1550
,
1552
,
155
6
,
1558
,
1561
,
1575
,
1578
,
1581
,
1583
,
1585
,
1589
,
1593
,
155
7
,
1559
,
1562
,
1576
,
1579
,
1582
,
1584
,
1586
,
1590
,
1594
,
1
599
,
1617
,
1622
,
1627
,
1630
,
1644
,
1653
,
1657
,
1661
,
1665
,
1
600
,
1618
,
1623
,
1628
,
1631
,
1645
,
1654
,
1658
,
1662
,
1666
,
167
1
,
1675
,
1680
,
1683
,
1688
,
1691
,
1692
,
1708
,
1713
,
1716
,
167
2
,
1676
,
1681
,
1684
,
1689
,
1692
,
1693
,
1709
,
1714
,
1717
,
172
8
,
1730
,
1740
,
1750
,
1751
,
1758
,
1760
,
1772
,
1776
,
1790
,
172
9
,
1731
,
1741
,
1751
,
1752
,
1759
,
1761
,
1773
,
1777
,
1791
,
179
6
,
1802
,
1803
,
1808
,
1813
,
1817
,
1821
,
1832
,
1839
,
1846
,
179
7
,
1803
,
1804
,
1809
,
1814
,
1818
,
1822
,
1833
,
1840
,
1847
,
185
3
,
1864
,
1870
,
1873
,
1878
,
1901
,
1931
,
1962
,
1993
,
2008
,
185
4
,
1865
,
1871
,
1874
,
1879
,
1902
,
1932
,
1963
,
1994
,
2009
,
202
2
,
2026
,
2030
,
2033
,
2038
,
2040
,
2043
,
2045
,
2049
,
2054
,
202
3
,
2027
,
2031
,
2034
,
2039
,
2041
,
2044
,
2046
,
2050
,
2055
,
205
7
,
2063
,
2068
,
2073
,
2075
,
2084
,
2085
,
2091
,
2093
,
2103
,
205
8
,
2064
,
2069
,
2074
,
2076
,
2085
,
2086
,
2092
,
2094
,
2104
,
210
5
,
2109
,
2112
,
2118
,
2127
,
2135
,
2143
,
2152
,
2165
,
2170
,
210
6
,
2110
,
2113
,
2119
,
2128
,
2136
,
2144
,
2153
,
2166
,
2171
,
217
5
,
2177
,
2186
,
2189
,
2194
,
2197
,
2201
217
6
,
2178
,
2187
,
2190
,
2195
,
2198
,
2202
};
};
#endif
#endif
...
@@ -1265,7 +1265,7 @@ static const short yycheck[] = { 38,
...
@@ -1265,7 +1265,7 @@ static const short yycheck[] = { 38,
51
,
52
,
53
,
54
51
,
52
,
53
,
54
};
};
/* -*-C-*- Note some compilers choke on comments on `#line' lines. */
/* -*-C-*- Note some compilers choke on comments on `#line' lines. */
#line 3 "/usr/
share/misc
/bison.simple"
#line 3 "/usr/
lib
/bison.simple"
/* This file comes from bison-1.28. */
/* This file comes from bison-1.28. */
/* Skeleton output parser for bison,
/* Skeleton output parser for bison,
...
@@ -1479,7 +1479,7 @@ __yy_memcpy (char *to, char *from, unsigned int count)
...
@@ -1479,7 +1479,7 @@ __yy_memcpy (char *to, char *from, unsigned int count)
#endif
#endif
#endif
#endif
#line 217 "/usr/
share/misc
/bison.simple"
#line 217 "/usr/
lib
/bison.simple"
/* The user can define YYPARSE_PARAM as the name of an argument to be passed
/* The user can define YYPARSE_PARAM as the name of an argument to be passed
into yyparse. The argument should have type void *.
into yyparse. The argument should have type void *.
...
@@ -1808,14 +1808,14 @@ yyreduce:
...
@@ -1808,14 +1808,14 @@ yyreduce:
switch
(
yyn
)
{
switch
(
yyn
)
{
case
1
:
case
1
:
#line 23
5
"c-parse.y"
#line 23
6
"c-parse.y"
{
if
(
pedantic
)
{
if
(
pedantic
)
pedwarn
(
"ANSI C forbids an empty source file"
);
pedwarn
(
"ANSI C forbids an empty source file"
);
finish_file
();
finish_file
();
;
;
break
;}
break
;}
case
2
:
case
2
:
#line 24
0
"c-parse.y"
#line 24
1
"c-parse.y"
{
{
/* In case there were missing closebraces,
/* In case there were missing closebraces,
get us back to the global binding level. */
get us back to the global binding level. */
...
@@ -1825,15 +1825,15 @@ case 2:
...
@@ -1825,15 +1825,15 @@ case 2:
;
;
break
;}
break
;}
case
3
:
case
3
:
#line 25
4
"c-parse.y"
#line 25
5
"c-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
5
:
case
5
:
#line 25
5
"c-parse.y"
#line 25
6
"c-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
9
:
case
9
:
#line 26
2
"c-parse.y"
#line 26
3
"c-parse.y"
{
STRIP_NOPS
(
yyvsp
[
-
2
].
ttype
);
{
STRIP_NOPS
(
yyvsp
[
-
2
].
ttype
);
if
((
TREE_CODE
(
yyvsp
[
-
2
].
ttype
)
==
ADDR_EXPR
if
((
TREE_CODE
(
yyvsp
[
-
2
].
ttype
)
==
ADDR_EXPR
&&
TREE_CODE
(
TREE_OPERAND
(
yyvsp
[
-
2
].
ttype
,
0
))
==
STRING_CST
)
&&
TREE_CODE
(
TREE_OPERAND
(
yyvsp
[
-
2
].
ttype
,
0
))
==
STRING_CST
)
...
@@ -1843,11 +1843,11 @@ case 9:
...
@@ -1843,11 +1843,11 @@ case 9:
error
(
"argument of `asm' is not a constant string"
);
;
error
(
"argument of `asm' is not a constant string"
);
;
break
;}
break
;}
case
10
:
case
10
:
#line 27
0
"c-parse.y"
#line 27
1
"c-parse.y"
{
RESTORE_WARN_FLAGS
(
yyvsp
[
-
1
].
ttype
);
;
{
RESTORE_WARN_FLAGS
(
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
11
:
case
11
:
#line 27
5
"c-parse.y"
#line 27
6
"c-parse.y"
{
if
(
pedantic
)
{
if
(
pedantic
)
error
(
"ANSI C forbids data definition with no type or storage class"
);
error
(
"ANSI C forbids data definition with no type or storage class"
);
else
if
(
!
flag_traditional
)
else
if
(
!
flag_traditional
)
...
@@ -1858,162 +1858,162 @@ case 11:
...
@@ -1858,162 +1858,162 @@ case 11:
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
break
;}
break
;}
case
12
:
case
12
:
#line 28
4
"c-parse.y"
#line 28
5
"c-parse.y"
{
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
{
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
break
;}
break
;}
case
13
:
case
13
:
#line 28
8
"c-parse.y"
#line 28
9
"c-parse.y"
{
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
{
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
break
;}
break
;}
case
14
:
case
14
:
#line 29
2
"c-parse.y"
#line 29
3
"c-parse.y"
{
pedwarn
(
"empty declaration"
);
;
{
pedwarn
(
"empty declaration"
);
;
break
;}
break
;}
case
15
:
case
15
:
#line 29
4
"c-parse.y"
#line 29
5
"c-parse.y"
{
shadow_tag
(
yyvsp
[
-
1
].
ttype
);
;
{
shadow_tag
(
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
18
:
case
18
:
#line 29
8
"c-parse.y"
#line 29
9
"c-parse.y"
{
if
(
pedantic
)
{
if
(
pedantic
)
pedwarn
(
"ANSI C does not allow extra `;' outside of a function"
);
;
pedwarn
(
"ANSI C does not allow extra `;' outside of a function"
);
;
break
;}
break
;}
case
19
:
case
19
:
#line 30
4
"c-parse.y"
#line 30
5
"c-parse.y"
{
if
(
!
start_function
(
current_declspecs
,
yyvsp
[
0
].
ttype
,
{
if
(
!
start_function
(
current_declspecs
,
yyvsp
[
0
].
ttype
,
prefix_attributes
,
NULL_TREE
))
prefix_attributes
,
NULL_TREE
))
YYERROR1
;
YYERROR1
;
reinit_parse_for_function
();
;
reinit_parse_for_function
();
;
break
;}
break
;}
case
20
:
case
20
:
#line 3
09
"c-parse.y"
#line 3
10
"c-parse.y"
{
store_parm_decls
();
;
{
store_parm_decls
();
;
break
;}
break
;}
case
21
:
case
21
:
#line 31
1
"c-parse.y"
#line 31
2
"c-parse.y"
{
finish_function
(
0
);
{
finish_function
(
0
);
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
break
;}
break
;}
case
22
:
case
22
:
#line 31
6
"c-parse.y"
#line 31
7
"c-parse.y"
{
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
{
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
break
;}
break
;}
case
23
:
case
23
:
#line 32
0
"c-parse.y"
#line 32
1
"c-parse.y"
{
if
(
!
start_function
(
current_declspecs
,
yyvsp
[
0
].
ttype
,
{
if
(
!
start_function
(
current_declspecs
,
yyvsp
[
0
].
ttype
,
prefix_attributes
,
NULL_TREE
))
prefix_attributes
,
NULL_TREE
))
YYERROR1
;
YYERROR1
;
reinit_parse_for_function
();
;
reinit_parse_for_function
();
;
break
;}
break
;}
case
24
:
case
24
:
#line 32
5
"c-parse.y"
#line 32
6
"c-parse.y"
{
store_parm_decls
();
;
{
store_parm_decls
();
;
break
;}
break
;}
case
25
:
case
25
:
#line 32
7
"c-parse.y"
#line 32
8
"c-parse.y"
{
finish_function
(
0
);
{
finish_function
(
0
);
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
break
;}
break
;}
case
26
:
case
26
:
#line 33
2
"c-parse.y"
#line 33
3
"c-parse.y"
{
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
{
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
break
;}
break
;}
case
27
:
case
27
:
#line 33
6
"c-parse.y"
#line 33
7
"c-parse.y"
{
if
(
!
start_function
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
{
if
(
!
start_function
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
prefix_attributes
,
NULL_TREE
))
prefix_attributes
,
NULL_TREE
))
YYERROR1
;
YYERROR1
;
reinit_parse_for_function
();
;
reinit_parse_for_function
();
;
break
;}
break
;}
case
28
:
case
28
:
#line 34
1
"c-parse.y"
#line 34
2
"c-parse.y"
{
store_parm_decls
();
;
{
store_parm_decls
();
;
break
;}
break
;}
case
29
:
case
29
:
#line 34
3
"c-parse.y"
#line 34
4
"c-parse.y"
{
finish_function
(
0
);
{
finish_function
(
0
);
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
break
;}
break
;}
case
30
:
case
30
:
#line 34
8
"c-parse.y"
#line 34
9
"c-parse.y"
{
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
{
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
break
;}
break
;}
case
33
:
case
33
:
#line 3
59
"c-parse.y"
#line 3
60
"c-parse.y"
{
yyval
.
code
=
ADDR_EXPR
;
;
{
yyval
.
code
=
ADDR_EXPR
;
;
break
;}
break
;}
case
34
:
case
34
:
#line 36
1
"c-parse.y"
#line 36
2
"c-parse.y"
{
yyval
.
code
=
NEGATE_EXPR
;
;
{
yyval
.
code
=
NEGATE_EXPR
;
;
break
;}
break
;}
case
35
:
case
35
:
#line 36
3
"c-parse.y"
#line 36
4
"c-parse.y"
{
yyval
.
code
=
CONVERT_EXPR
;
;
{
yyval
.
code
=
CONVERT_EXPR
;
;
break
;}
break
;}
case
36
:
case
36
:
#line 36
5
"c-parse.y"
#line 36
6
"c-parse.y"
{
yyval
.
code
=
PREINCREMENT_EXPR
;
;
{
yyval
.
code
=
PREINCREMENT_EXPR
;
;
break
;}
break
;}
case
37
:
case
37
:
#line 36
7
"c-parse.y"
#line 36
8
"c-parse.y"
{
yyval
.
code
=
PREDECREMENT_EXPR
;
;
{
yyval
.
code
=
PREDECREMENT_EXPR
;
;
break
;}
break
;}
case
38
:
case
38
:
#line 3
69
"c-parse.y"
#line 3
70
"c-parse.y"
{
yyval
.
code
=
BIT_NOT_EXPR
;
;
{
yyval
.
code
=
BIT_NOT_EXPR
;
;
break
;}
break
;}
case
39
:
case
39
:
#line 37
1
"c-parse.y"
#line 37
2
"c-parse.y"
{
yyval
.
code
=
TRUTH_NOT_EXPR
;
;
{
yyval
.
code
=
TRUTH_NOT_EXPR
;
;
break
;}
break
;}
case
40
:
case
40
:
#line 37
5
"c-parse.y"
#line 37
6
"c-parse.y"
{
yyval
.
ttype
=
build_compound_expr
(
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
build_compound_expr
(
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
41
:
case
41
:
#line 38
0
"c-parse.y"
#line 38
1
"c-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
43
:
case
43
:
#line 38
6
"c-parse.y"
#line 38
7
"c-parse.y"
{
yyval
.
ttype
=
build_tree_list
(
NULL_TREE
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
build_tree_list
(
NULL_TREE
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
44
:
case
44
:
#line 38
8
"c-parse.y"
#line 38
9
"c-parse.y"
{
chainon
(
yyvsp
[
-
2
].
ttype
,
build_tree_list
(
NULL_TREE
,
yyvsp
[
0
].
ttype
));
;
{
chainon
(
yyvsp
[
-
2
].
ttype
,
build_tree_list
(
NULL_TREE
,
yyvsp
[
0
].
ttype
));
;
break
;}
break
;}
case
46
:
case
46
:
#line 39
4
"c-parse.y"
#line 39
5
"c-parse.y"
{
yyval
.
ttype
=
build_indirect_ref
(
yyvsp
[
0
].
ttype
,
"unary *"
);
;
{
yyval
.
ttype
=
build_indirect_ref
(
yyvsp
[
0
].
ttype
,
"unary *"
);
;
break
;}
break
;}
case
47
:
case
47
:
#line 39
7
"c-parse.y"
#line 39
8
"c-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
RESTORE_WARN_FLAGS
(
yyvsp
[
-
1
].
ttype
);
;
RESTORE_WARN_FLAGS
(
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
48
:
case
48
:
#line 40
0
"c-parse.y"
#line 40
1
"c-parse.y"
{
yyval
.
ttype
=
build_unary_op
(
yyvsp
[
-
1
].
code
,
yyvsp
[
0
].
ttype
,
0
);
{
yyval
.
ttype
=
build_unary_op
(
yyvsp
[
-
1
].
code
,
yyvsp
[
0
].
ttype
,
0
);
overflow_warning
(
yyval
.
ttype
);
;
overflow_warning
(
yyval
.
ttype
);
;
break
;}
break
;}
case
49
:
case
49
:
#line 40
4
"c-parse.y"
#line 40
5
"c-parse.y"
{
tree
label
=
lookup_label
(
yyvsp
[
0
].
ttype
);
{
tree
label
=
lookup_label
(
yyvsp
[
0
].
ttype
);
if
(
pedantic
)
if
(
pedantic
)
pedwarn
(
"ANSI C forbids `&&'"
);
pedwarn
(
"ANSI C forbids `&&'"
);
...
@@ -2028,7 +2028,7 @@ case 49:
...
@@ -2028,7 +2028,7 @@ case 49:
;
;
break
;}
break
;}
case
50
:
case
50
:
#line 43
2
"c-parse.y"
#line 43
3
"c-parse.y"
{
skip_evaluation
--
;
{
skip_evaluation
--
;
if
(
TREE_CODE
(
yyvsp
[
0
].
ttype
)
==
COMPONENT_REF
if
(
TREE_CODE
(
yyvsp
[
0
].
ttype
)
==
COMPONENT_REF
&&
DECL_C_BIT_FIELD
(
TREE_OPERAND
(
yyvsp
[
0
].
ttype
,
1
)))
&&
DECL_C_BIT_FIELD
(
TREE_OPERAND
(
yyvsp
[
0
].
ttype
,
1
)))
...
@@ -2036,53 +2036,53 @@ case 50:
...
@@ -2036,53 +2036,53 @@ case 50:
yyval
.
ttype
=
c_sizeof
(
TREE_TYPE
(
yyvsp
[
0
].
ttype
));
;
yyval
.
ttype
=
c_sizeof
(
TREE_TYPE
(
yyvsp
[
0
].
ttype
));
;
break
;}
break
;}
case
51
:
case
51
:
#line 43
8
"c-parse.y"
#line 43
9
"c-parse.y"
{
skip_evaluation
--
;
{
skip_evaluation
--
;
yyval
.
ttype
=
c_sizeof
(
groktypename
(
yyvsp
[
-
1
].
ttype
));
;
yyval
.
ttype
=
c_sizeof
(
groktypename
(
yyvsp
[
-
1
].
ttype
));
;
break
;}
break
;}
case
52
:
case
52
:
#line 44
1
"c-parse.y"
#line 44
2
"c-parse.y"
{
skip_evaluation
--
;
{
skip_evaluation
--
;
yyval
.
ttype
=
c_alignof_expr
(
yyvsp
[
0
].
ttype
);
;
yyval
.
ttype
=
c_alignof_expr
(
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
53
:
case
53
:
#line 44
4
"c-parse.y"
#line 44
5
"c-parse.y"
{
skip_evaluation
--
;
{
skip_evaluation
--
;
yyval
.
ttype
=
c_alignof
(
groktypename
(
yyvsp
[
-
1
].
ttype
));
;
yyval
.
ttype
=
c_alignof
(
groktypename
(
yyvsp
[
-
1
].
ttype
));
;
break
;}
break
;}
case
54
:
case
54
:
#line 44
7
"c-parse.y"
#line 44
8
"c-parse.y"
{
yyval
.
ttype
=
build_unary_op
(
REALPART_EXPR
,
yyvsp
[
0
].
ttype
,
0
);
;
{
yyval
.
ttype
=
build_unary_op
(
REALPART_EXPR
,
yyvsp
[
0
].
ttype
,
0
);
;
break
;}
break
;}
case
55
:
case
55
:
#line 4
49
"c-parse.y"
#line 4
50
"c-parse.y"
{
yyval
.
ttype
=
build_unary_op
(
IMAGPART_EXPR
,
yyvsp
[
0
].
ttype
,
0
);
;
{
yyval
.
ttype
=
build_unary_op
(
IMAGPART_EXPR
,
yyvsp
[
0
].
ttype
,
0
);
;
break
;}
break
;}
case
56
:
case
56
:
#line 45
1
"c-parse.y"
#line 45
2
"c-parse.y"
{
yyval
.
ttype
=
build_va_arg
(
yyvsp
[
-
3
].
ttype
,
groktypename
(
yyvsp
[
-
1
].
ttype
));
;
{
yyval
.
ttype
=
build_va_arg
(
yyvsp
[
-
3
].
ttype
,
groktypename
(
yyvsp
[
-
1
].
ttype
));
;
break
;}
break
;}
case
57
:
case
57
:
#line 45
5
"c-parse.y"
#line 45
6
"c-parse.y"
{
skip_evaluation
++
;
;
{
skip_evaluation
++
;
;
break
;}
break
;}
case
58
:
case
58
:
#line 4
59
"c-parse.y"
#line 4
60
"c-parse.y"
{
skip_evaluation
++
;
;
{
skip_evaluation
++
;
;
break
;}
break
;}
case
60
:
case
60
:
#line 46
5
"c-parse.y"
#line 46
6
"c-parse.y"
{
tree
type
=
groktypename
(
yyvsp
[
-
2
].
ttype
);
{
tree
type
=
groktypename
(
yyvsp
[
-
2
].
ttype
);
yyval
.
ttype
=
build_c_cast
(
type
,
yyvsp
[
0
].
ttype
);
;
yyval
.
ttype
=
build_c_cast
(
type
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
61
:
case
61
:
#line 46
8
"c-parse.y"
#line 46
9
"c-parse.y"
{
start_init
(
NULL_TREE
,
NULL
,
0
);
{
start_init
(
NULL_TREE
,
NULL
,
0
);
yyvsp
[
-
2
].
ttype
=
groktypename
(
yyvsp
[
-
2
].
ttype
);
yyvsp
[
-
2
].
ttype
=
groktypename
(
yyvsp
[
-
2
].
ttype
);
really_start_incremental_init
(
yyvsp
[
-
2
].
ttype
);
;
really_start_incremental_init
(
yyvsp
[
-
2
].
ttype
);
;
break
;}
break
;}
case
62
:
case
62
:
#line 47
2
"c-parse.y"
#line 47
3
"c-parse.y"
{
const
char
*
name
;
{
const
char
*
name
;
tree
result
=
pop_init_level
(
0
);
tree
result
=
pop_init_level
(
0
);
tree
type
=
yyvsp
[
-
5
].
ttype
;
tree
type
=
yyvsp
[
-
5
].
ttype
;
...
@@ -2109,90 +2109,90 @@ case 62:
...
@@ -2109,90 +2109,90 @@ case 62:
;
;
break
;}
break
;}
case
64
:
case
64
:
#line 50
1
"c-parse.y"
#line 50
2
"c-parse.y"
{
yyval
.
ttype
=
parser_build_binary_op
(
yyvsp
[
-
1
].
code
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
parser_build_binary_op
(
yyvsp
[
-
1
].
code
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
65
:
case
65
:
#line 50
3
"c-parse.y"
#line 50
4
"c-parse.y"
{
yyval
.
ttype
=
parser_build_binary_op
(
yyvsp
[
-
1
].
code
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
parser_build_binary_op
(
yyvsp
[
-
1
].
code
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
66
:
case
66
:
#line 50
5
"c-parse.y"
#line 50
6
"c-parse.y"
{
yyval
.
ttype
=
parser_build_binary_op
(
yyvsp
[
-
1
].
code
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
parser_build_binary_op
(
yyvsp
[
-
1
].
code
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
67
:
case
67
:
#line 50
7
"c-parse.y"
#line 50
8
"c-parse.y"
{
yyval
.
ttype
=
parser_build_binary_op
(
yyvsp
[
-
1
].
code
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
parser_build_binary_op
(
yyvsp
[
-
1
].
code
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
68
:
case
68
:
#line 5
09
"c-parse.y"
#line 5
10
"c-parse.y"
{
yyval
.
ttype
=
parser_build_binary_op
(
yyvsp
[
-
1
].
code
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
parser_build_binary_op
(
yyvsp
[
-
1
].
code
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
69
:
case
69
:
#line 51
1
"c-parse.y"
#line 51
2
"c-parse.y"
{
yyval
.
ttype
=
parser_build_binary_op
(
yyvsp
[
-
1
].
code
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
parser_build_binary_op
(
yyvsp
[
-
1
].
code
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
70
:
case
70
:
#line 51
3
"c-parse.y"
#line 51
4
"c-parse.y"
{
yyval
.
ttype
=
parser_build_binary_op
(
yyvsp
[
-
1
].
code
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
parser_build_binary_op
(
yyvsp
[
-
1
].
code
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
71
:
case
71
:
#line 51
5
"c-parse.y"
#line 51
6
"c-parse.y"
{
yyval
.
ttype
=
parser_build_binary_op
(
yyvsp
[
-
1
].
code
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
parser_build_binary_op
(
yyvsp
[
-
1
].
code
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
72
:
case
72
:
#line 51
7
"c-parse.y"
#line 51
8
"c-parse.y"
{
yyval
.
ttype
=
parser_build_binary_op
(
yyvsp
[
-
1
].
code
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
parser_build_binary_op
(
yyvsp
[
-
1
].
code
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
73
:
case
73
:
#line 5
19
"c-parse.y"
#line 5
20
"c-parse.y"
{
yyval
.
ttype
=
parser_build_binary_op
(
yyvsp
[
-
1
].
code
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
parser_build_binary_op
(
yyvsp
[
-
1
].
code
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
74
:
case
74
:
#line 52
1
"c-parse.y"
#line 52
2
"c-parse.y"
{
yyval
.
ttype
=
parser_build_binary_op
(
yyvsp
[
-
1
].
code
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
parser_build_binary_op
(
yyvsp
[
-
1
].
code
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
75
:
case
75
:
#line 52
3
"c-parse.y"
#line 52
4
"c-parse.y"
{
yyval
.
ttype
=
parser_build_binary_op
(
yyvsp
[
-
1
].
code
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
parser_build_binary_op
(
yyvsp
[
-
1
].
code
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
76
:
case
76
:
#line 52
5
"c-parse.y"
#line 52
6
"c-parse.y"
{
yyvsp
[
-
1
].
ttype
=
truthvalue_conversion
(
default_conversion
(
yyvsp
[
-
1
].
ttype
));
{
yyvsp
[
-
1
].
ttype
=
truthvalue_conversion
(
default_conversion
(
yyvsp
[
-
1
].
ttype
));
skip_evaluation
+=
yyvsp
[
-
1
].
ttype
==
boolean_false_node
;
;
skip_evaluation
+=
yyvsp
[
-
1
].
ttype
==
boolean_false_node
;
;
break
;}
break
;}
case
77
:
case
77
:
#line 52
8
"c-parse.y"
#line 52
9
"c-parse.y"
{
skip_evaluation
-=
yyvsp
[
-
3
].
ttype
==
boolean_false_node
;
{
skip_evaluation
-=
yyvsp
[
-
3
].
ttype
==
boolean_false_node
;
yyval
.
ttype
=
parser_build_binary_op
(
TRUTH_ANDIF_EXPR
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
0
].
ttype
);
;
yyval
.
ttype
=
parser_build_binary_op
(
TRUTH_ANDIF_EXPR
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
78
:
case
78
:
#line 53
1
"c-parse.y"
#line 53
2
"c-parse.y"
{
yyvsp
[
-
1
].
ttype
=
truthvalue_conversion
(
default_conversion
(
yyvsp
[
-
1
].
ttype
));
{
yyvsp
[
-
1
].
ttype
=
truthvalue_conversion
(
default_conversion
(
yyvsp
[
-
1
].
ttype
));
skip_evaluation
+=
yyvsp
[
-
1
].
ttype
==
boolean_true_node
;
;
skip_evaluation
+=
yyvsp
[
-
1
].
ttype
==
boolean_true_node
;
;
break
;}
break
;}
case
79
:
case
79
:
#line 53
4
"c-parse.y"
#line 53
5
"c-parse.y"
{
skip_evaluation
-=
yyvsp
[
-
3
].
ttype
==
boolean_true_node
;
{
skip_evaluation
-=
yyvsp
[
-
3
].
ttype
==
boolean_true_node
;
yyval
.
ttype
=
parser_build_binary_op
(
TRUTH_ORIF_EXPR
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
0
].
ttype
);
;
yyval
.
ttype
=
parser_build_binary_op
(
TRUTH_ORIF_EXPR
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
80
:
case
80
:
#line 53
7
"c-parse.y"
#line 53
8
"c-parse.y"
{
yyvsp
[
-
1
].
ttype
=
truthvalue_conversion
(
default_conversion
(
yyvsp
[
-
1
].
ttype
));
{
yyvsp
[
-
1
].
ttype
=
truthvalue_conversion
(
default_conversion
(
yyvsp
[
-
1
].
ttype
));
skip_evaluation
+=
yyvsp
[
-
1
].
ttype
==
boolean_false_node
;
;
skip_evaluation
+=
yyvsp
[
-
1
].
ttype
==
boolean_false_node
;
;
break
;}
break
;}
case
81
:
case
81
:
#line 54
0
"c-parse.y"
#line 54
1
"c-parse.y"
{
skip_evaluation
+=
((
yyvsp
[
-
4
].
ttype
==
boolean_true_node
)
{
skip_evaluation
+=
((
yyvsp
[
-
4
].
ttype
==
boolean_true_node
)
-
(
yyvsp
[
-
4
].
ttype
==
boolean_false_node
));
;
-
(
yyvsp
[
-
4
].
ttype
==
boolean_false_node
));
;
break
;}
break
;}
case
82
:
case
82
:
#line 54
3
"c-parse.y"
#line 54
4
"c-parse.y"
{
skip_evaluation
-=
yyvsp
[
-
6
].
ttype
==
boolean_true_node
;
{
skip_evaluation
-=
yyvsp
[
-
6
].
ttype
==
boolean_true_node
;
yyval
.
ttype
=
build_conditional_expr
(
yyvsp
[
-
6
].
ttype
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
0
].
ttype
);
;
yyval
.
ttype
=
build_conditional_expr
(
yyvsp
[
-
6
].
ttype
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
83
:
case
83
:
#line 54
6
"c-parse.y"
#line 54
7
"c-parse.y"
{
if
(
pedantic
)
{
if
(
pedantic
)
pedwarn
(
"ANSI C forbids omitting the middle term of a ?: expression"
);
pedwarn
(
"ANSI C forbids omitting the middle term of a ?: expression"
);
/* Make sure first operand is calculated only once. */
/* Make sure first operand is calculated only once. */
...
@@ -2201,12 +2201,12 @@ case 83:
...
@@ -2201,12 +2201,12 @@ case 83:
skip_evaluation
+=
yyvsp
[
-
1
].
ttype
==
boolean_true_node
;
;
skip_evaluation
+=
yyvsp
[
-
1
].
ttype
==
boolean_true_node
;
;
break
;}
break
;}
case
84
:
case
84
:
#line 55
3
"c-parse.y"
#line 55
4
"c-parse.y"
{
skip_evaluation
-=
yyvsp
[
-
4
].
ttype
==
boolean_true_node
;
{
skip_evaluation
-=
yyvsp
[
-
4
].
ttype
==
boolean_true_node
;
yyval
.
ttype
=
build_conditional_expr
(
yyvsp
[
-
4
].
ttype
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
0
].
ttype
);
;
yyval
.
ttype
=
build_conditional_expr
(
yyvsp
[
-
4
].
ttype
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
85
:
case
85
:
#line 55
6
"c-parse.y"
#line 55
7
"c-parse.y"
{
char
class
;
{
char
class
;
yyval
.
ttype
=
build_modify_expr
(
yyvsp
[
-
2
].
ttype
,
NOP_EXPR
,
yyvsp
[
0
].
ttype
);
yyval
.
ttype
=
build_modify_expr
(
yyvsp
[
-
2
].
ttype
,
NOP_EXPR
,
yyvsp
[
0
].
ttype
);
class
=
TREE_CODE_CLASS
(
TREE_CODE
(
yyval
.
ttype
));
class
=
TREE_CODE_CLASS
(
TREE_CODE
(
yyval
.
ttype
));
...
@@ -2216,7 +2216,7 @@ case 85:
...
@@ -2216,7 +2216,7 @@ case 85:
;
;
break
;}
break
;}
case
86
:
case
86
:
#line 56
4
"c-parse.y"
#line 56
5
"c-parse.y"
{
char
class
;
{
char
class
;
yyval
.
ttype
=
build_modify_expr
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
-
1
].
code
,
yyvsp
[
0
].
ttype
);
yyval
.
ttype
=
build_modify_expr
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
-
1
].
code
,
yyvsp
[
0
].
ttype
);
/* This inhibits warnings in truthvalue_conversion. */
/* This inhibits warnings in truthvalue_conversion. */
...
@@ -2227,7 +2227,7 @@ case 86:
...
@@ -2227,7 +2227,7 @@ case 86:
;
;
break
;}
break
;}
case
87
:
case
87
:
#line 57
6
"c-parse.y"
#line 57
7
"c-parse.y"
{
{
yyval
.
ttype
=
lastiddecl
;
yyval
.
ttype
=
lastiddecl
;
if
(
!
yyval
.
ttype
||
yyval
.
ttype
==
error_mark_node
)
if
(
!
yyval
.
ttype
||
yyval
.
ttype
==
error_mark_node
)
...
@@ -2327,11 +2327,11 @@ case 87:
...
@@ -2327,11 +2327,11 @@ case 87:
;
;
break
;}
break
;}
case
89
:
case
89
:
#line 67
5
"c-parse.y"
#line 67
6
"c-parse.y"
{
yyval
.
ttype
=
combine_strings
(
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
combine_strings
(
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
90
:
case
90
:
#line 67
7
"c-parse.y"
#line 67
8
"c-parse.y"
{
char
class
=
TREE_CODE_CLASS
(
TREE_CODE
(
yyvsp
[
-
1
].
ttype
));
{
char
class
=
TREE_CODE_CLASS
(
TREE_CODE
(
yyvsp
[
-
1
].
ttype
));
if
(
class
==
'e'
||
class
==
'1'
if
(
class
==
'e'
||
class
==
'1'
||
class
==
'2'
||
class
==
'<'
)
||
class
==
'2'
||
class
==
'<'
)
...
@@ -2339,11 +2339,11 @@ case 90:
...
@@ -2339,11 +2339,11 @@ case 90:
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
;
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
;
break
;}
break
;}
case
91
:
case
91
:
#line 68
3
"c-parse.y"
#line 68
4
"c-parse.y"
{
yyval
.
ttype
=
error_mark_node
;
;
{
yyval
.
ttype
=
error_mark_node
;
;
break
;}
break
;}
case
92
:
case
92
:
#line 68
5
"c-parse.y"
#line 68
6
"c-parse.y"
{
tree
rtl_exp
;
{
tree
rtl_exp
;
if
(
pedantic
)
if
(
pedantic
)
pedwarn
(
"ANSI C forbids braced-groups within expressions"
);
pedwarn
(
"ANSI C forbids braced-groups within expressions"
);
...
@@ -2368,7 +2368,7 @@ case 92:
...
@@ -2368,7 +2368,7 @@ case 92:
;
;
break
;}
break
;}
case
93
:
case
93
:
#line 70
8
"c-parse.y"
#line 70
9
"c-parse.y"
{
{
/* Make sure we call expand_end_stmt_expr. Otherwise
/* Make sure we call expand_end_stmt_expr. Otherwise
we are likely to lose sequences and crash later. */
we are likely to lose sequences and crash later. */
...
@@ -2379,21 +2379,21 @@ case 93:
...
@@ -2379,21 +2379,21 @@ case 93:
;
;
break
;}
break
;}
case
94
:
case
94
:
#line 71
7
"c-parse.y"
#line 71
8
"c-parse.y"
{
yyval
.
ttype
=
build_function_call
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
build_function_call
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
95
:
case
95
:
#line 7
19
"c-parse.y"
#line 7
20
"c-parse.y"
{
yyval
.
ttype
=
build_array_ref
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
build_array_ref
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
96
:
case
96
:
#line 72
1
"c-parse.y"
#line 72
2
"c-parse.y"
{
{
yyval
.
ttype
=
build_component_ref
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
yyval
.
ttype
=
build_component_ref
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
;
break
;}
break
;}
case
97
:
case
97
:
#line 72
5
"c-parse.y"
#line 72
6
"c-parse.y"
{
{
tree
expr
=
build_indirect_ref
(
yyvsp
[
-
2
].
ttype
,
"->"
);
tree
expr
=
build_indirect_ref
(
yyvsp
[
-
2
].
ttype
,
"->"
);
...
@@ -2401,57 +2401,57 @@ case 97:
...
@@ -2401,57 +2401,57 @@ case 97:
;
;
break
;}
break
;}
case
98
:
case
98
:
#line 73
1
"c-parse.y"
#line 73
2
"c-parse.y"
{
yyval
.
ttype
=
build_unary_op
(
POSTINCREMENT_EXPR
,
yyvsp
[
-
1
].
ttype
,
0
);
;
{
yyval
.
ttype
=
build_unary_op
(
POSTINCREMENT_EXPR
,
yyvsp
[
-
1
].
ttype
,
0
);
;
break
;}
break
;}
case
99
:
case
99
:
#line 73
3
"c-parse.y"
#line 73
4
"c-parse.y"
{
yyval
.
ttype
=
build_unary_op
(
POSTDECREMENT_EXPR
,
yyvsp
[
-
1
].
ttype
,
0
);
;
{
yyval
.
ttype
=
build_unary_op
(
POSTDECREMENT_EXPR
,
yyvsp
[
-
1
].
ttype
,
0
);
;
break
;}
break
;}
case
101
:
case
101
:
#line 74
0
"c-parse.y"
#line 74
1
"c-parse.y"
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
if
(
warn_traditional
&&
!
in_system_header
)
if
(
warn_traditional
&&
!
in_system_header
)
warning
(
"Use of ANSI string concatenation"
);
warning
(
"Use of ANSI string concatenation"
);
;
;
break
;}
break
;}
case
104
:
case
104
:
#line 75
2
"c-parse.y"
#line 75
3
"c-parse.y"
{
c_mark_varargs
();
{
c_mark_varargs
();
if
(
pedantic
)
if
(
pedantic
)
pedwarn
(
"ANSI C does not permit use of `varargs.h'"
);
;
pedwarn
(
"ANSI C does not permit use of `varargs.h'"
);
;
break
;}
break
;}
case
105
:
case
105
:
#line 76
2
"c-parse.y"
#line 76
3
"c-parse.y"
{
;
{
;
break
;}
break
;}
case
110
:
case
110
:
#line 77
8
"c-parse.y"
#line 77
9
"c-parse.y"
{
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
{
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
break
;}
break
;}
case
111
:
case
111
:
#line 78
2
"c-parse.y"
#line 78
3
"c-parse.y"
{
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
{
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
break
;}
break
;}
case
112
:
case
112
:
#line 78
6
"c-parse.y"
#line 78
7
"c-parse.y"
{
shadow_tag_warned
(
yyvsp
[
-
1
].
ttype
,
1
);
{
shadow_tag_warned
(
yyvsp
[
-
1
].
ttype
,
1
);
pedwarn
(
"empty declaration"
);
;
pedwarn
(
"empty declaration"
);
;
break
;}
break
;}
case
113
:
case
113
:
#line 7
89
"c-parse.y"
#line 7
90
"c-parse.y"
{
pedwarn
(
"empty declaration"
);
;
{
pedwarn
(
"empty declaration"
);
;
break
;}
break
;}
case
114
:
case
114
:
#line 79
8
"c-parse.y"
#line 79
9
"c-parse.y"
{
;
{
;
break
;}
break
;}
case
119
:
case
119
:
#line 81
3
"c-parse.y"
#line 81
4
"c-parse.y"
{
pending_xref_error
();
{
pending_xref_error
();
declspec_stack
=
tree_cons
(
prefix_attributes
,
declspec_stack
=
tree_cons
(
prefix_attributes
,
current_declspecs
,
current_declspecs
,
...
@@ -2460,127 +2460,127 @@ case 119:
...
@@ -2460,127 +2460,127 @@ case 119:
&
current_declspecs
,
&
prefix_attributes
);
;
&
current_declspecs
,
&
prefix_attributes
);
;
break
;}
break
;}
case
120
:
case
120
:
#line 82
3
"c-parse.y"
#line 82
4
"c-parse.y"
{
prefix_attributes
=
chainon
(
prefix_attributes
,
yyvsp
[
0
].
ttype
);
;
{
prefix_attributes
=
chainon
(
prefix_attributes
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
121
:
case
121
:
#line 82
8
"c-parse.y"
#line 82
9
"c-parse.y"
{
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
{
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
break
;}
break
;}
case
122
:
case
122
:
#line 83
2
"c-parse.y"
#line 83
3
"c-parse.y"
{
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
{
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
break
;}
break
;}
case
123
:
case
123
:
#line 83
6
"c-parse.y"
#line 83
7
"c-parse.y"
{
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
{
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
break
;}
break
;}
case
124
:
case
124
:
#line 84
0
"c-parse.y"
#line 84
1
"c-parse.y"
{
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
{
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
break
;}
break
;}
case
125
:
case
125
:
#line 84
4
"c-parse.y"
#line 84
5
"c-parse.y"
{
shadow_tag
(
yyvsp
[
-
1
].
ttype
);
;
{
shadow_tag
(
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
126
:
case
126
:
#line 84
6
"c-parse.y"
#line 84
7
"c-parse.y"
{
pedwarn
(
"empty declaration"
);
;
{
pedwarn
(
"empty declaration"
);
;
break
;}
break
;}
case
127
:
case
127
:
#line 84
8
"c-parse.y"
#line 84
9
"c-parse.y"
{
RESTORE_WARN_FLAGS
(
yyvsp
[
-
1
].
ttype
);
;
{
RESTORE_WARN_FLAGS
(
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
128
:
case
128
:
#line 85
8
"c-parse.y"
#line 85
9
"c-parse.y"
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
129
:
case
129
:
#line 86
0
"c-parse.y"
#line 86
1
"c-parse.y"
{
yyval
.
ttype
=
chainon
(
yyvsp
[
0
].
ttype
,
tree_cons
(
NULL_TREE
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
-
2
].
ttype
));
;
{
yyval
.
ttype
=
chainon
(
yyvsp
[
0
].
ttype
,
tree_cons
(
NULL_TREE
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
-
2
].
ttype
));
;
break
;}
break
;}
case
130
:
case
130
:
#line 86
4
"c-parse.y"
#line 86
5
"c-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
131
:
case
131
:
#line 86
6
"c-parse.y"
#line 86
7
"c-parse.y"
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
132
:
case
132
:
#line 86
8
"c-parse.y"
#line 86
9
"c-parse.y"
{
if
(
extra_warnings
)
{
if
(
extra_warnings
)
warning
(
"`%s' is not at beginning of declaration"
,
warning
(
"`%s' is not at beginning of declaration"
,
IDENTIFIER_POINTER
(
yyvsp
[
0
].
ttype
));
IDENTIFIER_POINTER
(
yyvsp
[
0
].
ttype
));
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
133
:
case
133
:
#line 87
3
"c-parse.y"
#line 87
4
"c-parse.y"
{
yyval
.
ttype
=
tree_cons
(
yyvsp
[
0
].
ttype
,
NULL_TREE
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
tree_cons
(
yyvsp
[
0
].
ttype
,
NULL_TREE
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
134
:
case
134
:
#line 87
8
"c-parse.y"
#line 87
9
"c-parse.y"
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
135
:
case
135
:
#line 88
0
"c-parse.y"
#line 88
1
"c-parse.y"
{
yyval
.
ttype
=
chainon
(
yyvsp
[
0
].
ttype
,
tree_cons
(
NULL_TREE
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
-
2
].
ttype
));
;
{
yyval
.
ttype
=
chainon
(
yyvsp
[
0
].
ttype
,
tree_cons
(
NULL_TREE
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
-
2
].
ttype
));
;
break
;}
break
;}
case
136
:
case
136
:
#line 88
5
"c-parse.y"
#line 88
6
"c-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
137
:
case
137
:
#line 88
7
"c-parse.y"
#line 88
8
"c-parse.y"
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
138
:
case
138
:
#line 8
89
"c-parse.y"
#line 8
90
"c-parse.y"
{
if
(
extra_warnings
)
{
if
(
extra_warnings
)
warning
(
"`%s' is not at beginning of declaration"
,
warning
(
"`%s' is not at beginning of declaration"
,
IDENTIFIER_POINTER
(
yyvsp
[
0
].
ttype
));
IDENTIFIER_POINTER
(
yyvsp
[
0
].
ttype
));
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
139
:
case
139
:
#line 90
2
"c-parse.y"
#line 90
3
"c-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
140
:
case
140
:
#line 90
4
"c-parse.y"
#line 90
5
"c-parse.y"
{
yyval
.
ttype
=
tree_cons
(
yyvsp
[
0
].
ttype
,
NULL_TREE
,
NULL_TREE
);
;
{
yyval
.
ttype
=
tree_cons
(
yyvsp
[
0
].
ttype
,
NULL_TREE
,
NULL_TREE
);
;
break
;}
break
;}
case
141
:
case
141
:
#line 90
6
"c-parse.y"
#line 90
7
"c-parse.y"
{
yyval
.
ttype
=
chainon
(
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
chainon
(
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
142
:
case
142
:
#line 90
8
"c-parse.y"
#line 90
9
"c-parse.y"
{
yyval
.
ttype
=
tree_cons
(
yyvsp
[
0
].
ttype
,
NULL_TREE
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
tree_cons
(
yyvsp
[
0
].
ttype
,
NULL_TREE
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
143
:
case
143
:
#line 91
3
"c-parse.y"
#line 91
4
"c-parse.y"
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
NULL_TREE
);
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
NULL_TREE
);
TREE_STATIC
(
yyval
.
ttype
)
=
1
;
;
TREE_STATIC
(
yyval
.
ttype
)
=
1
;
;
break
;}
break
;}
case
144
:
case
144
:
#line 91
6
"c-parse.y"
#line 91
7
"c-parse.y"
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
break
;}
break
;}
case
145
:
case
145
:
#line 91
8
"c-parse.y"
#line 91
9
"c-parse.y"
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ttype
);
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ttype
);
TREE_STATIC
(
yyval
.
ttype
)
=
1
;
;
TREE_STATIC
(
yyval
.
ttype
)
=
1
;
;
break
;}
break
;}
case
146
:
case
146
:
#line 92
1
"c-parse.y"
#line 92
2
"c-parse.y"
{
if
(
extra_warnings
&&
TREE_STATIC
(
yyvsp
[
-
1
].
ttype
))
{
if
(
extra_warnings
&&
TREE_STATIC
(
yyvsp
[
-
1
].
ttype
))
warning
(
"`%s' is not at beginning of declaration"
,
warning
(
"`%s' is not at beginning of declaration"
,
IDENTIFIER_POINTER
(
yyvsp
[
0
].
ttype
));
IDENTIFIER_POINTER
(
yyvsp
[
0
].
ttype
));
...
@@ -2588,176 +2588,176 @@ case 146:
...
@@ -2588,176 +2588,176 @@ case 146:
TREE_STATIC
(
yyval
.
ttype
)
=
TREE_STATIC
(
yyvsp
[
-
1
].
ttype
);
;
TREE_STATIC
(
yyval
.
ttype
)
=
TREE_STATIC
(
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
147
:
case
147
:
#line 93
5
"c-parse.y"
#line 93
6
"c-parse.y"
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
148
:
case
148
:
#line 93
7
"c-parse.y"
#line 93
8
"c-parse.y"
{
yyval
.
ttype
=
chainon
(
yyvsp
[
0
].
ttype
,
tree_cons
(
NULL_TREE
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
-
2
].
ttype
));
;
{
yyval
.
ttype
=
chainon
(
yyvsp
[
0
].
ttype
,
tree_cons
(
NULL_TREE
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
-
2
].
ttype
));
;
break
;}
break
;}
case
149
:
case
149
:
#line 94
1
"c-parse.y"
#line 94
2
"c-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
150
:
case
150
:
#line 94
3
"c-parse.y"
#line 94
4
"c-parse.y"
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
153
:
case
153
:
#line 95
3
"c-parse.y"
#line 95
4
"c-parse.y"
{
/* For a typedef name, record the meaning, not the name.
{
/* For a typedef name, record the meaning, not the name.
In case of `foo foo, bar;'. */
In case of `foo foo, bar;'. */
yyval
.
ttype
=
lookup_name
(
yyvsp
[
0
].
ttype
);
;
yyval
.
ttype
=
lookup_name
(
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
154
:
case
154
:
#line 95
7
"c-parse.y"
#line 95
8
"c-parse.y"
{
yyval
.
ttype
=
TREE_TYPE
(
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
TREE_TYPE
(
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
155
:
case
155
:
#line 9
59
"c-parse.y"
#line 9
60
"c-parse.y"
{
yyval
.
ttype
=
groktypename
(
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
groktypename
(
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
163
:
case
163
:
#line 98
1
"c-parse.y"
#line 98
2
"c-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
164
:
case
164
:
#line 98
3
"c-parse.y"
#line 98
4
"c-parse.y"
{
if
(
TREE_CHAIN
(
yyvsp
[
-
1
].
ttype
))
yyvsp
[
-
1
].
ttype
=
combine_strings
(
yyvsp
[
-
1
].
ttype
);
{
if
(
TREE_CHAIN
(
yyvsp
[
-
1
].
ttype
))
yyvsp
[
-
1
].
ttype
=
combine_strings
(
yyvsp
[
-
1
].
ttype
);
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
;
;
break
;}
break
;}
case
165
:
case
165
:
#line 99
0
"c-parse.y"
#line 99
1
"c-parse.y"
{
yyval
.
ttype
=
start_decl
(
yyvsp
[
-
3
].
ttype
,
current_declspecs
,
1
,
{
yyval
.
ttype
=
start_decl
(
yyvsp
[
-
3
].
ttype
,
current_declspecs
,
1
,
yyvsp
[
-
1
].
ttype
,
prefix_attributes
);
yyvsp
[
-
1
].
ttype
,
prefix_attributes
);
start_init
(
yyval
.
ttype
,
yyvsp
[
-
2
].
ttype
,
global_bindings_p
());
;
start_init
(
yyval
.
ttype
,
yyvsp
[
-
2
].
ttype
,
global_bindings_p
());
;
break
;}
break
;}
case
166
:
case
166
:
#line 99
5
"c-parse.y"
#line 99
6
"c-parse.y"
{
finish_init
();
{
finish_init
();
finish_decl
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
4
].
ttype
);
;
finish_decl
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
4
].
ttype
);
;
break
;}
break
;}
case
167
:
case
167
:
#line 99
8
"c-parse.y"
#line 99
9
"c-parse.y"
{
tree
d
=
start_decl
(
yyvsp
[
-
2
].
ttype
,
current_declspecs
,
0
,
{
tree
d
=
start_decl
(
yyvsp
[
-
2
].
ttype
,
current_declspecs
,
0
,
yyvsp
[
0
].
ttype
,
prefix_attributes
);
yyvsp
[
0
].
ttype
,
prefix_attributes
);
finish_decl
(
d
,
NULL_TREE
,
yyvsp
[
-
1
].
ttype
);
finish_decl
(
d
,
NULL_TREE
,
yyvsp
[
-
1
].
ttype
);
;
;
break
;}
break
;}
case
168
:
case
168
:
#line 100
6
"c-parse.y"
#line 100
7
"c-parse.y"
{
yyval
.
ttype
=
start_decl
(
yyvsp
[
-
3
].
ttype
,
current_declspecs
,
1
,
{
yyval
.
ttype
=
start_decl
(
yyvsp
[
-
3
].
ttype
,
current_declspecs
,
1
,
yyvsp
[
-
1
].
ttype
,
prefix_attributes
);
yyvsp
[
-
1
].
ttype
,
prefix_attributes
);
start_init
(
yyval
.
ttype
,
yyvsp
[
-
2
].
ttype
,
global_bindings_p
());
;
start_init
(
yyval
.
ttype
,
yyvsp
[
-
2
].
ttype
,
global_bindings_p
());
;
break
;}
break
;}
case
169
:
case
169
:
#line 101
1
"c-parse.y"
#line 101
2
"c-parse.y"
{
finish_init
();
{
finish_init
();
decl_attributes
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
-
3
].
ttype
,
prefix_attributes
);
decl_attributes
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
-
3
].
ttype
,
prefix_attributes
);
finish_decl
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
4
].
ttype
);
;
finish_decl
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
4
].
ttype
);
;
break
;}
break
;}
case
170
:
case
170
:
#line 101
5
"c-parse.y"
#line 101
6
"c-parse.y"
{
tree
d
=
start_decl
(
yyvsp
[
-
2
].
ttype
,
current_declspecs
,
0
,
{
tree
d
=
start_decl
(
yyvsp
[
-
2
].
ttype
,
current_declspecs
,
0
,
yyvsp
[
0
].
ttype
,
prefix_attributes
);
yyvsp
[
0
].
ttype
,
prefix_attributes
);
finish_decl
(
d
,
NULL_TREE
,
yyvsp
[
-
1
].
ttype
);
;
finish_decl
(
d
,
NULL_TREE
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
171
:
case
171
:
#line 102
3
"c-parse.y"
#line 102
4
"c-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
172
:
case
172
:
#line 102
5
"c-parse.y"
#line 102
6
"c-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
173
:
case
173
:
#line 103
0
"c-parse.y"
#line 103
1
"c-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
174
:
case
174
:
#line 103
2
"c-parse.y"
#line 103
3
"c-parse.y"
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
175
:
case
175
:
#line 103
7
"c-parse.y"
#line 103
8
"c-parse.y"
{
yyval
.
ttype
=
yyvsp
[
-
2
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
-
2
].
ttype
;
;
break
;}
break
;}
case
176
:
case
176
:
#line 104
2
"c-parse.y"
#line 104
3
"c-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
177
:
case
177
:
#line 104
4
"c-parse.y"
#line 104
5
"c-parse.y"
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
178
:
case
178
:
#line 10
49
"c-parse.y"
#line 10
50
"c-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
179
:
case
179
:
#line 105
1
"c-parse.y"
#line 105
2
"c-parse.y"
{
yyval
.
ttype
=
build_tree_list
(
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
{
yyval
.
ttype
=
build_tree_list
(
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
break
;}
break
;}
case
180
:
case
180
:
#line 105
3
"c-parse.y"
#line 105
4
"c-parse.y"
{
yyval
.
ttype
=
build_tree_list
(
yyvsp
[
-
3
].
ttype
,
build_tree_list
(
NULL_TREE
,
yyvsp
[
-
1
].
ttype
));
;
{
yyval
.
ttype
=
build_tree_list
(
yyvsp
[
-
3
].
ttype
,
build_tree_list
(
NULL_TREE
,
yyvsp
[
-
1
].
ttype
));
;
break
;}
break
;}
case
181
:
case
181
:
#line 105
5
"c-parse.y"
#line 105
6
"c-parse.y"
{
yyval
.
ttype
=
build_tree_list
(
yyvsp
[
-
5
].
ttype
,
tree_cons
(
NULL_TREE
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
));
;
{
yyval
.
ttype
=
build_tree_list
(
yyvsp
[
-
5
].
ttype
,
tree_cons
(
NULL_TREE
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
));
;
break
;}
break
;}
case
182
:
case
182
:
#line 105
7
"c-parse.y"
#line 105
8
"c-parse.y"
{
yyval
.
ttype
=
build_tree_list
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
build_tree_list
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
188
:
case
188
:
#line 107
5
"c-parse.y"
#line 107
6
"c-parse.y"
{
really_start_incremental_init
(
NULL_TREE
);
;
{
really_start_incremental_init
(
NULL_TREE
);
;
break
;}
break
;}
case
189
:
case
189
:
#line 107
7
"c-parse.y"
#line 107
8
"c-parse.y"
{
yyval
.
ttype
=
pop_init_level
(
0
);
;
{
yyval
.
ttype
=
pop_init_level
(
0
);
;
break
;}
break
;}
case
190
:
case
190
:
#line 10
79
"c-parse.y"
#line 10
80
"c-parse.y"
{
yyval
.
ttype
=
error_mark_node
;
;
{
yyval
.
ttype
=
error_mark_node
;
;
break
;}
break
;}
case
191
:
case
191
:
#line 108
5
"c-parse.y"
#line 108
6
"c-parse.y"
{
if
(
pedantic
)
{
if
(
pedantic
)
pedwarn
(
"ANSI C forbids empty initializer braces"
);
;
pedwarn
(
"ANSI C forbids empty initializer braces"
);
;
break
;}
break
;}
case
197
:
case
197
:
#line 110
1
"c-parse.y"
#line 110
2
"c-parse.y"
{
set_init_label
(
yyvsp
[
-
1
].
ttype
);
;
{
set_init_label
(
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
200
:
case
200
:
#line 110
8
"c-parse.y"
#line 110
9
"c-parse.y"
{
push_init_level
(
0
);
;
{
push_init_level
(
0
);
;
break
;}
break
;}
case
201
:
case
201
:
#line 111
0
"c-parse.y"
#line 111
1
"c-parse.y"
{
process_init_element
(
pop_init_level
(
0
));
;
{
process_init_element
(
pop_init_level
(
0
));
;
break
;}
break
;}
case
202
:
case
202
:
#line 111
2
"c-parse.y"
#line 111
3
"c-parse.y"
{
process_init_element
(
yyvsp
[
0
].
ttype
);
;
{
process_init_element
(
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
206
:
case
206
:
#line 112
3
"c-parse.y"
#line 112
4
"c-parse.y"
{
set_init_label
(
yyvsp
[
0
].
ttype
);
;
{
set_init_label
(
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
207
:
case
207
:
#line 112
8
"c-parse.y"
#line 112
9
"c-parse.y"
{
set_init_index
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
set_init_index
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
208
:
case
208
:
#line 113
0
"c-parse.y"
#line 113
1
"c-parse.y"
{
set_init_index
(
yyvsp
[
-
1
].
ttype
,
NULL_TREE
);
;
{
set_init_index
(
yyvsp
[
-
1
].
ttype
,
NULL_TREE
);
;
break
;}
break
;}
case
209
:
case
209
:
#line 113
5
"c-parse.y"
#line 113
6
"c-parse.y"
{
if
(
pedantic
)
{
if
(
pedantic
)
pedwarn
(
"ANSI C forbids nested functions"
);
pedwarn
(
"ANSI C forbids nested functions"
);
...
@@ -2771,16 +2771,16 @@ case 209:
...
@@ -2771,16 +2771,16 @@ case 209:
reinit_parse_for_function
();
;
reinit_parse_for_function
();
;
break
;}
break
;}
case
210
:
case
210
:
#line 114
7
"c-parse.y"
#line 114
8
"c-parse.y"
{
store_parm_decls
();
;
{
store_parm_decls
();
;
break
;}
break
;}
case
211
:
case
211
:
#line 115
5
"c-parse.y"
#line 115
6
"c-parse.y"
{
finish_function
(
1
);
{
finish_function
(
1
);
pop_function_context
();
;
pop_function_context
();
;
break
;}
break
;}
case
212
:
case
212
:
#line 116
1
"c-parse.y"
#line 116
2
"c-parse.y"
{
if
(
pedantic
)
{
if
(
pedantic
)
pedwarn
(
"ANSI C forbids nested functions"
);
pedwarn
(
"ANSI C forbids nested functions"
);
...
@@ -2794,216 +2794,216 @@ case 212:
...
@@ -2794,216 +2794,216 @@ case 212:
reinit_parse_for_function
();
;
reinit_parse_for_function
();
;
break
;}
break
;}
case
213
:
case
213
:
#line 117
3
"c-parse.y"
#line 117
4
"c-parse.y"
{
store_parm_decls
();
;
{
store_parm_decls
();
;
break
;}
break
;}
case
214
:
case
214
:
#line 118
1
"c-parse.y"
#line 118
2
"c-parse.y"
{
finish_function
(
1
);
{
finish_function
(
1
);
pop_function_context
();
;
pop_function_context
();
;
break
;}
break
;}
case
217
:
case
217
:
#line 119
7
"c-parse.y"
#line 119
8
"c-parse.y"
{
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
;
break
;}
break
;}
case
218
:
case
218
:
#line 1
199
"c-parse.y"
#line 1
200
"c-parse.y"
{
yyval
.
ttype
=
build_nt
(
CALL_EXPR
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
{
yyval
.
ttype
=
build_nt
(
CALL_EXPR
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
break
;}
break
;}
case
219
:
case
219
:
#line 120
4
"c-parse.y"
#line 120
5
"c-parse.y"
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
220
:
case
220
:
#line 120
6
"c-parse.y"
#line 120
7
"c-parse.y"
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
yyvsp
[
-
2
].
ttype
,
NULL_TREE
);
;
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
yyvsp
[
-
2
].
ttype
,
NULL_TREE
);
;
break
;}
break
;}
case
221
:
case
221
:
#line 120
8
"c-parse.y"
#line 120
9
"c-parse.y"
{
yyval
.
ttype
=
make_pointer_declarator
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
make_pointer_declarator
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
222
:
case
222
:
#line 121
5
"c-parse.y"
#line 121
6
"c-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
224
:
case
224
:
#line 122
6
"c-parse.y"
#line 122
7
"c-parse.y"
{
yyval
.
ttype
=
build_nt
(
CALL_EXPR
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
{
yyval
.
ttype
=
build_nt
(
CALL_EXPR
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
break
;}
break
;}
case
225
:
case
225
:
#line 123
1
"c-parse.y"
#line 123
2
"c-parse.y"
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
yyvsp
[
-
3
].
ttype
,
NULL_TREE
);
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
yyvsp
[
-
3
].
ttype
,
NULL_TREE
);
if
(
!
flag_isoc99
)
if
(
!
flag_isoc99
)
error
(
"`[*]' in parameter declaration only allowed in ISO C 99"
);
error
(
"`[*]' in parameter declaration only allowed in ISO C 99"
);
;
;
break
;}
break
;}
case
226
:
case
226
:
#line 123
6
"c-parse.y"
#line 123
7
"c-parse.y"
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
227
:
case
227
:
#line 123
8
"c-parse.y"
#line 123
9
"c-parse.y"
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
yyvsp
[
-
2
].
ttype
,
NULL_TREE
);
;
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
yyvsp
[
-
2
].
ttype
,
NULL_TREE
);
;
break
;}
break
;}
case
228
:
case
228
:
#line 124
0
"c-parse.y"
#line 124
1
"c-parse.y"
{
yyval
.
ttype
=
make_pointer_declarator
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
make_pointer_declarator
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
229
:
case
229
:
#line 124
7
"c-parse.y"
#line 124
8
"c-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
231
:
case
231
:
#line 125
6
"c-parse.y"
#line 125
7
"c-parse.y"
{
yyval
.
ttype
=
build_nt
(
CALL_EXPR
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
{
yyval
.
ttype
=
build_nt
(
CALL_EXPR
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
break
;}
break
;}
case
232
:
case
232
:
#line 126
1
"c-parse.y"
#line 126
2
"c-parse.y"
{
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
;
break
;}
break
;}
case
233
:
case
233
:
#line 126
3
"c-parse.y"
#line 126
4
"c-parse.y"
{
yyval
.
ttype
=
make_pointer_declarator
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
make_pointer_declarator
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
234
:
case
234
:
#line 126
5
"c-parse.y"
#line 126
6
"c-parse.y"
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
yyvsp
[
-
3
].
ttype
,
NULL_TREE
);
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
yyvsp
[
-
3
].
ttype
,
NULL_TREE
);
if
(
!
flag_isoc99
)
if
(
!
flag_isoc99
)
error
(
"`[*]' in parameter declaration only allowed in ISO C 99"
);
error
(
"`[*]' in parameter declaration only allowed in ISO C 99"
);
;
;
break
;}
break
;}
case
235
:
case
235
:
#line 127
0
"c-parse.y"
#line 127
1
"c-parse.y"
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
236
:
case
236
:
#line 127
2
"c-parse.y"
#line 127
3
"c-parse.y"
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
yyvsp
[
-
2
].
ttype
,
NULL_TREE
);
;
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
yyvsp
[
-
2
].
ttype
,
NULL_TREE
);
;
break
;}
break
;}
case
237
:
case
237
:
#line 12
79
"c-parse.y"
#line 12
80
"c-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
239
:
case
239
:
#line 128
5
"c-parse.y"
#line 128
6
"c-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
240
:
case
240
:
#line 128
7
"c-parse.y"
#line 128
8
"c-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
241
:
case
241
:
#line 129
2
"c-parse.y"
#line 129
3
"c-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
242
:
case
242
:
#line 129
4
"c-parse.y"
#line 129
5
"c-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
243
:
case
243
:
#line 1
299
"c-parse.y"
#line 1
300
"c-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
244
:
case
244
:
#line 130
1
"c-parse.y"
#line 130
2
"c-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
245
:
case
245
:
#line 130
6
"c-parse.y"
#line 130
7
"c-parse.y"
{
yyval
.
ttype
=
start_struct
(
RECORD_TYPE
,
yyvsp
[
-
1
].
ttype
);
{
yyval
.
ttype
=
start_struct
(
RECORD_TYPE
,
yyvsp
[
-
1
].
ttype
);
/* Start scope of tag before parsing components. */
/* Start scope of tag before parsing components. */
;
;
break
;}
break
;}
case
246
:
case
246
:
#line 131
0
"c-parse.y"
#line 131
1
"c-parse.y"
{
yyval
.
ttype
=
finish_struct
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
2
].
ttype
,
chainon
(
yyvsp
[
-
6
].
ttype
,
yyvsp
[
0
].
ttype
));
;
{
yyval
.
ttype
=
finish_struct
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
2
].
ttype
,
chainon
(
yyvsp
[
-
6
].
ttype
,
yyvsp
[
0
].
ttype
));
;
break
;}
break
;}
case
247
:
case
247
:
#line 131
2
"c-parse.y"
#line 131
3
"c-parse.y"
{
yyval
.
ttype
=
finish_struct
(
start_struct
(
RECORD_TYPE
,
NULL_TREE
),
{
yyval
.
ttype
=
finish_struct
(
start_struct
(
RECORD_TYPE
,
NULL_TREE
),
yyvsp
[
-
2
].
ttype
,
chainon
(
yyvsp
[
-
4
].
ttype
,
yyvsp
[
0
].
ttype
));
yyvsp
[
-
2
].
ttype
,
chainon
(
yyvsp
[
-
4
].
ttype
,
yyvsp
[
0
].
ttype
));
;
;
break
;}
break
;}
case
248
:
case
248
:
#line 131
6
"c-parse.y"
#line 131
7
"c-parse.y"
{
yyval
.
ttype
=
xref_tag
(
RECORD_TYPE
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
xref_tag
(
RECORD_TYPE
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
249
:
case
249
:
#line 131
8
"c-parse.y"
#line 131
9
"c-parse.y"
{
yyval
.
ttype
=
start_struct
(
UNION_TYPE
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
start_struct
(
UNION_TYPE
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
250
:
case
250
:
#line 132
0
"c-parse.y"
#line 132
1
"c-parse.y"
{
yyval
.
ttype
=
finish_struct
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
2
].
ttype
,
chainon
(
yyvsp
[
-
6
].
ttype
,
yyvsp
[
0
].
ttype
));
;
{
yyval
.
ttype
=
finish_struct
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
2
].
ttype
,
chainon
(
yyvsp
[
-
6
].
ttype
,
yyvsp
[
0
].
ttype
));
;
break
;}
break
;}
case
251
:
case
251
:
#line 132
2
"c-parse.y"
#line 132
3
"c-parse.y"
{
yyval
.
ttype
=
finish_struct
(
start_struct
(
UNION_TYPE
,
NULL_TREE
),
{
yyval
.
ttype
=
finish_struct
(
start_struct
(
UNION_TYPE
,
NULL_TREE
),
yyvsp
[
-
2
].
ttype
,
chainon
(
yyvsp
[
-
4
].
ttype
,
yyvsp
[
0
].
ttype
));
yyvsp
[
-
2
].
ttype
,
chainon
(
yyvsp
[
-
4
].
ttype
,
yyvsp
[
0
].
ttype
));
;
;
break
;}
break
;}
case
252
:
case
252
:
#line 132
6
"c-parse.y"
#line 132
7
"c-parse.y"
{
yyval
.
ttype
=
xref_tag
(
UNION_TYPE
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
xref_tag
(
UNION_TYPE
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
253
:
case
253
:
#line 132
8
"c-parse.y"
#line 132
9
"c-parse.y"
{
yyval
.
ttype
=
start_enum
(
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
start_enum
(
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
254
:
case
254
:
#line 133
0
"c-parse.y"
#line 133
1
"c-parse.y"
{
yyval
.
ttype
=
finish_enum
(
yyvsp
[
-
4
].
ttype
,
nreverse
(
yyvsp
[
-
3
].
ttype
),
{
yyval
.
ttype
=
finish_enum
(
yyvsp
[
-
4
].
ttype
,
nreverse
(
yyvsp
[
-
3
].
ttype
),
chainon
(
yyvsp
[
-
7
].
ttype
,
yyvsp
[
0
].
ttype
));
;
chainon
(
yyvsp
[
-
7
].
ttype
,
yyvsp
[
0
].
ttype
));
;
break
;}
break
;}
case
255
:
case
255
:
#line 133
3
"c-parse.y"
#line 133
4
"c-parse.y"
{
yyval
.
ttype
=
start_enum
(
NULL_TREE
);
;
{
yyval
.
ttype
=
start_enum
(
NULL_TREE
);
;
break
;}
break
;}
case
256
:
case
256
:
#line 133
5
"c-parse.y"
#line 133
6
"c-parse.y"
{
yyval
.
ttype
=
finish_enum
(
yyvsp
[
-
4
].
ttype
,
nreverse
(
yyvsp
[
-
3
].
ttype
),
{
yyval
.
ttype
=
finish_enum
(
yyvsp
[
-
4
].
ttype
,
nreverse
(
yyvsp
[
-
3
].
ttype
),
chainon
(
yyvsp
[
-
6
].
ttype
,
yyvsp
[
0
].
ttype
));
;
chainon
(
yyvsp
[
-
6
].
ttype
,
yyvsp
[
0
].
ttype
));
;
break
;}
break
;}
case
257
:
case
257
:
#line 133
8
"c-parse.y"
#line 133
9
"c-parse.y"
{
yyval
.
ttype
=
xref_tag
(
ENUMERAL_TYPE
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
xref_tag
(
ENUMERAL_TYPE
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
261
:
case
261
:
#line 13
49
"c-parse.y"
#line 13
50
"c-parse.y"
{
if
(
pedantic
&&
!
flag_isoc99
)
{
if
(
pedantic
&&
!
flag_isoc99
)
pedwarn
(
"comma at end of enumerator list"
);
;
pedwarn
(
"comma at end of enumerator list"
);
;
break
;}
break
;}
case
262
:
case
262
:
#line 135
5
"c-parse.y"
#line 135
6
"c-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
263
:
case
263
:
#line 135
7
"c-parse.y"
#line 135
8
"c-parse.y"
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
pedwarn
(
"no semicolon at end of struct or union"
);
;
pedwarn
(
"no semicolon at end of struct or union"
);
;
break
;}
break
;}
case
264
:
case
264
:
#line 136
2
"c-parse.y"
#line 136
3
"c-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
265
:
case
265
:
#line 136
4
"c-parse.y"
#line 136
5
"c-parse.y"
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
266
:
case
266
:
#line 136
6
"c-parse.y"
#line 136
7
"c-parse.y"
{
if
(
pedantic
)
{
if
(
pedantic
)
pedwarn
(
"extra semicolon in struct or union specified"
);
;
pedwarn
(
"extra semicolon in struct or union specified"
);
;
break
;}
break
;}
case
267
:
case
267
:
#line 138
1
"c-parse.y"
#line 138
2
"c-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
break
;}
break
;}
case
268
:
case
268
:
#line 138
6
"c-parse.y"
#line 138
7
"c-parse.y"
{
{
/* Support for unnamed structs or unions as members of
/* Support for unnamed structs or unions as members of
structs or unions (which is [a] useful and [b] supports
structs or unions (which is [a] useful and [b] supports
...
@@ -3018,151 +3018,151 @@ case 268:
...
@@ -3018,151 +3018,151 @@ case 268:
;
;
break
;}
break
;}
case
269
:
case
269
:
#line 1
399
"c-parse.y"
#line 1
400
"c-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
break
;}
break
;}
case
270
:
case
270
:
#line 140
4
"c-parse.y"
#line 140
5
"c-parse.y"
{
if
(
pedantic
)
{
if
(
pedantic
)
pedwarn
(
"ANSI C forbids member declarations with no members"
);
pedwarn
(
"ANSI C forbids member declarations with no members"
);
shadow_tag
(
yyvsp
[
0
].
ttype
);
shadow_tag
(
yyvsp
[
0
].
ttype
);
yyval
.
ttype
=
NULL_TREE
;
;
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
271
:
case
271
:
#line 14
09
"c-parse.y"
#line 14
10
"c-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
272
:
case
272
:
#line 141
1
"c-parse.y"
#line 141
2
"c-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
RESTORE_WARN_FLAGS
(
yyvsp
[
-
1
].
ttype
);
;
RESTORE_WARN_FLAGS
(
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
274
:
case
274
:
#line 141
8
"c-parse.y"
#line 141
9
"c-parse.y"
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
275
:
case
275
:
#line 142
3
"c-parse.y"
#line 142
4
"c-parse.y"
{
yyval
.
ttype
=
grokfield
(
yyvsp
[
-
3
].
filename
,
yyvsp
[
-
2
].
lineno
,
yyvsp
[
-
1
].
ttype
,
current_declspecs
,
NULL_TREE
);
{
yyval
.
ttype
=
grokfield
(
yyvsp
[
-
3
].
filename
,
yyvsp
[
-
2
].
lineno
,
yyvsp
[
-
1
].
ttype
,
current_declspecs
,
NULL_TREE
);
decl_attributes
(
yyval
.
ttype
,
yyvsp
[
0
].
ttype
,
prefix_attributes
);
;
decl_attributes
(
yyval
.
ttype
,
yyvsp
[
0
].
ttype
,
prefix_attributes
);
;
break
;}
break
;}
case
276
:
case
276
:
#line 142
7
"c-parse.y"
#line 142
8
"c-parse.y"
{
yyval
.
ttype
=
grokfield
(
yyvsp
[
-
5
].
filename
,
yyvsp
[
-
4
].
lineno
,
yyvsp
[
-
3
].
ttype
,
current_declspecs
,
yyvsp
[
-
1
].
ttype
);
{
yyval
.
ttype
=
grokfield
(
yyvsp
[
-
5
].
filename
,
yyvsp
[
-
4
].
lineno
,
yyvsp
[
-
3
].
ttype
,
current_declspecs
,
yyvsp
[
-
1
].
ttype
);
decl_attributes
(
yyval
.
ttype
,
yyvsp
[
0
].
ttype
,
prefix_attributes
);
;
decl_attributes
(
yyval
.
ttype
,
yyvsp
[
0
].
ttype
,
prefix_attributes
);
;
break
;}
break
;}
case
277
:
case
277
:
#line 143
0
"c-parse.y"
#line 143
1
"c-parse.y"
{
yyval
.
ttype
=
grokfield
(
yyvsp
[
-
4
].
filename
,
yyvsp
[
-
3
].
lineno
,
NULL_TREE
,
current_declspecs
,
yyvsp
[
-
1
].
ttype
);
{
yyval
.
ttype
=
grokfield
(
yyvsp
[
-
4
].
filename
,
yyvsp
[
-
3
].
lineno
,
NULL_TREE
,
current_declspecs
,
yyvsp
[
-
1
].
ttype
);
decl_attributes
(
yyval
.
ttype
,
yyvsp
[
0
].
ttype
,
prefix_attributes
);
;
decl_attributes
(
yyval
.
ttype
,
yyvsp
[
0
].
ttype
,
prefix_attributes
);
;
break
;}
break
;}
case
279
:
case
279
:
#line 144
2
"c-parse.y"
#line 144
3
"c-parse.y"
{
if
(
yyvsp
[
-
2
].
ttype
==
error_mark_node
)
{
if
(
yyvsp
[
-
2
].
ttype
==
error_mark_node
)
yyval
.
ttype
=
yyvsp
[
-
2
].
ttype
;
yyval
.
ttype
=
yyvsp
[
-
2
].
ttype
;
else
else
yyval
.
ttype
=
chainon
(
yyvsp
[
0
].
ttype
,
yyvsp
[
-
2
].
ttype
);
;
yyval
.
ttype
=
chainon
(
yyvsp
[
0
].
ttype
,
yyvsp
[
-
2
].
ttype
);
;
break
;}
break
;}
case
280
:
case
280
:
#line 144
7
"c-parse.y"
#line 144
8
"c-parse.y"
{
yyval
.
ttype
=
error_mark_node
;
;
{
yyval
.
ttype
=
error_mark_node
;
;
break
;}
break
;}
case
281
:
case
281
:
#line 145
3
"c-parse.y"
#line 145
4
"c-parse.y"
{
yyval
.
ttype
=
build_enumerator
(
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
{
yyval
.
ttype
=
build_enumerator
(
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
break
;}
break
;}
case
282
:
case
282
:
#line 145
5
"c-parse.y"
#line 145
6
"c-parse.y"
{
yyval
.
ttype
=
build_enumerator
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
build_enumerator
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
283
:
case
283
:
#line 146
0
"c-parse.y"
#line 146
1
"c-parse.y"
{
yyval
.
ttype
=
build_tree_list
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
build_tree_list
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
284
:
case
284
:
#line 146
2
"c-parse.y"
#line 146
3
"c-parse.y"
{
yyval
.
ttype
=
build_tree_list
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
build_tree_list
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
285
:
case
285
:
#line 146
7
"c-parse.y"
#line 146
8
"c-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
287
:
case
287
:
#line 147
3
"c-parse.y"
#line 147
4
"c-parse.y"
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
break
;}
break
;}
case
288
:
case
288
:
#line 147
5
"c-parse.y"
#line 147
6
"c-parse.y"
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
289
:
case
289
:
#line 148
0
"c-parse.y"
#line 148
1
"c-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
290
:
case
290
:
#line 148
2
"c-parse.y"
#line 148
3
"c-parse.y"
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
291
:
case
291
:
#line 148
7
"c-parse.y"
#line 148
8
"c-parse.y"
{
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
;
break
;}
break
;}
case
292
:
case
292
:
#line 149
0
"c-parse.y"
#line 149
1
"c-parse.y"
{
yyval
.
ttype
=
make_pointer_declarator
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
make_pointer_declarator
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
293
:
case
293
:
#line 149
2
"c-parse.y"
#line 149
3
"c-parse.y"
{
yyval
.
ttype
=
make_pointer_declarator
(
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
{
yyval
.
ttype
=
make_pointer_declarator
(
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
break
;}
break
;}
case
294
:
case
294
:
#line 149
4
"c-parse.y"
#line 149
5
"c-parse.y"
{
yyval
.
ttype
=
build_nt
(
CALL_EXPR
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
{
yyval
.
ttype
=
build_nt
(
CALL_EXPR
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
break
;}
break
;}
case
295
:
case
295
:
#line 149
6
"c-parse.y"
#line 149
7
"c-parse.y"
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
296
:
case
296
:
#line 149
8
"c-parse.y"
#line 149
9
"c-parse.y"
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
yyvsp
[
-
2
].
ttype
,
NULL_TREE
);
;
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
yyvsp
[
-
2
].
ttype
,
NULL_TREE
);
;
break
;}
break
;}
case
297
:
case
297
:
#line 150
0
"c-parse.y"
#line 150
1
"c-parse.y"
{
yyval
.
ttype
=
build_nt
(
CALL_EXPR
,
NULL_TREE
,
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
{
yyval
.
ttype
=
build_nt
(
CALL_EXPR
,
NULL_TREE
,
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
break
;}
break
;}
case
298
:
case
298
:
#line 150
2
"c-parse.y"
#line 150
3
"c-parse.y"
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
NULL_TREE
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
NULL_TREE
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
299
:
case
299
:
#line 150
4
"c-parse.y"
#line 150
5
"c-parse.y"
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
NULL_TREE
,
NULL_TREE
);
;
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
NULL_TREE
,
NULL_TREE
);
;
break
;}
break
;}
case
300
:
case
300
:
#line 150
8
"c-parse.y"
#line 150
9
"c-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
301
:
case
301
:
#line 151
7
"c-parse.y"
#line 151
8
"c-parse.y"
{
{
if
(
pedantic
&&
yyvsp
[
0
].
ends_in_label
)
if
(
pedantic
&&
yyvsp
[
0
].
ends_in_label
)
pedwarn
(
"ANSI C forbids label at end of compound statement"
);
pedwarn
(
"ANSI C forbids label at end of compound statement"
);
;
;
break
;}
break
;}
case
303
:
case
303
:
#line 152
6
"c-parse.y"
#line 152
7
"c-parse.y"
{
yyval
.
ends_in_label
=
yyvsp
[
0
].
ends_in_label
;
;
{
yyval
.
ends_in_label
=
yyvsp
[
0
].
ends_in_label
;
;
break
;}
break
;}
case
304
:
case
304
:
#line 152
8
"c-parse.y"
#line 152
9
"c-parse.y"
{
yyval
.
ends_in_label
=
0
;
;
{
yyval
.
ends_in_label
=
0
;
;
break
;}
break
;}
case
308
:
case
308
:
#line 154
0
"c-parse.y"
#line 154
1
"c-parse.y"
{
emit_line_note
(
input_filename
,
lineno
);
{
emit_line_note
(
input_filename
,
lineno
);
pushlevel
(
0
);
pushlevel
(
0
);
clear_last_expr
();
clear_last_expr
();
...
@@ -3170,12 +3170,12 @@ case 308:
...
@@ -3170,12 +3170,12 @@ case 308:
;
;
break
;}
break
;}
case
310
:
case
310
:
#line 155
2
"c-parse.y"
#line 155
3
"c-parse.y"
{
if
(
pedantic
)
{
if
(
pedantic
)
pedwarn
(
"ANSI C forbids label declarations"
);
;
pedwarn
(
"ANSI C forbids label declarations"
);
;
break
;}
break
;}
case
313
:
case
313
:
#line 156
3
"c-parse.y"
#line 156
4
"c-parse.y"
{
tree
link
;
{
tree
link
;
for
(
link
=
yyvsp
[
-
1
].
ttype
;
link
;
link
=
TREE_CHAIN
(
link
))
for
(
link
=
yyvsp
[
-
1
].
ttype
;
link
;
link
=
TREE_CHAIN
(
link
))
{
{
...
@@ -3186,37 +3186,37 @@ case 313:
...
@@ -3186,37 +3186,37 @@ case 313:
;
;
break
;}
break
;}
case
314
:
case
314
:
#line 157
7
"c-parse.y"
#line 157
8
"c-parse.y"
{;
{;
break
;}
break
;}
case
316
:
case
316
:
#line 158
1
"c-parse.y"
#line 158
2
"c-parse.y"
{
compstmt_count
++
;
;
{
compstmt_count
++
;
;
break
;}
break
;}
case
317
:
case
317
:
#line 158
4
"c-parse.y"
#line 158
5
"c-parse.y"
{
yyval
.
ttype
=
convert
(
void_type_node
,
integer_zero_node
);
;
{
yyval
.
ttype
=
convert
(
void_type_node
,
integer_zero_node
);
;
break
;}
break
;}
case
318
:
case
318
:
#line 158
6
"c-parse.y"
#line 158
7
"c-parse.y"
{
emit_line_note
(
input_filename
,
lineno
);
{
emit_line_note
(
input_filename
,
lineno
);
expand_end_bindings
(
getdecls
(),
1
,
0
);
expand_end_bindings
(
getdecls
(),
1
,
0
);
yyval
.
ttype
=
poplevel
(
1
,
1
,
0
);
;
yyval
.
ttype
=
poplevel
(
1
,
1
,
0
);
;
break
;}
break
;}
case
319
:
case
319
:
#line 159
0
"c-parse.y"
#line 159
1
"c-parse.y"
{
emit_line_note
(
input_filename
,
lineno
);
{
emit_line_note
(
input_filename
,
lineno
);
expand_end_bindings
(
getdecls
(),
kept_level_p
(),
0
);
expand_end_bindings
(
getdecls
(),
kept_level_p
(),
0
);
yyval
.
ttype
=
poplevel
(
kept_level_p
(),
0
,
0
);
;
yyval
.
ttype
=
poplevel
(
kept_level_p
(),
0
,
0
);
;
break
;}
break
;}
case
320
:
case
320
:
#line 159
4
"c-parse.y"
#line 159
5
"c-parse.y"
{
emit_line_note
(
input_filename
,
lineno
);
{
emit_line_note
(
input_filename
,
lineno
);
expand_end_bindings
(
getdecls
(),
kept_level_p
(),
0
);
expand_end_bindings
(
getdecls
(),
kept_level_p
(),
0
);
yyval
.
ttype
=
poplevel
(
kept_level_p
(),
0
,
0
);
;
yyval
.
ttype
=
poplevel
(
kept_level_p
(),
0
,
0
);
;
break
;}
break
;}
case
321
:
case
321
:
#line 160
1
"c-parse.y"
#line 160
2
"c-parse.y"
{
if
(
current_function_decl
==
0
)
{
if
(
current_function_decl
==
0
)
{
{
error
(
"braced-group within expression allowed only inside a function"
);
error
(
"braced-group within expression allowed only inside a function"
);
...
@@ -3234,11 +3234,11 @@ case 321:
...
@@ -3234,11 +3234,11 @@ case 321:
;
;
break
;}
break
;}
case
322
:
case
322
:
#line 161
8
"c-parse.y"
#line 161
9
"c-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
325
:
case
325
:
#line 163
2
"c-parse.y"
#line 163
3
"c-parse.y"
{
emit_line_note
(
yyvsp
[
-
5
].
filename
,
yyvsp
[
-
4
].
lineno
);
{
emit_line_note
(
yyvsp
[
-
5
].
filename
,
yyvsp
[
-
4
].
lineno
);
c_expand_start_cond
(
truthvalue_conversion
(
yyvsp
[
-
1
].
ttype
),
0
,
c_expand_start_cond
(
truthvalue_conversion
(
yyvsp
[
-
1
].
ttype
),
0
,
compstmt_count
);
compstmt_count
);
...
@@ -3248,7 +3248,7 @@ case 325:
...
@@ -3248,7 +3248,7 @@ case 325:
position_after_white_space
();
;
position_after_white_space
();
;
break
;}
break
;}
case
326
:
case
326
:
#line 164
6
"c-parse.y"
#line 164
7
"c-parse.y"
{
stmt_count
++
;
{
stmt_count
++
;
compstmt_count
++
;
compstmt_count
++
;
emit_line_note
(
yyvsp
[
-
2
].
filename
,
yyvsp
[
-
1
].
lineno
);
emit_line_note
(
yyvsp
[
-
2
].
filename
,
yyvsp
[
-
1
].
lineno
);
...
@@ -3258,43 +3258,43 @@ case 326:
...
@@ -3258,43 +3258,43 @@ case 326:
position_after_white_space
();
;
position_after_white_space
();
;
break
;}
break
;}
case
327
:
case
327
:
#line 165
4
"c-parse.y"
#line 165
5
"c-parse.y"
{
expand_loop_continue_here
();
;
{
expand_loop_continue_here
();
;
break
;}
break
;}
case
328
:
case
328
:
#line 165
8
"c-parse.y"
#line 165
9
"c-parse.y"
{
yyval
.
filename
=
input_filename
;
;
{
yyval
.
filename
=
input_filename
;
;
break
;}
break
;}
case
329
:
case
329
:
#line 166
2
"c-parse.y"
#line 166
3
"c-parse.y"
{
yyval
.
lineno
=
lineno
;
;
{
yyval
.
lineno
=
lineno
;
;
break
;}
break
;}
case
330
:
case
330
:
#line 166
7
"c-parse.y"
#line 166
8
"c-parse.y"
{
;
{
;
break
;}
break
;}
case
331
:
case
331
:
#line 167
2
"c-parse.y"
#line 167
3
"c-parse.y"
{
;
{
;
break
;}
break
;}
case
332
:
case
332
:
#line 167
7
"c-parse.y"
#line 167
8
"c-parse.y"
{
yyval
.
ends_in_label
=
yyvsp
[
0
].
ends_in_label
;
;
{
yyval
.
ends_in_label
=
yyvsp
[
0
].
ends_in_label
;
;
break
;}
break
;}
case
333
:
case
333
:
#line 168
2
"c-parse.y"
#line 168
3
"c-parse.y"
{
yyval
.
ends_in_label
=
0
;
;
{
yyval
.
ends_in_label
=
0
;
;
break
;}
break
;}
case
334
:
case
334
:
#line 168
4
"c-parse.y"
#line 168
5
"c-parse.y"
{
yyval
.
ends_in_label
=
1
;
;
{
yyval
.
ends_in_label
=
1
;
;
break
;}
break
;}
case
335
:
case
335
:
#line 169
0
"c-parse.y"
#line 169
1
"c-parse.y"
{
stmt_count
++
;
;
{
stmt_count
++
;
;
break
;}
break
;}
case
337
:
case
337
:
#line 169
3
"c-parse.y"
#line 169
4
"c-parse.y"
{
stmt_count
++
;
{
stmt_count
++
;
emit_line_note
(
yyvsp
[
-
3
].
filename
,
yyvsp
[
-
2
].
lineno
);
emit_line_note
(
yyvsp
[
-
3
].
filename
,
yyvsp
[
-
2
].
lineno
);
/* It appears that this should not be done--that a non-lvalue array
/* It appears that this should not be done--that a non-lvalue array
...
@@ -3312,19 +3312,19 @@ case 337:
...
@@ -3312,19 +3312,19 @@ case 337:
iterator_expand
(
yyvsp
[
-
1
].
ttype
);
;
iterator_expand
(
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
338
:
case
338
:
#line 17
09
"c-parse.y"
#line 17
10
"c-parse.y"
{
c_expand_start_else
();
{
c_expand_start_else
();
yyvsp
[
-
1
].
itype
=
stmt_count
;
yyvsp
[
-
1
].
itype
=
stmt_count
;
position_after_white_space
();
;
position_after_white_space
();
;
break
;}
break
;}
case
339
:
case
339
:
#line 171
3
"c-parse.y"
#line 171
4
"c-parse.y"
{
c_expand_end_cond
();
{
c_expand_end_cond
();
if
(
extra_warnings
&&
stmt_count
==
yyvsp
[
-
3
].
itype
)
if
(
extra_warnings
&&
stmt_count
==
yyvsp
[
-
3
].
itype
)
warning
(
"empty body in an else-statement"
);
;
warning
(
"empty body in an else-statement"
);
;
break
;}
break
;}
case
340
:
case
340
:
#line 171
7
"c-parse.y"
#line 171
8
"c-parse.y"
{
c_expand_end_cond
();
{
c_expand_end_cond
();
/* This warning is here instead of in simple_if, because we
/* This warning is here instead of in simple_if, because we
do not want a warning if an empty if is followed by an
do not want a warning if an empty if is followed by an
...
@@ -3335,11 +3335,11 @@ case 340:
...
@@ -3335,11 +3335,11 @@ case 340:
"empty body in an if-statement"
);
;
"empty body in an if-statement"
);
;
break
;}
break
;}
case
341
:
case
341
:
#line 17
29
"c-parse.y"
#line 17
30
"c-parse.y"
{
c_expand_end_cond
();
;
{
c_expand_end_cond
();
;
break
;}
break
;}
case
342
:
case
342
:
#line 173
1
"c-parse.y"
#line 173
2
"c-parse.y"
{
stmt_count
++
;
{
stmt_count
++
;
emit_line_note
(
yyvsp
[
-
2
].
filename
,
yyvsp
[
-
1
].
lineno
);
emit_line_note
(
yyvsp
[
-
2
].
filename
,
yyvsp
[
-
1
].
lineno
);
/* The emit_nop used to come before emit_line_note,
/* The emit_nop used to come before emit_line_note,
...
@@ -3351,7 +3351,7 @@ case 342:
...
@@ -3351,7 +3351,7 @@ case 342:
emit_nop
();
;
emit_nop
();
;
break
;}
break
;}
case
343
:
case
343
:
#line 174
1
"c-parse.y"
#line 174
2
"c-parse.y"
{
/* Don't start the loop till we have succeeded
{
/* Don't start the loop till we have succeeded
in parsing the end test. This is to make sure
in parsing the end test. This is to make sure
that we end every loop we start. */
that we end every loop we start. */
...
@@ -3362,22 +3362,22 @@ case 343:
...
@@ -3362,22 +3362,22 @@ case 343:
position_after_white_space
();
;
position_after_white_space
();
;
break
;}
break
;}
case
344
:
case
344
:
#line 175
0
"c-parse.y"
#line 175
1
"c-parse.y"
{
expand_end_loop
();
;
{
expand_end_loop
();
;
break
;}
break
;}
case
345
:
case
345
:
#line 175
3
"c-parse.y"
#line 175
4
"c-parse.y"
{
emit_line_note
(
input_filename
,
lineno
);
{
emit_line_note
(
input_filename
,
lineno
);
expand_exit_loop_if_false
(
NULL_PTR
,
expand_exit_loop_if_false
(
NULL_PTR
,
truthvalue_conversion
(
yyvsp
[
-
2
].
ttype
));
truthvalue_conversion
(
yyvsp
[
-
2
].
ttype
));
expand_end_loop
();
;
expand_end_loop
();
;
break
;}
break
;}
case
346
:
case
346
:
#line 17
59
"c-parse.y"
#line 17
60
"c-parse.y"
{
expand_end_loop
();
;
{
expand_end_loop
();
;
break
;}
break
;}
case
347
:
case
347
:
#line 176
2
"c-parse.y"
#line 176
3
"c-parse.y"
{
stmt_count
++
;
{
stmt_count
++
;
emit_line_note
(
yyvsp
[
-
5
].
filename
,
yyvsp
[
-
4
].
lineno
);
emit_line_note
(
yyvsp
[
-
5
].
filename
,
yyvsp
[
-
4
].
lineno
);
/* See comment in `while' alternative, above. */
/* See comment in `while' alternative, above. */
...
@@ -3390,12 +3390,12 @@ case 347:
...
@@ -3390,12 +3390,12 @@ case 347:
;
;
break
;}
break
;}
case
348
:
case
348
:
#line 177
4
"c-parse.y"
#line 177
5
"c-parse.y"
{
yyvsp
[
0
].
lineno
=
lineno
;
{
yyvsp
[
0
].
lineno
=
lineno
;
yyval
.
filename
=
input_filename
;
;
yyval
.
filename
=
input_filename
;
;
break
;}
break
;}
case
349
:
case
349
:
#line 177
7
"c-parse.y"
#line 177
8
"c-parse.y"
{
{
/* Start the loop. Doing this after parsing
/* Start the loop. Doing this after parsing
all the expressions ensures we will end the loop. */
all the expressions ensures we will end the loop. */
...
@@ -3410,7 +3410,7 @@ case 349:
...
@@ -3410,7 +3410,7 @@ case 349:
position_after_white_space
();
;
position_after_white_space
();
;
break
;}
break
;}
case
350
:
case
350
:
#line 179
0
"c-parse.y"
#line 179
1
"c-parse.y"
{
/* Emit the increment expression, with a line number. */
{
/* Emit the increment expression, with a line number. */
emit_line_note
(
yyvsp
[
-
4
].
filename
,
yyvsp
[
-
5
].
lineno
);
emit_line_note
(
yyvsp
[
-
4
].
filename
,
yyvsp
[
-
5
].
lineno
);
expand_loop_continue_here
();
expand_loop_continue_here
();
...
@@ -3419,44 +3419,44 @@ case 350:
...
@@ -3419,44 +3419,44 @@ case 350:
expand_end_loop
();
;
expand_end_loop
();
;
break
;}
break
;}
case
351
:
case
351
:
#line 179
7
"c-parse.y"
#line 179
8
"c-parse.y"
{
stmt_count
++
;
{
stmt_count
++
;
emit_line_note
(
yyvsp
[
-
5
].
filename
,
yyvsp
[
-
4
].
lineno
);
emit_line_note
(
yyvsp
[
-
5
].
filename
,
yyvsp
[
-
4
].
lineno
);
c_expand_start_case
(
yyvsp
[
-
1
].
ttype
);
c_expand_start_case
(
yyvsp
[
-
1
].
ttype
);
position_after_white_space
();
;
position_after_white_space
();
;
break
;}
break
;}
case
352
:
case
352
:
#line 180
2
"c-parse.y"
#line 180
3
"c-parse.y"
{
expand_end_case
(
yyvsp
[
-
3
].
ttype
);
;
{
expand_end_case
(
yyvsp
[
-
3
].
ttype
);
;
break
;}
break
;}
case
353
:
case
353
:
#line 180
4
"c-parse.y"
#line 180
5
"c-parse.y"
{
stmt_count
++
;
{
stmt_count
++
;
emit_line_note
(
yyvsp
[
-
3
].
filename
,
yyvsp
[
-
2
].
lineno
);
emit_line_note
(
yyvsp
[
-
3
].
filename
,
yyvsp
[
-
2
].
lineno
);
if
(
!
expand_exit_something
())
if
(
!
expand_exit_something
())
error
(
"break statement not within loop or switch"
);
;
error
(
"break statement not within loop or switch"
);
;
break
;}
break
;}
case
354
:
case
354
:
#line 18
09
"c-parse.y"
#line 18
10
"c-parse.y"
{
stmt_count
++
;
{
stmt_count
++
;
emit_line_note
(
yyvsp
[
-
3
].
filename
,
yyvsp
[
-
2
].
lineno
);
emit_line_note
(
yyvsp
[
-
3
].
filename
,
yyvsp
[
-
2
].
lineno
);
if
(
!
expand_continue_loop
(
NULL_PTR
))
if
(
!
expand_continue_loop
(
NULL_PTR
))
error
(
"continue statement not within a loop"
);
;
error
(
"continue statement not within a loop"
);
;
break
;}
break
;}
case
355
:
case
355
:
#line 181
4
"c-parse.y"
#line 181
5
"c-parse.y"
{
stmt_count
++
;
{
stmt_count
++
;
emit_line_note
(
yyvsp
[
-
3
].
filename
,
yyvsp
[
-
2
].
lineno
);
emit_line_note
(
yyvsp
[
-
3
].
filename
,
yyvsp
[
-
2
].
lineno
);
c_expand_return
(
NULL_TREE
);
;
c_expand_return
(
NULL_TREE
);
;
break
;}
break
;}
case
356
:
case
356
:
#line 181
8
"c-parse.y"
#line 181
9
"c-parse.y"
{
stmt_count
++
;
{
stmt_count
++
;
emit_line_note
(
yyvsp
[
-
4
].
filename
,
yyvsp
[
-
3
].
lineno
);
emit_line_note
(
yyvsp
[
-
4
].
filename
,
yyvsp
[
-
3
].
lineno
);
c_expand_return
(
yyvsp
[
-
1
].
ttype
);
;
c_expand_return
(
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
357
:
case
357
:
#line 182
2
"c-parse.y"
#line 182
3
"c-parse.y"
{
stmt_count
++
;
{
stmt_count
++
;
emit_line_note
(
yyvsp
[
-
7
].
filename
,
yyvsp
[
-
6
].
lineno
);
emit_line_note
(
yyvsp
[
-
7
].
filename
,
yyvsp
[
-
6
].
lineno
);
STRIP_NOPS
(
yyvsp
[
-
2
].
ttype
);
STRIP_NOPS
(
yyvsp
[
-
2
].
ttype
);
...
@@ -3468,7 +3468,7 @@ case 357:
...
@@ -3468,7 +3468,7 @@ case 357:
error
(
"argument of `asm' is not a constant string"
);
;
error
(
"argument of `asm' is not a constant string"
);
;
break
;}
break
;}
case
358
:
case
358
:
#line 183
3
"c-parse.y"
#line 183
4
"c-parse.y"
{
stmt_count
++
;
{
stmt_count
++
;
emit_line_note
(
yyvsp
[
-
9
].
filename
,
yyvsp
[
-
8
].
lineno
);
emit_line_note
(
yyvsp
[
-
9
].
filename
,
yyvsp
[
-
8
].
lineno
);
c_expand_asm_operands
(
yyvsp
[
-
4
].
ttype
,
yyvsp
[
-
2
].
ttype
,
NULL_TREE
,
NULL_TREE
,
c_expand_asm_operands
(
yyvsp
[
-
4
].
ttype
,
yyvsp
[
-
2
].
ttype
,
NULL_TREE
,
NULL_TREE
,
...
@@ -3476,7 +3476,7 @@ case 358:
...
@@ -3476,7 +3476,7 @@ case 358:
input_filename
,
lineno
);
;
input_filename
,
lineno
);
;
break
;}
break
;}
case
359
:
case
359
:
#line 184
0
"c-parse.y"
#line 184
1
"c-parse.y"
{
stmt_count
++
;
{
stmt_count
++
;
emit_line_note
(
yyvsp
[
-
11
].
filename
,
yyvsp
[
-
10
].
lineno
);
emit_line_note
(
yyvsp
[
-
11
].
filename
,
yyvsp
[
-
10
].
lineno
);
c_expand_asm_operands
(
yyvsp
[
-
6
].
ttype
,
yyvsp
[
-
4
].
ttype
,
yyvsp
[
-
2
].
ttype
,
NULL_TREE
,
c_expand_asm_operands
(
yyvsp
[
-
6
].
ttype
,
yyvsp
[
-
4
].
ttype
,
yyvsp
[
-
2
].
ttype
,
NULL_TREE
,
...
@@ -3484,7 +3484,7 @@ case 359:
...
@@ -3484,7 +3484,7 @@ case 359:
input_filename
,
lineno
);
;
input_filename
,
lineno
);
;
break
;}
break
;}
case
360
:
case
360
:
#line 184
8
"c-parse.y"
#line 184
9
"c-parse.y"
{
stmt_count
++
;
{
stmt_count
++
;
emit_line_note
(
yyvsp
[
-
13
].
filename
,
yyvsp
[
-
12
].
lineno
);
emit_line_note
(
yyvsp
[
-
13
].
filename
,
yyvsp
[
-
12
].
lineno
);
c_expand_asm_operands
(
yyvsp
[
-
8
].
ttype
,
yyvsp
[
-
6
].
ttype
,
yyvsp
[
-
4
].
ttype
,
yyvsp
[
-
2
].
ttype
,
c_expand_asm_operands
(
yyvsp
[
-
8
].
ttype
,
yyvsp
[
-
6
].
ttype
,
yyvsp
[
-
4
].
ttype
,
yyvsp
[
-
2
].
ttype
,
...
@@ -3492,7 +3492,7 @@ case 360:
...
@@ -3492,7 +3492,7 @@ case 360:
input_filename
,
lineno
);
;
input_filename
,
lineno
);
;
break
;}
break
;}
case
361
:
case
361
:
#line 185
4
"c-parse.y"
#line 185
5
"c-parse.y"
{
tree
decl
;
{
tree
decl
;
stmt_count
++
;
stmt_count
++
;
emit_line_note
(
yyvsp
[
-
4
].
filename
,
yyvsp
[
-
3
].
lineno
);
emit_line_note
(
yyvsp
[
-
4
].
filename
,
yyvsp
[
-
3
].
lineno
);
...
@@ -3505,7 +3505,7 @@ case 361:
...
@@ -3505,7 +3505,7 @@ case 361:
;
;
break
;}
break
;}
case
362
:
case
362
:
#line 186
5
"c-parse.y"
#line 186
6
"c-parse.y"
{
if
(
pedantic
)
{
if
(
pedantic
)
pedwarn
(
"ANSI C forbids `goto *expr;'"
);
pedwarn
(
"ANSI C forbids `goto *expr;'"
);
stmt_count
++
;
stmt_count
++
;
...
@@ -3513,7 +3513,7 @@ case 362:
...
@@ -3513,7 +3513,7 @@ case 362:
expand_computed_goto
(
convert
(
ptr_type_node
,
yyvsp
[
-
1
].
ttype
));
;
expand_computed_goto
(
convert
(
ptr_type_node
,
yyvsp
[
-
1
].
ttype
));
;
break
;}
break
;}
case
365
:
case
365
:
#line 188
0
"c-parse.y"
#line 188
1
"c-parse.y"
{
{
/* The value returned by this action is */
/* The value returned by this action is */
/* 1 if everything is OK */
/* 1 if everything is OK */
...
@@ -3536,14 +3536,14 @@ case 365:
...
@@ -3536,14 +3536,14 @@ case 365:
;
;
break
;}
break
;}
case
366
:
case
366
:
#line 190
1
"c-parse.y"
#line 190
2
"c-parse.y"
{
{
if
(
yyvsp
[
-
1
].
itype
)
if
(
yyvsp
[
-
1
].
itype
)
iterator_for_loop_end
(
yyvsp
[
-
3
].
ttype
);
iterator_for_loop_end
(
yyvsp
[
-
3
].
ttype
);
;
;
break
;}
break
;}
case
367
:
case
367
:
#line 193
2
"c-parse.y"
#line 193
3
"c-parse.y"
{
register
tree
value
=
check_case_value
(
yyvsp
[
-
1
].
ttype
);
{
register
tree
value
=
check_case_value
(
yyvsp
[
-
1
].
ttype
);
register
tree
label
register
tree
label
=
build_decl
(
LABEL_DECL
,
NULL_TREE
,
NULL_TREE
);
=
build_decl
(
LABEL_DECL
,
NULL_TREE
,
NULL_TREE
);
...
@@ -3576,7 +3576,7 @@ case 367:
...
@@ -3576,7 +3576,7 @@ case 367:
position_after_white_space
();
;
position_after_white_space
();
;
break
;}
break
;}
case
368
:
case
368
:
#line 196
3
"c-parse.y"
#line 196
4
"c-parse.y"
{
register
tree
value1
=
check_case_value
(
yyvsp
[
-
3
].
ttype
);
{
register
tree
value1
=
check_case_value
(
yyvsp
[
-
3
].
ttype
);
register
tree
value2
=
check_case_value
(
yyvsp
[
-
1
].
ttype
);
register
tree
value2
=
check_case_value
(
yyvsp
[
-
1
].
ttype
);
register
tree
label
register
tree
label
...
@@ -3609,7 +3609,7 @@ case 368:
...
@@ -3609,7 +3609,7 @@ case 368:
position_after_white_space
();
;
position_after_white_space
();
;
break
;}
break
;}
case
369
:
case
369
:
#line 199
4
"c-parse.y"
#line 199
5
"c-parse.y"
{
{
tree
duplicate
;
tree
duplicate
;
register
tree
label
register
tree
label
...
@@ -3626,7 +3626,7 @@ case 369:
...
@@ -3626,7 +3626,7 @@ case 369:
position_after_white_space
();
;
position_after_white_space
();
;
break
;}
break
;}
case
370
:
case
370
:
#line 20
09
"c-parse.y"
#line 20
10
"c-parse.y"
{
tree
label
=
define_label
(
input_filename
,
lineno
,
yyvsp
[
-
2
].
ttype
);
{
tree
label
=
define_label
(
input_filename
,
lineno
,
yyvsp
[
-
2
].
ttype
);
stmt_count
++
;
stmt_count
++
;
emit_nop
();
emit_nop
();
...
@@ -3638,52 +3638,52 @@ case 370:
...
@@ -3638,52 +3638,52 @@ case 370:
position_after_white_space
();
;
position_after_white_space
();
;
break
;}
break
;}
case
371
:
case
371
:
#line 202
4
"c-parse.y"
#line 202
5
"c-parse.y"
{
emit_line_note
(
input_filename
,
lineno
);
{
emit_line_note
(
input_filename
,
lineno
);
yyval
.
ttype
=
NULL_TREE
;
;
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
372
:
case
372
:
#line 202
7
"c-parse.y"
#line 202
8
"c-parse.y"
{
emit_line_note
(
input_filename
,
lineno
);
;
{
emit_line_note
(
input_filename
,
lineno
);
;
break
;}
break
;}
case
373
:
case
373
:
#line 203
2
"c-parse.y"
#line 203
3
"c-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
375
:
case
375
:
#line 20
39
"c-parse.y"
#line 20
40
"c-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
378
:
case
378
:
#line 204
6
"c-parse.y"
#line 204
7
"c-parse.y"
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
379
:
case
379
:
#line 205
1
"c-parse.y"
#line 205
2
"c-parse.y"
{
yyval
.
ttype
=
build_tree_list
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
build_tree_list
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
380
:
case
380
:
#line 205
6
"c-parse.y"
#line 205
7
"c-parse.y"
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
combine_strings
(
yyvsp
[
0
].
ttype
),
NULL_TREE
);
;
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
combine_strings
(
yyvsp
[
0
].
ttype
),
NULL_TREE
);
;
break
;}
break
;}
case
381
:
case
381
:
#line 205
8
"c-parse.y"
#line 205
9
"c-parse.y"
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
combine_strings
(
yyvsp
[
0
].
ttype
),
yyvsp
[
-
2
].
ttype
);
;
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
combine_strings
(
yyvsp
[
0
].
ttype
),
yyvsp
[
-
2
].
ttype
);
;
break
;}
break
;}
case
382
:
case
382
:
#line 206
4
"c-parse.y"
#line 206
5
"c-parse.y"
{
pushlevel
(
0
);
{
pushlevel
(
0
);
clear_parm_order
();
clear_parm_order
();
declare_parm_level
(
0
);
;
declare_parm_level
(
0
);
;
break
;}
break
;}
case
383
:
case
383
:
#line 206
8
"c-parse.y"
#line 206
9
"c-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
parmlist_tags_warning
();
parmlist_tags_warning
();
poplevel
(
0
,
0
,
0
);
;
poplevel
(
0
,
0
,
0
);
;
break
;}
break
;}
case
385
:
case
385
:
#line 207
6
"c-parse.y"
#line 207
7
"c-parse.y"
{
tree
parm
;
{
tree
parm
;
if
(
pedantic
)
if
(
pedantic
)
pedwarn
(
"ANSI C forbids forward parameter declarations"
);
pedwarn
(
"ANSI C forbids forward parameter declarations"
);
...
@@ -3693,19 +3693,19 @@ case 385:
...
@@ -3693,19 +3693,19 @@ case 385:
clear_parm_order
();
;
clear_parm_order
();
;
break
;}
break
;}
case
386
:
case
386
:
#line 208
4
"c-parse.y"
#line 208
5
"c-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
387
:
case
387
:
#line 208
6
"c-parse.y"
#line 208
7
"c-parse.y"
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
NULL_TREE
,
NULL_TREE
);
;
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
NULL_TREE
,
NULL_TREE
);
;
break
;}
break
;}
case
388
:
case
388
:
#line 209
2
"c-parse.y"
#line 209
3
"c-parse.y"
{
yyval
.
ttype
=
get_parm_info
(
0
);
;
{
yyval
.
ttype
=
get_parm_info
(
0
);
;
break
;}
break
;}
case
389
:
case
389
:
#line 209
4
"c-parse.y"
#line 209
5
"c-parse.y"
{
yyval
.
ttype
=
get_parm_info
(
0
);
{
yyval
.
ttype
=
get_parm_info
(
0
);
/* Gcc used to allow this as an extension. However, it does
/* Gcc used to allow this as an extension. However, it does
not work for all targets, and thus has been disabled.
not work for all targets, and thus has been disabled.
...
@@ -3717,23 +3717,23 @@ case 389:
...
@@ -3717,23 +3717,23 @@ case 389:
;
;
break
;}
break
;}
case
390
:
case
390
:
#line 210
4
"c-parse.y"
#line 210
5
"c-parse.y"
{
yyval
.
ttype
=
get_parm_info
(
1
);
;
{
yyval
.
ttype
=
get_parm_info
(
1
);
;
break
;}
break
;}
case
391
:
case
391
:
#line 210
6
"c-parse.y"
#line 210
7
"c-parse.y"
{
yyval
.
ttype
=
get_parm_info
(
0
);
;
{
yyval
.
ttype
=
get_parm_info
(
0
);
;
break
;}
break
;}
case
392
:
case
392
:
#line 211
1
"c-parse.y"
#line 211
2
"c-parse.y"
{
push_parm_decl
(
yyvsp
[
0
].
ttype
);
;
{
push_parm_decl
(
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
393
:
case
393
:
#line 211
3
"c-parse.y"
#line 211
4
"c-parse.y"
{
push_parm_decl
(
yyvsp
[
0
].
ttype
);
;
{
push_parm_decl
(
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
394
:
case
394
:
#line 212
0
"c-parse.y"
#line 212
1
"c-parse.y"
{
yyval
.
ttype
=
build_tree_list
(
build_tree_list
(
current_declspecs
,
{
yyval
.
ttype
=
build_tree_list
(
build_tree_list
(
current_declspecs
,
yyvsp
[
-
1
].
ttype
),
yyvsp
[
-
1
].
ttype
),
build_tree_list
(
prefix_attributes
,
build_tree_list
(
prefix_attributes
,
...
@@ -3743,7 +3743,7 @@ case 394:
...
@@ -3743,7 +3743,7 @@ case 394:
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
break
;}
break
;}
case
395
:
case
395
:
#line 212
8
"c-parse.y"
#line 212
9
"c-parse.y"
{
yyval
.
ttype
=
build_tree_list
(
build_tree_list
(
current_declspecs
,
{
yyval
.
ttype
=
build_tree_list
(
build_tree_list
(
current_declspecs
,
yyvsp
[
-
1
].
ttype
),
yyvsp
[
-
1
].
ttype
),
build_tree_list
(
prefix_attributes
,
build_tree_list
(
prefix_attributes
,
...
@@ -3753,7 +3753,7 @@ case 395:
...
@@ -3753,7 +3753,7 @@ case 395:
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
break
;}
break
;}
case
396
:
case
396
:
#line 213
6
"c-parse.y"
#line 213
7
"c-parse.y"
{
yyval
.
ttype
=
build_tree_list
(
build_tree_list
(
current_declspecs
,
{
yyval
.
ttype
=
build_tree_list
(
build_tree_list
(
current_declspecs
,
yyvsp
[
-
1
].
ttype
),
yyvsp
[
-
1
].
ttype
),
build_tree_list
(
prefix_attributes
,
build_tree_list
(
prefix_attributes
,
...
@@ -3763,7 +3763,7 @@ case 396:
...
@@ -3763,7 +3763,7 @@ case 396:
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
break
;}
break
;}
case
397
:
case
397
:
#line 214
4
"c-parse.y"
#line 214
5
"c-parse.y"
{
yyval
.
ttype
=
build_tree_list
(
build_tree_list
(
current_declspecs
,
{
yyval
.
ttype
=
build_tree_list
(
build_tree_list
(
current_declspecs
,
yyvsp
[
-
1
].
ttype
),
yyvsp
[
-
1
].
ttype
),
build_tree_list
(
prefix_attributes
,
build_tree_list
(
prefix_attributes
,
...
@@ -3773,7 +3773,7 @@ case 397:
...
@@ -3773,7 +3773,7 @@ case 397:
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
break
;}
break
;}
case
398
:
case
398
:
#line 215
3
"c-parse.y"
#line 215
4
"c-parse.y"
{
yyval
.
ttype
=
build_tree_list
(
build_tree_list
(
current_declspecs
,
{
yyval
.
ttype
=
build_tree_list
(
build_tree_list
(
current_declspecs
,
yyvsp
[
-
1
].
ttype
),
yyvsp
[
-
1
].
ttype
),
build_tree_list
(
prefix_attributes
,
build_tree_list
(
prefix_attributes
,
...
@@ -3783,19 +3783,19 @@ case 398:
...
@@ -3783,19 +3783,19 @@ case 398:
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
break
;}
break
;}
case
399
:
case
399
:
#line 216
6
"c-parse.y"
#line 216
7
"c-parse.y"
{
pushlevel
(
0
);
{
pushlevel
(
0
);
clear_parm_order
();
clear_parm_order
();
declare_parm_level
(
1
);
;
declare_parm_level
(
1
);
;
break
;}
break
;}
case
400
:
case
400
:
#line 217
0
"c-parse.y"
#line 217
1
"c-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
parmlist_tags_warning
();
parmlist_tags_warning
();
poplevel
(
0
,
0
,
0
);
;
poplevel
(
0
,
0
,
0
);
;
break
;}
break
;}
case
402
:
case
402
:
#line 217
8
"c-parse.y"
#line 217
9
"c-parse.y"
{
tree
t
;
{
tree
t
;
for
(
t
=
yyvsp
[
-
1
].
ttype
;
t
;
t
=
TREE_CHAIN
(
t
))
for
(
t
=
yyvsp
[
-
1
].
ttype
;
t
;
t
=
TREE_CHAIN
(
t
))
if
(
TREE_VALUE
(
t
)
==
NULL_TREE
)
if
(
TREE_VALUE
(
t
)
==
NULL_TREE
)
...
@@ -3803,30 +3803,30 @@ case 402:
...
@@ -3803,30 +3803,30 @@ case 402:
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
NULL_TREE
,
yyvsp
[
-
1
].
ttype
);
;
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
NULL_TREE
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
403
:
case
403
:
#line 218
8
"c-parse.y"
#line 218
9
"c-parse.y"
{
yyval
.
ttype
=
build_tree_list
(
NULL_TREE
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
build_tree_list
(
NULL_TREE
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
404
:
case
404
:
#line 219
0
"c-parse.y"
#line 219
1
"c-parse.y"
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
2
].
ttype
,
build_tree_list
(
NULL_TREE
,
yyvsp
[
0
].
ttype
));
;
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
2
].
ttype
,
build_tree_list
(
NULL_TREE
,
yyvsp
[
0
].
ttype
));
;
break
;}
break
;}
case
405
:
case
405
:
#line 219
6
"c-parse.y"
#line 219
7
"c-parse.y"
{
yyval
.
ttype
=
build_tree_list
(
NULL_TREE
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
build_tree_list
(
NULL_TREE
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
406
:
case
406
:
#line 219
8
"c-parse.y"
#line 219
9
"c-parse.y"
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
2
].
ttype
,
build_tree_list
(
NULL_TREE
,
yyvsp
[
0
].
ttype
));
;
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
2
].
ttype
,
build_tree_list
(
NULL_TREE
,
yyvsp
[
0
].
ttype
));
;
break
;}
break
;}
case
407
:
case
407
:
#line 220
3
"c-parse.y"
#line 220
4
"c-parse.y"
{
yyval
.
ttype
=
SAVE_WARN_FLAGS
();
{
yyval
.
ttype
=
SAVE_WARN_FLAGS
();
pedantic
=
0
;
pedantic
=
0
;
warn_pointer_arith
=
0
;
;
warn_pointer_arith
=
0
;
;
break
;}
break
;}
}
}
/* the action file gets copied in in place of this dollarsign */
/* the action file gets copied in in place of this dollarsign */
#line 543 "/usr/
share/misc
/bison.simple"
#line 543 "/usr/
lib
/bison.simple"
yyvsp
-=
yylen
;
yyvsp
-=
yylen
;
yyssp
-=
yylen
;
yyssp
-=
yylen
;
...
@@ -4046,5 +4046,5 @@ yyerrhandle:
...
@@ -4046,5 +4046,5 @@ yyerrhandle:
}
}
return
1
;
return
1
;
}
}
#line 220
8
"c-parse.y"
#line 220
9
"c-parse.y"
gcc/cexp.c
View file @
b6a6823e
/* A Bison parser, made from cexp.y
/* A Bison parser, made from cexp.y
by GNU Bison version 1.25
by GNU Bison version 1.28 */
*/
#define YYBISON 1
/* Identify Bison output. */
#define YYBISON 1
/* Identify Bison output. */
#define INT 25
8
#define INT 25
7
#define CHAR 25
9
#define CHAR 25
8
#define NAME 2
60
#define NAME 2
59
#define ERROR 26
1
#define ERROR 26
0
#define OR 26
2
#define OR 26
1
#define AND 26
3
#define AND 26
2
#define EQUAL 26
4
#define EQUAL 26
3
#define NOTEQUAL 26
5
#define NOTEQUAL 26
4
#define LEQ 26
6
#define LEQ 26
5
#define GEQ 26
7
#define GEQ 26
6
#define LSH 26
8
#define LSH 26
7
#define RSH 26
9
#define RSH 26
8
#define UNARY 2
70
#define UNARY 2
69
#line 2
7
"cexp.y"
#line 2
8
"cexp.y"
#include "config.h"
#include "config.h"
...
@@ -146,7 +145,7 @@ static void integer_overflow PARAMS ((void));
...
@@ -146,7 +145,7 @@ static void integer_overflow PARAMS ((void));
#define SIGNED (~0)
#define SIGNED (~0)
#define UNSIGNED 0
#define UNSIGNED 0
#line 15
4
"cexp.y"
#line 15
5
"cexp.y"
typedef
union
{
typedef
union
{
struct
constant
{
HOST_WIDEST_INT
value
;
int
signedp
;}
integer
;
struct
constant
{
HOST_WIDEST_INT
value
;
int
signedp
;}
integer
;
struct
name
{
U_CHAR
*
address
;
int
length
;}
name
;
struct
name
{
U_CHAR
*
address
;
int
length
;}
name
;
...
@@ -166,7 +165,7 @@ typedef union {
...
@@ -166,7 +165,7 @@ typedef union {
#define YYFLAG -32768
#define YYFLAG -32768
#define YYNTBASE 34
#define YYNTBASE 34
#define YYTRANSLATE(x) ((unsigned)(x) <= 2
70
? yytranslate[x] : 43)
#define YYTRANSLATE(x) ((unsigned)(x) <= 2
69
? yytranslate[x] : 43)
static
const
char
yytranslate
[]
=
{
0
,
static
const
char
yytranslate
[]
=
{
0
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
...
@@ -194,8 +193,8 @@ static const char yytranslate[] = { 0,
...
@@ -194,8 +193,8 @@ static const char yytranslate[] = { 0,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
1
,
2
,
3
,
4
,
5
,
2
,
2
,
2
,
2
,
2
,
1
,
3
,
4
,
5
,
6
,
6
,
10
,
11
,
15
,
16
,
19
,
20
,
21
,
22
,
28
10
,
11
,
15
,
16
,
19
,
20
,
21
,
22
,
28
};
};
#if YYDEBUG != 0
#if YYDEBUG != 0
...
@@ -227,10 +226,10 @@ static const short yyrhs[] = { 35,
...
@@ -227,10 +226,10 @@ static const short yyrhs[] = { 35,
#if YYDEBUG != 0
#if YYDEBUG != 0
static
const
short
yyrline
[]
=
{
0
,
static
const
short
yyrline
[]
=
{
0
,
18
4
,
194
,
195
,
202
,
207
,
210
,
212
,
215
,
219
,
221
,
18
5
,
195
,
196
,
203
,
208
,
211
,
213
,
216
,
220
,
222
,
22
6
,
231
,
244
,
261
,
274
,
280
,
286
,
292
,
298
,
301
,
22
7
,
232
,
245
,
262
,
275
,
281
,
287
,
293
,
299
,
302
,
30
4
,
311
,
318
,
325
,
332
,
335
,
338
,
341
,
344
,
347
,
30
5
,
312
,
319
,
326
,
333
,
336
,
339
,
342
,
345
,
348
,
35
0
,
353
,
355
,
358
,
361
,
363
,
365
,
373
,
375
,
388
35
1
,
354
,
356
,
359
,
362
,
364
,
366
,
374
,
376
,
389
};
};
#endif
#endif
...
@@ -336,7 +335,8 @@ static const short yycheck[] = { 4,
...
@@ -336,7 +335,8 @@ static const short yycheck[] = { 4,
26
,
27
,
23
,
24
,
25
,
26
,
27
,
0
,
9
26
,
27
,
23
,
24
,
25
,
26
,
27
,
0
,
9
};
};
/* -*-C-*- Note some compilers choke on comments on `#line' lines. */
/* -*-C-*- Note some compilers choke on comments on `#line' lines. */
#line 3 "/usr/cygnus/TBD-TBD/share/bison.simple"
#line 3 "/usr/lib/bison.simple"
/* This file comes from bison-1.28. */
/* Skeleton output parser for bison,
/* Skeleton output parser for bison,
Copyright (C) 1984, 1989, 1990 Free Software Foundation, Inc.
Copyright (C) 1984, 1989, 1990 Free Software Foundation, Inc.
...
@@ -353,46 +353,66 @@ static const short yycheck[] = { 4,
...
@@ -353,46 +353,66 @@ static const short yycheck[] = { 4,
You should have received a copy of the GNU General Public License
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
along with this program; if not, write to the Free Software
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
Foundation, Inc., 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. */
/* As a special exception, when this file is copied by Bison into a
/* As a special exception, when this file is copied by Bison into a
Bison output file, you may use that output file without restriction.
Bison output file, you may use that output file without restriction.
This special exception was added by the Free Software Foundation
This special exception was added by the Free Software Foundation
in version 1.24 of Bison. */
in version 1.24 of Bison. */
#ifndef alloca
/* This is the parser code that is written into each bison parser
when the %semantic_parser declaration is not specified in the grammar.
It was written by Richard Stallman by simplifying the hairy parser
used when %semantic_parser is specified. */
#ifndef YYSTACK_USE_ALLOCA
#ifdef alloca
#define YYSTACK_USE_ALLOCA
#else
/* alloca not defined */
#ifdef __GNUC__
#ifdef __GNUC__
#define YYSTACK_USE_ALLOCA
#define alloca __builtin_alloca
#define alloca __builtin_alloca
#else
/* not GNU C. */
#else
/* not GNU C. */
#if (!defined (__STDC__) && defined (sparc)) || defined (__sparc__) || defined (__sparc) || defined (__sgi)
#if (!defined (__STDC__) && defined (sparc)) || defined (__sparc__) || defined (__sparc) || defined (__sgi) || (defined (__sun) && defined (__i386))
#define YYSTACK_USE_ALLOCA
#include <alloca.h>
#include <alloca.h>
#else
/* not sparc */
#else
/* not sparc */
#if defined (MSDOS) && !defined (__TURBOC__)
/* We think this test detects Watcom and Microsoft C. */
/* This used to test MSDOS, but that is a bad idea
since that symbol is in the user namespace. */
#if (defined (_MSDOS) || defined (_MSDOS_)) && !defined (__TURBOC__)
#if 0 /* No need for malloc.h, which pollutes the namespace;
instead, just don't use alloca. */
#include <malloc.h>
#include <malloc.h>
#endif
#else
/* not MSDOS, or __TURBOC__ */
#else
/* not MSDOS, or __TURBOC__ */
#if defined(_AIX)
#if defined(_AIX)
#include <malloc.h>
/* I don't know what this was needed for, but it pollutes the namespace.
So I turned it off. rms, 2 May 1997. */
/* #include <malloc.h> */
#pragma alloca
#pragma alloca
#else
/* not MSDOS, __TURBOC__, or _AIX */
#define YYSTACK_USE_ALLOCA
#ifdef __hpux
#else
/* not MSDOS, or __TURBOC__, or _AIX */
#ifdef __cplusplus
#if 0
extern
"C"
{
#ifdef __hpux /* haible@ilog.fr says this works for HPUX 9.05 and up,
void
*
alloca
(
unsigned
int
);
and on HPUX 10. Eventually we can turn this on. */
};
#define YYSTACK_USE_ALLOCA
#else
/* not __cplusplus */
#define alloca __builtin_alloca
void
*
alloca
();
#endif
/* not __cplusplus */
#endif /* __hpux */
#endif /* __hpux */
#endif
#endif
/* not _AIX */
#endif
/* not _AIX */
#endif
/* not MSDOS, or __TURBOC__ */
#endif
/* not MSDOS, or __TURBOC__ */
#endif
/* not sparc. */
#endif
/* not sparc */
#endif
/* not GNU C. */
#endif
/* not GNU C */
#endif
/* alloca not defined. */
#endif
/* alloca not defined */
#endif
/* YYSTACK_USE_ALLOCA not defined */
/* This is the parser code that is written into each bison parser
#ifdef YYSTACK_USE_ALLOCA
when the %semantic_parser declaration is not specified in the grammar.
#define YYSTACK_ALLOC alloca
It was written by Richard Stallman by simplifying the hairy parser
#else
used when %semantic_parser is specified. */
#define YYSTACK_ALLOC malloc
#endif
/* Note: there must be only one dollar sign in this file.
/* Note: there must be only one dollar sign in this file.
It is replaced by the list of actions, each action
It is replaced by the list of actions, each action
...
@@ -402,8 +422,8 @@ void *alloca ();
...
@@ -402,8 +422,8 @@ void *alloca ();
#define yyclearin (yychar = YYEMPTY)
#define yyclearin (yychar = YYEMPTY)
#define YYEMPTY -2
#define YYEMPTY -2
#define YYEOF 0
#define YYEOF 0
#define YYACCEPT
return(0)
#define YYACCEPT
goto yyacceptlab
#define YYABORT
return(1)
#define YYABORT
goto yyabortlab
#define YYERROR goto yyerrlab1
#define YYERROR goto yyerrlab1
/* Like YYERROR except do call yyerror.
/* Like YYERROR except do call yyerror.
This remains here temporarily to ease the
This remains here temporarily to ease the
...
@@ -484,12 +504,12 @@ int yydebug; /* nonzero means print parse trace */
...
@@ -484,12 +504,12 @@ int yydebug; /* nonzero means print parse trace */
#ifndef YYMAXDEPTH
#ifndef YYMAXDEPTH
#define YYMAXDEPTH 10000
#define YYMAXDEPTH 10000
#endif
#endif
/* Prevent warning if -Wstrict-prototypes. */
#ifdef __GNUC__
int
yyparse
(
void
);
#endif
/* Define __yy_memcpy. Note that the size argument
should be passed with type unsigned int, because that is what the non-GCC
definitions require. With GCC, __builtin_memcpy takes an arg
of type size_t, but it can handle unsigned int. */
#if __GNUC__ > 1
/* GNU C and GNU C++ define this. */
#if __GNUC__ > 1
/* GNU C and GNU C++ define this. */
#define __yy_memcpy(TO,FROM,COUNT) __builtin_memcpy(TO,FROM,COUNT)
#define __yy_memcpy(TO,FROM,COUNT) __builtin_memcpy(TO,FROM,COUNT)
#else
/* not GNU C or C++ */
#else
/* not GNU C or C++ */
...
@@ -501,7 +521,7 @@ static void
...
@@ -501,7 +521,7 @@ static void
__yy_memcpy
(
to
,
from
,
count
)
__yy_memcpy
(
to
,
from
,
count
)
char
*
to
;
char
*
to
;
char
*
from
;
char
*
from
;
int
count
;
unsigned
int
count
;
{
{
register
char
*
f
=
from
;
register
char
*
f
=
from
;
register
char
*
t
=
to
;
register
char
*
t
=
to
;
...
@@ -516,10 +536,10 @@ __yy_memcpy (to, from, count)
...
@@ -516,10 +536,10 @@ __yy_memcpy (to, from, count)
/* This is the most reliable way to avoid incompatibilities
/* This is the most reliable way to avoid incompatibilities
in available built-in functions on various systems. */
in available built-in functions on various systems. */
static
void
static
void
__yy_memcpy
(
char
*
to
,
char
*
from
,
int
count
)
__yy_memcpy
(
char
*
to
,
char
*
from
,
unsigned
int
count
)
{
{
register
char
*
f
=
from
;
register
char
*
t
=
to
;
register
char
*
t
=
to
;
register
char
*
f
=
from
;
register
int
i
=
count
;
register
int
i
=
count
;
while
(
i
--
>
0
)
while
(
i
--
>
0
)
...
@@ -529,7 +549,7 @@ __yy_memcpy (char *to, char *from, int count)
...
@@ -529,7 +549,7 @@ __yy_memcpy (char *to, char *from, int count)
#endif
#endif
#endif
#endif
#line
196 "/usr/cygnus/TBD-TBD/share
/bison.simple"
#line
217 "/usr/lib
/bison.simple"
/* The user can define YYPARSE_PARAM as the name of an argument to be passed
/* The user can define YYPARSE_PARAM as the name of an argument to be passed
into yyparse. The argument should have type void *.
into yyparse. The argument should have type void *.
...
@@ -550,6 +570,15 @@ __yy_memcpy (char *to, char *from, int count)
...
@@ -550,6 +570,15 @@ __yy_memcpy (char *to, char *from, int count)
#define YYPARSE_PARAM_DECL
#define YYPARSE_PARAM_DECL
#endif
/* not YYPARSE_PARAM */
#endif
/* not YYPARSE_PARAM */
/* Prevent warning if -Wstrict-prototypes. */
#ifdef __GNUC__
#ifdef YYPARSE_PARAM
int
yyparse
(
void
*
);
#else
int
yyparse
(
void
);
#endif
#endif
int
int
yyparse
(
YYPARSE_PARAM_ARG
)
yyparse
(
YYPARSE_PARAM_ARG
)
YYPARSE_PARAM_DECL
YYPARSE_PARAM_DECL
...
@@ -578,6 +607,7 @@ yyparse(YYPARSE_PARAM_ARG)
...
@@ -578,6 +607,7 @@ yyparse(YYPARSE_PARAM_ARG)
#endif
#endif
int
yystacksize
=
YYINITDEPTH
;
int
yystacksize
=
YYINITDEPTH
;
int
yyfree_stacks
=
0
;
#ifdef YYPURE
#ifdef YYPURE
int
yychar
;
int
yychar
;
...
@@ -662,18 +692,32 @@ yynewstate:
...
@@ -662,18 +692,32 @@ yynewstate:
if
(
yystacksize
>=
YYMAXDEPTH
)
if
(
yystacksize
>=
YYMAXDEPTH
)
{
{
yyerror
(
"parser stack overflow"
);
yyerror
(
"parser stack overflow"
);
if
(
yyfree_stacks
)
{
free
(
yyss
);
free
(
yyvs
);
#ifdef YYLSP_NEEDED
free
(
yyls
);
#endif
}
return
2
;
return
2
;
}
}
yystacksize
*=
2
;
yystacksize
*=
2
;
if
(
yystacksize
>
YYMAXDEPTH
)
if
(
yystacksize
>
YYMAXDEPTH
)
yystacksize
=
YYMAXDEPTH
;
yystacksize
=
YYMAXDEPTH
;
yyss
=
(
short
*
)
alloca
(
yystacksize
*
sizeof
(
*
yyssp
));
#ifndef YYSTACK_USE_ALLOCA
__yy_memcpy
((
char
*
)
yyss
,
(
char
*
)
yyss1
,
size
*
sizeof
(
*
yyssp
));
yyfree_stacks
=
1
;
yyvs
=
(
YYSTYPE
*
)
alloca
(
yystacksize
*
sizeof
(
*
yyvsp
));
#endif
__yy_memcpy
((
char
*
)
yyvs
,
(
char
*
)
yyvs1
,
size
*
sizeof
(
*
yyvsp
));
yyss
=
(
short
*
)
YYSTACK_ALLOC
(
yystacksize
*
sizeof
(
*
yyssp
));
__yy_memcpy
((
char
*
)
yyss
,
(
char
*
)
yyss1
,
size
*
(
unsigned
int
)
sizeof
(
*
yyssp
));
yyvs
=
(
YYSTYPE
*
)
YYSTACK_ALLOC
(
yystacksize
*
sizeof
(
*
yyvsp
));
__yy_memcpy
((
char
*
)
yyvs
,
(
char
*
)
yyvs1
,
size
*
(
unsigned
int
)
sizeof
(
*
yyvsp
));
#ifdef YYLSP_NEEDED
#ifdef YYLSP_NEEDED
yyls
=
(
YYLTYPE
*
)
alloca
(
yystacksize
*
sizeof
(
*
yylsp
));
yyls
=
(
YYLTYPE
*
)
YYSTACK_ALLOC
(
yystacksize
*
sizeof
(
*
yylsp
));
__yy_memcpy
((
char
*
)
yyls
,
(
char
*
)
yyls1
,
size
*
sizeof
(
*
yylsp
));
__yy_memcpy
((
char
*
)
yyls
,
(
char
*
)
yyls1
,
size
*
(
unsigned
int
)
sizeof
(
*
yylsp
));
#endif
#endif
#endif
/* no yyoverflow */
#endif
/* no yyoverflow */
...
@@ -834,7 +878,7 @@ yyreduce:
...
@@ -834,7 +878,7 @@ yyreduce:
switch
(
yyn
)
{
switch
(
yyn
)
{
case
1
:
case
1
:
#line 18
5
"cexp.y"
#line 18
6
"cexp.y"
{
{
expression_value
=
yyvsp
[
0
].
integer
.
value
;
expression_value
=
yyvsp
[
0
].
integer
.
value
;
#ifdef TEST_EXP_READER
#ifdef TEST_EXP_READER
...
@@ -843,55 +887,55 @@ case 1:
...
@@ -843,55 +887,55 @@ case 1:
;
;
break
;}
break
;}
case
3
:
case
3
:
#line 19
6
"cexp.y"
#line 19
7
"cexp.y"
{
if
(
pedantic
)
{
if
(
pedantic
)
pedwarn
(
"comma operator in operand of `#if'"
);
pedwarn
(
"comma operator in operand of `#if'"
);
yyval
.
integer
=
yyvsp
[
0
].
integer
;
;
yyval
.
integer
=
yyvsp
[
0
].
integer
;
;
break
;}
break
;}
case
4
:
case
4
:
#line 20
3
"cexp.y"
#line 20
4
"cexp.y"
{
yyval
.
integer
.
value
=
-
yyvsp
[
0
].
integer
.
value
;
{
yyval
.
integer
.
value
=
-
yyvsp
[
0
].
integer
.
value
;
yyval
.
integer
.
signedp
=
yyvsp
[
0
].
integer
.
signedp
;
yyval
.
integer
.
signedp
=
yyvsp
[
0
].
integer
.
signedp
;
if
((
yyval
.
integer
.
value
&
yyvsp
[
0
].
integer
.
value
&
yyval
.
integer
.
signedp
)
<
0
)
if
((
yyval
.
integer
.
value
&
yyvsp
[
0
].
integer
.
value
&
yyval
.
integer
.
signedp
)
<
0
)
integer_overflow
();
;
integer_overflow
();
;
break
;}
break
;}
case
5
:
case
5
:
#line 20
8
"cexp.y"
#line 20
9
"cexp.y"
{
yyval
.
integer
.
value
=
!
yyvsp
[
0
].
integer
.
value
;
{
yyval
.
integer
.
value
=
!
yyvsp
[
0
].
integer
.
value
;
yyval
.
integer
.
signedp
=
SIGNED
;
;
yyval
.
integer
.
signedp
=
SIGNED
;
;
break
;}
break
;}
case
6
:
case
6
:
#line 21
1
"cexp.y"
#line 21
2
"cexp.y"
{
yyval
.
integer
=
yyvsp
[
0
].
integer
;
;
{
yyval
.
integer
=
yyvsp
[
0
].
integer
;
;
break
;}
break
;}
case
7
:
case
7
:
#line 21
3
"cexp.y"
#line 21
4
"cexp.y"
{
yyval
.
integer
.
value
=
~
yyvsp
[
0
].
integer
.
value
;
{
yyval
.
integer
.
value
=
~
yyvsp
[
0
].
integer
.
value
;
yyval
.
integer
.
signedp
=
yyvsp
[
0
].
integer
.
signedp
;
;
yyval
.
integer
.
signedp
=
yyvsp
[
0
].
integer
.
signedp
;
;
break
;}
break
;}
case
8
:
case
8
:
#line 21
6
"cexp.y"
#line 21
7
"cexp.y"
{
yyval
.
integer
.
value
=
check_assertion
(
yyvsp
[
0
].
name
.
address
,
yyvsp
[
0
].
name
.
length
,
{
yyval
.
integer
.
value
=
check_assertion
(
yyvsp
[
0
].
name
.
address
,
yyvsp
[
0
].
name
.
length
,
0
,
NULL_PTR
);
0
,
NULL_PTR
);
yyval
.
integer
.
signedp
=
SIGNED
;
;
yyval
.
integer
.
signedp
=
SIGNED
;
;
break
;}
break
;}
case
9
:
case
9
:
#line 22
0
"cexp.y"
#line 22
1
"cexp.y"
{
keyword_parsing
=
1
;
;
{
keyword_parsing
=
1
;
;
break
;}
break
;}
case
10
:
case
10
:
#line 22
2
"cexp.y"
#line 22
3
"cexp.y"
{
yyval
.
integer
.
value
=
check_assertion
(
yyvsp
[
-
4
].
name
.
address
,
yyvsp
[
-
4
].
name
.
length
,
{
yyval
.
integer
.
value
=
check_assertion
(
yyvsp
[
-
4
].
name
.
address
,
yyvsp
[
-
4
].
name
.
length
,
1
,
yyvsp
[
-
1
].
keywords
);
1
,
yyvsp
[
-
1
].
keywords
);
keyword_parsing
=
0
;
keyword_parsing
=
0
;
yyval
.
integer
.
signedp
=
SIGNED
;
;
yyval
.
integer
.
signedp
=
SIGNED
;
;
break
;}
break
;}
case
11
:
case
11
:
#line 22
7
"cexp.y"
#line 22
8
"cexp.y"
{
yyval
.
integer
=
yyvsp
[
-
1
].
integer
;
;
{
yyval
.
integer
=
yyvsp
[
-
1
].
integer
;
;
break
;}
break
;}
case
12
:
case
12
:
#line 23
2
"cexp.y"
#line 23
3
"cexp.y"
{
yyval
.
integer
.
signedp
=
yyvsp
[
-
2
].
integer
.
signedp
&
yyvsp
[
0
].
integer
.
signedp
;
{
yyval
.
integer
.
signedp
=
yyvsp
[
-
2
].
integer
.
signedp
&
yyvsp
[
0
].
integer
.
signedp
;
if
(
yyval
.
integer
.
signedp
)
if
(
yyval
.
integer
.
signedp
)
{
{
...
@@ -906,7 +950,7 @@ case 12:
...
@@ -906,7 +950,7 @@ case 12:
*
yyvsp
[
0
].
integer
.
value
);
;
*
yyvsp
[
0
].
integer
.
value
);
;
break
;}
break
;}
case
13
:
case
13
:
#line 24
5
"cexp.y"
#line 24
6
"cexp.y"
{
if
(
yyvsp
[
0
].
integer
.
value
==
0
)
{
if
(
yyvsp
[
0
].
integer
.
value
==
0
)
{
{
if
(
!
skip_evaluation
)
if
(
!
skip_evaluation
)
...
@@ -925,7 +969,7 @@ case 13:
...
@@ -925,7 +969,7 @@ case 13:
/
yyvsp
[
0
].
integer
.
value
);
;
/
yyvsp
[
0
].
integer
.
value
);
;
break
;}
break
;}
case
14
:
case
14
:
#line 26
2
"cexp.y"
#line 26
3
"cexp.y"
{
if
(
yyvsp
[
0
].
integer
.
value
==
0
)
{
if
(
yyvsp
[
0
].
integer
.
value
==
0
)
{
{
if
(
!
skip_evaluation
)
if
(
!
skip_evaluation
)
...
@@ -940,7 +984,7 @@ case 14:
...
@@ -940,7 +984,7 @@ case 14:
%
yyvsp
[
0
].
integer
.
value
);
;
%
yyvsp
[
0
].
integer
.
value
);
;
break
;}
break
;}
case
15
:
case
15
:
#line 27
5
"cexp.y"
#line 27
6
"cexp.y"
{
yyval
.
integer
.
value
=
yyvsp
[
-
2
].
integer
.
value
+
yyvsp
[
0
].
integer
.
value
;
{
yyval
.
integer
.
value
=
yyvsp
[
-
2
].
integer
.
value
+
yyvsp
[
0
].
integer
.
value
;
yyval
.
integer
.
signedp
=
yyvsp
[
-
2
].
integer
.
signedp
&
yyvsp
[
0
].
integer
.
signedp
;
yyval
.
integer
.
signedp
=
yyvsp
[
-
2
].
integer
.
signedp
&
yyvsp
[
0
].
integer
.
signedp
;
if
(
overflow_sum_sign
(
yyvsp
[
-
2
].
integer
.
value
,
yyvsp
[
0
].
integer
.
value
,
if
(
overflow_sum_sign
(
yyvsp
[
-
2
].
integer
.
value
,
yyvsp
[
0
].
integer
.
value
,
...
@@ -948,7 +992,7 @@ case 15:
...
@@ -948,7 +992,7 @@ case 15:
integer_overflow
();
;
integer_overflow
();
;
break
;}
break
;}
case
16
:
case
16
:
#line 28
1
"cexp.y"
#line 28
2
"cexp.y"
{
yyval
.
integer
.
value
=
yyvsp
[
-
2
].
integer
.
value
-
yyvsp
[
0
].
integer
.
value
;
{
yyval
.
integer
.
value
=
yyvsp
[
-
2
].
integer
.
value
-
yyvsp
[
0
].
integer
.
value
;
yyval
.
integer
.
signedp
=
yyvsp
[
-
2
].
integer
.
signedp
&
yyvsp
[
0
].
integer
.
signedp
;
yyval
.
integer
.
signedp
=
yyvsp
[
-
2
].
integer
.
signedp
&
yyvsp
[
0
].
integer
.
signedp
;
if
(
overflow_sum_sign
(
yyval
.
integer
.
value
,
yyvsp
[
0
].
integer
.
value
,
if
(
overflow_sum_sign
(
yyval
.
integer
.
value
,
yyvsp
[
0
].
integer
.
value
,
...
@@ -956,7 +1000,7 @@ case 16:
...
@@ -956,7 +1000,7 @@ case 16:
integer_overflow
();
;
integer_overflow
();
;
break
;}
break
;}
case
17
:
case
17
:
#line 28
7
"cexp.y"
#line 28
8
"cexp.y"
{
yyval
.
integer
.
signedp
=
yyvsp
[
-
2
].
integer
.
signedp
;
{
yyval
.
integer
.
signedp
=
yyvsp
[
-
2
].
integer
.
signedp
;
if
((
yyvsp
[
0
].
integer
.
value
&
yyvsp
[
0
].
integer
.
signedp
)
<
0
)
if
((
yyvsp
[
0
].
integer
.
value
&
yyvsp
[
0
].
integer
.
signedp
)
<
0
)
yyval
.
integer
.
value
=
right_shift
(
&
yyvsp
[
-
2
].
integer
,
-
yyvsp
[
0
].
integer
.
value
);
yyval
.
integer
.
value
=
right_shift
(
&
yyvsp
[
-
2
].
integer
,
-
yyvsp
[
0
].
integer
.
value
);
...
@@ -964,7 +1008,7 @@ case 17:
...
@@ -964,7 +1008,7 @@ case 17:
yyval
.
integer
.
value
=
left_shift
(
&
yyvsp
[
-
2
].
integer
,
yyvsp
[
0
].
integer
.
value
);
;
yyval
.
integer
.
value
=
left_shift
(
&
yyvsp
[
-
2
].
integer
,
yyvsp
[
0
].
integer
.
value
);
;
break
;}
break
;}
case
18
:
case
18
:
#line 29
3
"cexp.y"
#line 29
4
"cexp.y"
{
yyval
.
integer
.
signedp
=
yyvsp
[
-
2
].
integer
.
signedp
;
{
yyval
.
integer
.
signedp
=
yyvsp
[
-
2
].
integer
.
signedp
;
if
((
yyvsp
[
0
].
integer
.
value
&
yyvsp
[
0
].
integer
.
signedp
)
<
0
)
if
((
yyvsp
[
0
].
integer
.
value
&
yyvsp
[
0
].
integer
.
signedp
)
<
0
)
yyval
.
integer
.
value
=
left_shift
(
&
yyvsp
[
-
2
].
integer
,
-
yyvsp
[
0
].
integer
.
value
);
yyval
.
integer
.
value
=
left_shift
(
&
yyvsp
[
-
2
].
integer
,
-
yyvsp
[
0
].
integer
.
value
);
...
@@ -972,17 +1016,17 @@ case 18:
...
@@ -972,17 +1016,17 @@ case 18:
yyval
.
integer
.
value
=
right_shift
(
&
yyvsp
[
-
2
].
integer
,
yyvsp
[
0
].
integer
.
value
);
;
yyval
.
integer
.
value
=
right_shift
(
&
yyvsp
[
-
2
].
integer
,
yyvsp
[
0
].
integer
.
value
);
;
break
;}
break
;}
case
19
:
case
19
:
#line
299
"cexp.y"
#line
300
"cexp.y"
{
yyval
.
integer
.
value
=
(
yyvsp
[
-
2
].
integer
.
value
==
yyvsp
[
0
].
integer
.
value
);
{
yyval
.
integer
.
value
=
(
yyvsp
[
-
2
].
integer
.
value
==
yyvsp
[
0
].
integer
.
value
);
yyval
.
integer
.
signedp
=
SIGNED
;
;
yyval
.
integer
.
signedp
=
SIGNED
;
;
break
;}
break
;}
case
20
:
case
20
:
#line 30
2
"cexp.y"
#line 30
3
"cexp.y"
{
yyval
.
integer
.
value
=
(
yyvsp
[
-
2
].
integer
.
value
!=
yyvsp
[
0
].
integer
.
value
);
{
yyval
.
integer
.
value
=
(
yyvsp
[
-
2
].
integer
.
value
!=
yyvsp
[
0
].
integer
.
value
);
yyval
.
integer
.
signedp
=
SIGNED
;
;
yyval
.
integer
.
signedp
=
SIGNED
;
;
break
;}
break
;}
case
21
:
case
21
:
#line 30
5
"cexp.y"
#line 30
6
"cexp.y"
{
yyval
.
integer
.
signedp
=
SIGNED
;
{
yyval
.
integer
.
signedp
=
SIGNED
;
if
(
yyvsp
[
-
2
].
integer
.
signedp
&
yyvsp
[
0
].
integer
.
signedp
)
if
(
yyvsp
[
-
2
].
integer
.
signedp
&
yyvsp
[
0
].
integer
.
signedp
)
yyval
.
integer
.
value
=
yyvsp
[
-
2
].
integer
.
value
<=
yyvsp
[
0
].
integer
.
value
;
yyval
.
integer
.
value
=
yyvsp
[
-
2
].
integer
.
value
<=
yyvsp
[
0
].
integer
.
value
;
...
@@ -991,7 +1035,7 @@ case 21:
...
@@ -991,7 +1035,7 @@ case 21:
<=
yyvsp
[
0
].
integer
.
value
);
;
<=
yyvsp
[
0
].
integer
.
value
);
;
break
;}
break
;}
case
22
:
case
22
:
#line 31
2
"cexp.y"
#line 31
3
"cexp.y"
{
yyval
.
integer
.
signedp
=
SIGNED
;
{
yyval
.
integer
.
signedp
=
SIGNED
;
if
(
yyvsp
[
-
2
].
integer
.
signedp
&
yyvsp
[
0
].
integer
.
signedp
)
if
(
yyvsp
[
-
2
].
integer
.
signedp
&
yyvsp
[
0
].
integer
.
signedp
)
yyval
.
integer
.
value
=
yyvsp
[
-
2
].
integer
.
value
>=
yyvsp
[
0
].
integer
.
value
;
yyval
.
integer
.
value
=
yyvsp
[
-
2
].
integer
.
value
>=
yyvsp
[
0
].
integer
.
value
;
...
@@ -1000,7 +1044,7 @@ case 22:
...
@@ -1000,7 +1044,7 @@ case 22:
>=
yyvsp
[
0
].
integer
.
value
);
;
>=
yyvsp
[
0
].
integer
.
value
);
;
break
;}
break
;}
case
23
:
case
23
:
#line 3
19
"cexp.y"
#line 3
20
"cexp.y"
{
yyval
.
integer
.
signedp
=
SIGNED
;
{
yyval
.
integer
.
signedp
=
SIGNED
;
if
(
yyvsp
[
-
2
].
integer
.
signedp
&
yyvsp
[
0
].
integer
.
signedp
)
if
(
yyvsp
[
-
2
].
integer
.
signedp
&
yyvsp
[
0
].
integer
.
signedp
)
yyval
.
integer
.
value
=
yyvsp
[
-
2
].
integer
.
value
<
yyvsp
[
0
].
integer
.
value
;
yyval
.
integer
.
value
=
yyvsp
[
-
2
].
integer
.
value
<
yyvsp
[
0
].
integer
.
value
;
...
@@ -1009,7 +1053,7 @@ case 23:
...
@@ -1009,7 +1053,7 @@ case 23:
<
yyvsp
[
0
].
integer
.
value
);
;
<
yyvsp
[
0
].
integer
.
value
);
;
break
;}
break
;}
case
24
:
case
24
:
#line 32
6
"cexp.y"
#line 32
7
"cexp.y"
{
yyval
.
integer
.
signedp
=
SIGNED
;
{
yyval
.
integer
.
signedp
=
SIGNED
;
if
(
yyvsp
[
-
2
].
integer
.
signedp
&
yyvsp
[
0
].
integer
.
signedp
)
if
(
yyvsp
[
-
2
].
integer
.
signedp
&
yyvsp
[
0
].
integer
.
signedp
)
yyval
.
integer
.
value
=
yyvsp
[
-
2
].
integer
.
value
>
yyvsp
[
0
].
integer
.
value
;
yyval
.
integer
.
value
=
yyvsp
[
-
2
].
integer
.
value
>
yyvsp
[
0
].
integer
.
value
;
...
@@ -1018,64 +1062,64 @@ case 24:
...
@@ -1018,64 +1062,64 @@ case 24:
>
yyvsp
[
0
].
integer
.
value
);
;
>
yyvsp
[
0
].
integer
.
value
);
;
break
;}
break
;}
case
25
:
case
25
:
#line 33
3
"cexp.y"
#line 33
4
"cexp.y"
{
yyval
.
integer
.
value
=
yyvsp
[
-
2
].
integer
.
value
&
yyvsp
[
0
].
integer
.
value
;
{
yyval
.
integer
.
value
=
yyvsp
[
-
2
].
integer
.
value
&
yyvsp
[
0
].
integer
.
value
;
yyval
.
integer
.
signedp
=
yyvsp
[
-
2
].
integer
.
signedp
&
yyvsp
[
0
].
integer
.
signedp
;
;
yyval
.
integer
.
signedp
=
yyvsp
[
-
2
].
integer
.
signedp
&
yyvsp
[
0
].
integer
.
signedp
;
;
break
;}
break
;}
case
26
:
case
26
:
#line 33
6
"cexp.y"
#line 33
7
"cexp.y"
{
yyval
.
integer
.
value
=
yyvsp
[
-
2
].
integer
.
value
^
yyvsp
[
0
].
integer
.
value
;
{
yyval
.
integer
.
value
=
yyvsp
[
-
2
].
integer
.
value
^
yyvsp
[
0
].
integer
.
value
;
yyval
.
integer
.
signedp
=
yyvsp
[
-
2
].
integer
.
signedp
&
yyvsp
[
0
].
integer
.
signedp
;
;
yyval
.
integer
.
signedp
=
yyvsp
[
-
2
].
integer
.
signedp
&
yyvsp
[
0
].
integer
.
signedp
;
;
break
;}
break
;}
case
27
:
case
27
:
#line 3
39
"cexp.y"
#line 3
40
"cexp.y"
{
yyval
.
integer
.
value
=
yyvsp
[
-
2
].
integer
.
value
|
yyvsp
[
0
].
integer
.
value
;
{
yyval
.
integer
.
value
=
yyvsp
[
-
2
].
integer
.
value
|
yyvsp
[
0
].
integer
.
value
;
yyval
.
integer
.
signedp
=
yyvsp
[
-
2
].
integer
.
signedp
&
yyvsp
[
0
].
integer
.
signedp
;
;
yyval
.
integer
.
signedp
=
yyvsp
[
-
2
].
integer
.
signedp
&
yyvsp
[
0
].
integer
.
signedp
;
;
break
;}
break
;}
case
28
:
case
28
:
#line 34
2
"cexp.y"
#line 34
3
"cexp.y"
{
skip_evaluation
+=
!
yyvsp
[
-
1
].
integer
.
value
;
;
{
skip_evaluation
+=
!
yyvsp
[
-
1
].
integer
.
value
;
;
break
;}
break
;}
case
29
:
case
29
:
#line 34
4
"cexp.y"
#line 34
5
"cexp.y"
{
skip_evaluation
-=
!
yyvsp
[
-
3
].
integer
.
value
;
{
skip_evaluation
-=
!
yyvsp
[
-
3
].
integer
.
value
;
yyval
.
integer
.
value
=
(
yyvsp
[
-
3
].
integer
.
value
&&
yyvsp
[
0
].
integer
.
value
);
yyval
.
integer
.
value
=
(
yyvsp
[
-
3
].
integer
.
value
&&
yyvsp
[
0
].
integer
.
value
);
yyval
.
integer
.
signedp
=
SIGNED
;
;
yyval
.
integer
.
signedp
=
SIGNED
;
;
break
;}
break
;}
case
30
:
case
30
:
#line 34
8
"cexp.y"
#line 34
9
"cexp.y"
{
skip_evaluation
+=
!!
yyvsp
[
-
1
].
integer
.
value
;
;
{
skip_evaluation
+=
!!
yyvsp
[
-
1
].
integer
.
value
;
;
break
;}
break
;}
case
31
:
case
31
:
#line 35
0
"cexp.y"
#line 35
1
"cexp.y"
{
skip_evaluation
-=
!!
yyvsp
[
-
3
].
integer
.
value
;
{
skip_evaluation
-=
!!
yyvsp
[
-
3
].
integer
.
value
;
yyval
.
integer
.
value
=
(
yyvsp
[
-
3
].
integer
.
value
||
yyvsp
[
0
].
integer
.
value
);
yyval
.
integer
.
value
=
(
yyvsp
[
-
3
].
integer
.
value
||
yyvsp
[
0
].
integer
.
value
);
yyval
.
integer
.
signedp
=
SIGNED
;
;
yyval
.
integer
.
signedp
=
SIGNED
;
;
break
;}
break
;}
case
32
:
case
32
:
#line 35
4
"cexp.y"
#line 35
5
"cexp.y"
{
skip_evaluation
+=
!
yyvsp
[
-
1
].
integer
.
value
;
;
{
skip_evaluation
+=
!
yyvsp
[
-
1
].
integer
.
value
;
;
break
;}
break
;}
case
33
:
case
33
:
#line 35
6
"cexp.y"
#line 35
7
"cexp.y"
{
skip_evaluation
+=
!!
yyvsp
[
-
4
].
integer
.
value
-
!
yyvsp
[
-
4
].
integer
.
value
;
;
{
skip_evaluation
+=
!!
yyvsp
[
-
4
].
integer
.
value
-
!
yyvsp
[
-
4
].
integer
.
value
;
;
break
;}
break
;}
case
34
:
case
34
:
#line 35
8
"cexp.y"
#line 35
9
"cexp.y"
{
skip_evaluation
-=
!!
yyvsp
[
-
6
].
integer
.
value
;
{
skip_evaluation
-=
!!
yyvsp
[
-
6
].
integer
.
value
;
yyval
.
integer
.
value
=
yyvsp
[
-
6
].
integer
.
value
?
yyvsp
[
-
3
].
integer
.
value
:
yyvsp
[
0
].
integer
.
value
;
yyval
.
integer
.
value
=
yyvsp
[
-
6
].
integer
.
value
?
yyvsp
[
-
3
].
integer
.
value
:
yyvsp
[
0
].
integer
.
value
;
yyval
.
integer
.
signedp
=
yyvsp
[
-
3
].
integer
.
signedp
&
yyvsp
[
0
].
integer
.
signedp
;
;
yyval
.
integer
.
signedp
=
yyvsp
[
-
3
].
integer
.
signedp
&
yyvsp
[
0
].
integer
.
signedp
;
;
break
;}
break
;}
case
35
:
case
35
:
#line 36
2
"cexp.y"
#line 36
3
"cexp.y"
{
yyval
.
integer
=
yylval
.
integer
;
;
{
yyval
.
integer
=
yylval
.
integer
;
;
break
;}
break
;}
case
36
:
case
36
:
#line 36
4
"cexp.y"
#line 36
5
"cexp.y"
{
yyval
.
integer
=
yylval
.
integer
;
;
{
yyval
.
integer
=
yylval
.
integer
;
;
break
;}
break
;}
case
37
:
case
37
:
#line 36
6
"cexp.y"
#line 36
7
"cexp.y"
{
if
(
warn_undef
&&
!
skip_evaluation
)
{
if
(
warn_undef
&&
!
skip_evaluation
)
warning
(
"`%.*s' is not defined"
,
warning
(
"`%.*s' is not defined"
,
yyvsp
[
0
].
name
.
length
,
yyvsp
[
0
].
name
.
address
);
yyvsp
[
0
].
name
.
length
,
yyvsp
[
0
].
name
.
address
);
...
@@ -1083,11 +1127,11 @@ case 37:
...
@@ -1083,11 +1127,11 @@ case 37:
yyval
.
integer
.
signedp
=
SIGNED
;
;
yyval
.
integer
.
signedp
=
SIGNED
;
;
break
;}
break
;}
case
38
:
case
38
:
#line 37
4
"cexp.y"
#line 37
5
"cexp.y"
{
yyval
.
keywords
=
0
;
;
{
yyval
.
keywords
=
0
;
;
break
;}
break
;}
case
39
:
case
39
:
#line 37
6
"cexp.y"
#line 37
7
"cexp.y"
{
struct
arglist
*
temp
;
{
struct
arglist
*
temp
;
yyval
.
keywords
=
(
struct
arglist
*
)
xmalloc
(
sizeof
(
struct
arglist
));
yyval
.
keywords
=
(
struct
arglist
*
)
xmalloc
(
sizeof
(
struct
arglist
));
yyval
.
keywords
->
next
=
yyvsp
[
-
2
].
keywords
;
yyval
.
keywords
->
next
=
yyvsp
[
-
2
].
keywords
;
...
@@ -1102,7 +1146,7 @@ case 39:
...
@@ -1102,7 +1146,7 @@ case 39:
temp
->
next
->
length
=
1
;
;
temp
->
next
->
length
=
1
;
;
break
;}
break
;}
case
40
:
case
40
:
#line 3
89
"cexp.y"
#line 3
90
"cexp.y"
{
yyval
.
keywords
=
(
struct
arglist
*
)
xmalloc
(
sizeof
(
struct
arglist
));
{
yyval
.
keywords
=
(
struct
arglist
*
)
xmalloc
(
sizeof
(
struct
arglist
));
yyval
.
keywords
->
name
=
yyvsp
[
-
1
].
name
.
address
;
yyval
.
keywords
->
name
=
yyvsp
[
-
1
].
name
.
address
;
yyval
.
keywords
->
length
=
yyvsp
[
-
1
].
name
.
length
;
yyval
.
keywords
->
length
=
yyvsp
[
-
1
].
name
.
length
;
...
@@ -1110,7 +1154,7 @@ case 40:
...
@@ -1110,7 +1154,7 @@ case 40:
break
;}
break
;}
}
}
/* the action file gets copied in in place of this dollarsign */
/* the action file gets copied in in place of this dollarsign */
#line
498 "/usr/cygnus/TBD-TBD/share
/bison.simple"
#line
543 "/usr/lib
/bison.simple"
yyvsp
-=
yylen
;
yyvsp
-=
yylen
;
yyssp
-=
yylen
;
yyssp
-=
yylen
;
...
@@ -1305,8 +1349,32 @@ yyerrhandle:
...
@@ -1305,8 +1349,32 @@ yyerrhandle:
yystate
=
yyn
;
yystate
=
yyn
;
goto
yynewstate
;
goto
yynewstate
;
yyacceptlab
:
/* YYACCEPT comes here. */
if
(
yyfree_stacks
)
{
free
(
yyss
);
free
(
yyvs
);
#ifdef YYLSP_NEEDED
free
(
yyls
);
#endif
}
return
0
;
yyabortlab
:
/* YYABORT comes here. */
if
(
yyfree_stacks
)
{
free
(
yyss
);
free
(
yyvs
);
#ifdef YYLSP_NEEDED
free
(
yyls
);
#endif
}
return
1
;
}
}
#line 39
4
"cexp.y"
#line 39
5
"cexp.y"
/* During parsing of a C expression, the pointer to the next character
/* During parsing of a C expression, the pointer to the next character
...
...
gcc/cp/parse.c
View file @
b6a6823e
This source diff could not be displayed because it is too large. You can
view the blob
instead.
gcc/objc/objc-parse.c
View file @
b6a6823e
...
@@ -66,7 +66,7 @@
...
@@ -66,7 +66,7 @@
#define ALIAS 316
#define ALIAS 316
#define OBJC_STRING 317
#define OBJC_STRING 317
#line 3
3
"objc-parse.y"
#line 3
4
"objc-parse.y"
#include "config.h"
#include "config.h"
#include "system.h"
#include "system.h"
...
@@ -96,10 +96,10 @@ const char * const language_string = "GNU Obj-C";
...
@@ -96,10 +96,10 @@ const char * const language_string = "GNU Obj-C";
/* Cause the `yydebug' variable to be defined. */
/* Cause the `yydebug' variable to be defined. */
#define YYDEBUG 1
#define YYDEBUG 1
#line 6
5
"objc-parse.y"
#line 6
6
"objc-parse.y"
typedef
union
{
long
itype
;
tree
ttype
;
enum
tree_code
code
;
typedef
union
{
long
itype
;
tree
ttype
;
enum
tree_code
code
;
char
*
filename
;
int
lineno
;
int
ends_in_label
;
}
YYSTYPE
;
char
*
filename
;
int
lineno
;
int
ends_in_label
;
}
YYSTYPE
;
#line 19
6
"objc-parse.y"
#line 19
7
"objc-parse.y"
/* Number of statements (loosely speaking) and compound statements
/* Number of statements (loosely speaking) and compound statements
seen so far. */
seen so far. */
...
@@ -454,63 +454,63 @@ static const short yyrhs[] = { -1,
...
@@ -454,63 +454,63 @@ static const short yyrhs[] = { -1,
#if YYDEBUG != 0
#if YYDEBUG != 0
static
const
short
yyrline
[]
=
{
0
,
static
const
short
yyrline
[]
=
{
0
,
25
7
,
262
,
276
,
278
,
278
,
279
,
281
,
283
,
284
,
285
,
25
8
,
263
,
277
,
279
,
279
,
280
,
282
,
284
,
285
,
286
,
29
3
,
297
,
307
,
311
,
315
,
317
,
319
,
320
,
321
,
326
,
29
4
,
298
,
308
,
312
,
316
,
318
,
320
,
321
,
322
,
327
,
33
3
,
335
,
339
,
343
,
349
,
351
,
355
,
359
,
365
,
367
,
33
4
,
336
,
340
,
344
,
350
,
352
,
356
,
360
,
366
,
368
,
37
1
,
377
,
379
,
380
,
381
,
384
,
386
,
388
,
390
,
392
,
37
2
,
378
,
380
,
381
,
382
,
385
,
387
,
389
,
391
,
393
,
39
4
,
396
,
400
,
404
,
407
,
410
,
413
,
417
,
419
,
422
,
39
5
,
397
,
401
,
405
,
408
,
411
,
414
,
418
,
420
,
423
,
42
5
,
429
,
457
,
463
,
466
,
469
,
472
,
474
,
476
,
480
,
42
6
,
430
,
458
,
464
,
467
,
470
,
473
,
475
,
477
,
481
,
48
4
,
488
,
490
,
493
,
497
,
524
,
526
,
528
,
530
,
532
,
48
5
,
489
,
491
,
494
,
498
,
525
,
527
,
529
,
531
,
533
,
53
4
,
536
,
538
,
540
,
542
,
544
,
546
,
548
,
550
,
554
,
53
5
,
537
,
539
,
541
,
543
,
545
,
547
,
549
,
551
,
555
,
55
6
,
560
,
562
,
565
,
569
,
571
,
578
,
581
,
589
,
600
,
55
7
,
561
,
563
,
566
,
570
,
572
,
579
,
582
,
590
,
601
,
76
0
,
761
,
763
,
769
,
771
,
794
,
803
,
805
,
807
,
819
,
76
1
,
762
,
764
,
770
,
772
,
795
,
804
,
806
,
808
,
820
,
83
3
,
835
,
837
,
839
,
841
,
843
,
845
,
850
,
852
,
859
,
83
4
,
836
,
838
,
840
,
842
,
844
,
846
,
851
,
853
,
860
,
86
1
,
865
,
867
,
868
,
878
,
883
,
885
,
886
,
887
,
894
,
86
2
,
866
,
868
,
869
,
879
,
884
,
886
,
887
,
888
,
895
,
899
,
903
,
906
,
914
,
919
,
921
,
922
,
923
,
930
,
940
,
900
,
904
,
907
,
915
,
920
,
922
,
923
,
924
,
931
,
941
,
94
4
,
949
,
953
,
957
,
961
,
963
,
965
,
974
,
977
,
981
,
94
5
,
950
,
954
,
958
,
962
,
964
,
966
,
975
,
978
,
982
,
98
3
,
985
,
990
,
994
,
997
,
1001
,
1004
,
1006
,
1018
,
1021
,
98
4
,
986
,
991
,
995
,
998
,
1002
,
1005
,
1007
,
1019
,
1022
,
102
3
,
1025
,
1029
,
1033
,
1035
,
1038
,
1051
,
1054
,
1058
,
1060
,
102
4
,
1026
,
1030
,
1034
,
1036
,
1039
,
1052
,
1055
,
1059
,
1061
,
106
8
,
1069
,
1070
,
1074
,
1076
,
1081
,
1083
,
1085
,
1091
,
1092
,
106
9
,
1070
,
1071
,
1075
,
1077
,
1082
,
1084
,
1086
,
1092
,
1093
,
109
3
,
1096
,
1098
,
1101
,
1103
,
1106
,
1109
,
1115
,
1122
,
1124
,
109
4
,
1097
,
1099
,
1102
,
1104
,
1107
,
1110
,
1116
,
1123
,
1125
,
113
1
,
1138
,
1141
,
1148
,
1151
,
1155
,
1158
,
1162
,
1167
,
1170
,
113
2
,
1139
,
1142
,
1149
,
1152
,
1156
,
1159
,
1163
,
1168
,
1171
,
117
4
,
1177
,
1179
,
1181
,
1183
,
1190
,
1192
,
1193
,
1194
,
1199
,
117
5
,
1178
,
1180
,
1182
,
1184
,
1191
,
1193
,
1194
,
1195
,
1200
,
120
1
,
1203
,
1205
,
1210
,
1214
,
1217
,
1219
,
1224
,
1226
,
1227
,
120
2
,
1204
,
1206
,
1211
,
1215
,
1218
,
1220
,
1225
,
1227
,
1228
,
123
0
,
1230
,
1233
,
1236
,
1238
,
1240
,
1243
,
1245
,
1248
,
1256
,
123
1
,
1231
,
1234
,
1237
,
1239
,
1241
,
1244
,
1246
,
1249
,
1257
,
127
0
,
1278
,
1282
,
1296
,
1304
,
1311
,
1313
,
1318
,
1321
,
1326
,
127
1
,
1279
,
1283
,
1297
,
1305
,
1312
,
1314
,
1319
,
1322
,
1327
,
132
8
,
1330
,
1337
,
1339
,
1340
,
1348
,
1354
,
1356
,
1358
,
1365
,
132
9
,
1331
,
1338
,
1340
,
1341
,
1349
,
1355
,
1357
,
1359
,
1366
,
136
7
,
1373
,
1379
,
1381
,
1383
,
1385
,
1392
,
1394
,
1397
,
1400
,
136
8
,
1374
,
1380
,
1382
,
1384
,
1386
,
1393
,
1395
,
1398
,
1401
,
140
4
,
1407
,
1411
,
1414
,
1418
,
1423
,
1425
,
1429
,
1431
,
1433
,
140
5
,
1408
,
1412
,
1415
,
1419
,
1424
,
1426
,
1430
,
1432
,
1434
,
143
5
,
1439
,
1441
,
1443
,
1446
,
1448
,
1451
,
1455
,
1457
,
1460
,
143
6
,
1440
,
1442
,
1444
,
1447
,
1449
,
1452
,
1456
,
1458
,
1461
,
146
2
,
1467
,
1470
,
1475
,
1477
,
1479
,
1483
,
1507
,
1513
,
1526
,
146
3
,
1468
,
1471
,
1476
,
1478
,
1480
,
1484
,
1508
,
1514
,
1527
,
153
1
,
1536
,
1538
,
1543
,
1545
,
1549
,
1553
,
1557
,
1567
,
1569
,
153
2
,
1537
,
1539
,
1544
,
1546
,
1550
,
1554
,
1558
,
1568
,
1570
,
157
4
,
1579
,
1582
,
1586
,
1589
,
1593
,
1596
,
1599
,
1602
,
1606
,
157
5
,
1580
,
1583
,
1587
,
1590
,
1594
,
1597
,
1600
,
1603
,
1607
,
16
09
,
1613
,
1617
,
1619
,
1621
,
1623
,
1625
,
1627
,
1629
,
1631
,
16
10
,
1614
,
1618
,
1620
,
1622
,
1624
,
1626
,
1628
,
1630
,
1632
,
163
5
,
1643
,
1651
,
1653
,
1655
,
1659
,
1661
,
1664
,
1667
,
1679
,
163
6
,
1644
,
1652
,
1654
,
1656
,
1660
,
1662
,
1665
,
1668
,
1680
,
168
1
,
1686
,
1688
,
1691
,
1705
,
1708
,
1711
,
1713
,
1715
,
1719
,
168
2
,
1687
,
1689
,
1692
,
1706
,
1709
,
1712
,
1714
,
1716
,
1720
,
172
3
,
1729
,
1747
,
1752
,
1757
,
1760
,
1774
,
1783
,
1787
,
1791
,
172
4
,
1730
,
1748
,
1753
,
1758
,
1761
,
1775
,
1784
,
1788
,
1792
,
179
5
,
1801
,
1805
,
1810
,
1813
,
1818
,
1821
,
1822
,
1838
,
1843
,
179
6
,
1802
,
1806
,
1811
,
1814
,
1819
,
1822
,
1823
,
1839
,
1844
,
184
6
,
1858
,
1860
,
1870
,
1880
,
1881
,
1888
,
1890
,
1902
,
1906
,
184
7
,
1859
,
1861
,
1871
,
1881
,
1882
,
1889
,
1891
,
1903
,
1907
,
192
0
,
1926
,
1932
,
1933
,
1938
,
1943
,
1947
,
1951
,
1962
,
1969
,
192
1
,
1927
,
1933
,
1934
,
1939
,
1944
,
1948
,
1952
,
1963
,
1970
,
197
6
,
1983
,
1994
,
2000
,
2003
,
2008
,
2031
,
2061
,
2092
,
2123
,
197
7
,
1984
,
1995
,
2001
,
2004
,
2009
,
2032
,
2062
,
2093
,
2124
,
213
8
,
2152
,
2156
,
2160
,
2163
,
2168
,
2170
,
2173
,
2175
,
2179
,
213
9
,
2153
,
2157
,
2161
,
2164
,
2169
,
2171
,
2174
,
2176
,
2180
,
218
4
,
2187
,
2193
,
2198
,
2203
,
2205
,
2214
,
2215
,
2221
,
2223
,
218
5
,
2188
,
2194
,
2199
,
2204
,
2206
,
2215
,
2216
,
2222
,
2224
,
223
3
,
2235
,
2239
,
2242
,
2248
,
2257
,
2265
,
2273
,
2282
,
2295
,
223
4
,
2236
,
2240
,
2243
,
2249
,
2258
,
2266
,
2274
,
2283
,
2296
,
230
0
,
2305
,
2307
,
2316
,
2319
,
2324
,
2327
,
2331
,
2340
,
2342
,
230
1
,
2306
,
2308
,
2317
,
2320
,
2325
,
2328
,
2332
,
2341
,
2343
,
234
3
,
2344
,
2345
,
2346
,
2360
,
2363
,
2367
,
2373
,
2379
,
2386
,
234
4
,
2345
,
2346
,
2347
,
2361
,
2364
,
2368
,
2374
,
2380
,
2387
,
239
1
,
2397
,
2404
,
2410
,
2416
,
2421
,
2427
,
2434
,
2440
,
2446
,
239
2
,
2398
,
2405
,
2411
,
2417
,
2422
,
2428
,
2435
,
2441
,
2447
,
245
2
,
2460
,
2466
,
2472
,
2480
,
2487
,
2493
,
2502
,
2509
,
2517
,
245
3
,
2461
,
2467
,
2473
,
2481
,
2488
,
2494
,
2503
,
2510
,
2518
,
252
2
,
2525
,
2535
,
2537
,
2540
,
2542
,
2543
,
2546
,
2551
,
2552
,
252
3
,
2526
,
2536
,
2538
,
2541
,
2543
,
2544
,
2547
,
2552
,
2553
,
25
69
,
2575
,
2580
,
2584
,
2587
,
2588
,
2591
,
2599
,
2605
,
2614
,
25
70
,
2576
,
2581
,
2585
,
2588
,
2589
,
2592
,
2600
,
2606
,
2615
,
262
4
,
2631
,
2635
,
2640
,
2649
,
2656
,
2660
,
2670
,
2672
,
2673
,
262
5
,
2632
,
2636
,
2641
,
2650
,
2657
,
2661
,
2671
,
2673
,
2674
,
267
5
,
2677
,
2678
,
2679
,
2680
,
2682
,
2684
,
2687
,
2695
,
2702
,
267
6
,
2678
,
2679
,
2680
,
2681
,
2683
,
2685
,
2688
,
2696
,
2703
,
270
2
,
2709
,
2715
,
2717
,
2723
,
2728
,
2733
,
2742
,
2744
,
2750
,
270
3
,
2710
,
2716
,
2718
,
2724
,
2729
,
2734
,
2743
,
2745
,
2751
,
275
2
,
2755
,
2757
,
2758
,
2759
,
2762
,
2767
,
2769
,
2773
,
2776
,
275
3
,
2756
,
2758
,
2759
,
2760
,
2763
,
2768
,
2770
,
2774
,
2777
,
278
3
,
2789
,
2794
,
2801
,
2806
,
2811
,
2816
,
2823
,
2827
,
2830
,
278
4
,
2790
,
2795
,
2802
,
2807
,
2812
,
2817
,
2824
,
2828
,
2831
,
283
6
,
2838
,
2839
,
2840
,
2843
,
2845
,
2846
,
2847
,
2848
,
2849
,
283
7
,
2839
,
2840
,
2841
,
2844
,
2846
,
2847
,
2848
,
2849
,
2850
,
285
0
,
2851
,
2852
,
2853
,
2854
,
2855
,
2856
,
2857
,
2858
,
2859
,
285
1
,
2852
,
2853
,
2854
,
2855
,
2856
,
2857
,
2858
,
2859
,
2860
,
286
0
,
2861
,
2862
,
2863
,
2863
,
2866
,
2872
,
2877
,
2882
,
2888
,
286
1
,
2862
,
2863
,
2864
,
2864
,
2867
,
2873
,
2878
,
2883
,
2889
,
289
0
,
2893
,
2895
,
2902
,
2914
,
2919
,
2925
,
2927
,
2933
,
2937
,
289
1
,
2894
,
2896
,
2903
,
2915
,
2920
,
2926
,
2928
,
2934
,
2938
,
293
8
,
2944
,
2946
,
2949
,
2951
,
2957
,
2962
,
2968
,
2975
,
2984
293
9
,
2945
,
2947
,
2950
,
2952
,
2958
,
2963
,
2969
,
2976
,
2985
};
};
#endif
#endif
...
@@ -1748,7 +1748,7 @@ static const short yycheck[] = { 56,
...
@@ -1748,7 +1748,7 @@ static const short yycheck[] = { 56,
46
,
47
,
48
,
49
,
50
,
51
,
52
,
53
,
54
46
,
47
,
48
,
49
,
50
,
51
,
52
,
53
,
54
};
};
/* -*-C-*- Note some compilers choke on comments on `#line' lines. */
/* -*-C-*- Note some compilers choke on comments on `#line' lines. */
#line 3 "/usr/
share/misc
/bison.simple"
#line 3 "/usr/
lib
/bison.simple"
/* This file comes from bison-1.28. */
/* This file comes from bison-1.28. */
/* Skeleton output parser for bison,
/* Skeleton output parser for bison,
...
@@ -1962,7 +1962,7 @@ __yy_memcpy (char *to, char *from, unsigned int count)
...
@@ -1962,7 +1962,7 @@ __yy_memcpy (char *to, char *from, unsigned int count)
#endif
#endif
#endif
#endif
#line 217 "/usr/
share/misc
/bison.simple"
#line 217 "/usr/
lib
/bison.simple"
/* The user can define YYPARSE_PARAM as the name of an argument to be passed
/* The user can define YYPARSE_PARAM as the name of an argument to be passed
into yyparse. The argument should have type void *.
into yyparse. The argument should have type void *.
...
@@ -2291,14 +2291,14 @@ yyreduce:
...
@@ -2291,14 +2291,14 @@ yyreduce:
switch
(
yyn
)
{
switch
(
yyn
)
{
case
1
:
case
1
:
#line 25
8
"objc-parse.y"
#line 25
9
"objc-parse.y"
{
if
(
pedantic
)
{
if
(
pedantic
)
pedwarn
(
"ANSI C forbids an empty source file"
);
pedwarn
(
"ANSI C forbids an empty source file"
);
finish_file
();
finish_file
();
;
;
break
;}
break
;}
case
2
:
case
2
:
#line 26
3
"objc-parse.y"
#line 26
4
"objc-parse.y"
{
{
/* In case there were missing closebraces,
/* In case there were missing closebraces,
get us back to the global binding level. */
get us back to the global binding level. */
...
@@ -2308,15 +2308,15 @@ case 2:
...
@@ -2308,15 +2308,15 @@ case 2:
;
;
break
;}
break
;}
case
3
:
case
3
:
#line 27
7
"objc-parse.y"
#line 27
8
"objc-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
5
:
case
5
:
#line 27
8
"objc-parse.y"
#line 27
9
"objc-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
10
:
case
10
:
#line 28
6
"objc-parse.y"
#line 28
7
"objc-parse.y"
{
STRIP_NOPS
(
yyvsp
[
-
2
].
ttype
);
{
STRIP_NOPS
(
yyvsp
[
-
2
].
ttype
);
if
((
TREE_CODE
(
yyvsp
[
-
2
].
ttype
)
==
ADDR_EXPR
if
((
TREE_CODE
(
yyvsp
[
-
2
].
ttype
)
==
ADDR_EXPR
&&
TREE_CODE
(
TREE_OPERAND
(
yyvsp
[
-
2
].
ttype
,
0
))
==
STRING_CST
)
&&
TREE_CODE
(
TREE_OPERAND
(
yyvsp
[
-
2
].
ttype
,
0
))
==
STRING_CST
)
...
@@ -2326,11 +2326,11 @@ case 10:
...
@@ -2326,11 +2326,11 @@ case 10:
error
(
"argument of `asm' is not a constant string"
);
;
error
(
"argument of `asm' is not a constant string"
);
;
break
;}
break
;}
case
11
:
case
11
:
#line 29
4
"objc-parse.y"
#line 29
5
"objc-parse.y"
{
RESTORE_WARN_FLAGS
(
yyvsp
[
-
1
].
ttype
);
;
{
RESTORE_WARN_FLAGS
(
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
12
:
case
12
:
#line
299
"objc-parse.y"
#line
300
"objc-parse.y"
{
if
(
pedantic
)
{
if
(
pedantic
)
error
(
"ANSI C forbids data definition with no type or storage class"
);
error
(
"ANSI C forbids data definition with no type or storage class"
);
else
if
(
!
flag_traditional
)
else
if
(
!
flag_traditional
)
...
@@ -2341,162 +2341,162 @@ case 12:
...
@@ -2341,162 +2341,162 @@ case 12:
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
break
;}
break
;}
case
13
:
case
13
:
#line 30
8
"objc-parse.y"
#line 30
9
"objc-parse.y"
{
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
{
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
break
;}
break
;}
case
14
:
case
14
:
#line 31
2
"objc-parse.y"
#line 31
3
"objc-parse.y"
{
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
{
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
break
;}
break
;}
case
15
:
case
15
:
#line 31
6
"objc-parse.y"
#line 31
7
"objc-parse.y"
{
pedwarn
(
"empty declaration"
);
;
{
pedwarn
(
"empty declaration"
);
;
break
;}
break
;}
case
16
:
case
16
:
#line 31
8
"objc-parse.y"
#line 31
9
"objc-parse.y"
{
shadow_tag
(
yyvsp
[
-
1
].
ttype
);
;
{
shadow_tag
(
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
19
:
case
19
:
#line 32
2
"objc-parse.y"
#line 32
3
"objc-parse.y"
{
if
(
pedantic
)
{
if
(
pedantic
)
pedwarn
(
"ANSI C does not allow extra `;' outside of a function"
);
;
pedwarn
(
"ANSI C does not allow extra `;' outside of a function"
);
;
break
;}
break
;}
case
20
:
case
20
:
#line 32
8
"objc-parse.y"
#line 32
9
"objc-parse.y"
{
if
(
!
start_function
(
current_declspecs
,
yyvsp
[
0
].
ttype
,
{
if
(
!
start_function
(
current_declspecs
,
yyvsp
[
0
].
ttype
,
prefix_attributes
,
NULL_TREE
))
prefix_attributes
,
NULL_TREE
))
YYERROR1
;
YYERROR1
;
reinit_parse_for_function
();
;
reinit_parse_for_function
();
;
break
;}
break
;}
case
21
:
case
21
:
#line 33
3
"objc-parse.y"
#line 33
4
"objc-parse.y"
{
store_parm_decls
();
;
{
store_parm_decls
();
;
break
;}
break
;}
case
22
:
case
22
:
#line 33
5
"objc-parse.y"
#line 33
6
"objc-parse.y"
{
finish_function
(
0
);
{
finish_function
(
0
);
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
break
;}
break
;}
case
23
:
case
23
:
#line 34
0
"objc-parse.y"
#line 34
1
"objc-parse.y"
{
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
{
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
break
;}
break
;}
case
24
:
case
24
:
#line 34
4
"objc-parse.y"
#line 34
5
"objc-parse.y"
{
if
(
!
start_function
(
current_declspecs
,
yyvsp
[
0
].
ttype
,
{
if
(
!
start_function
(
current_declspecs
,
yyvsp
[
0
].
ttype
,
prefix_attributes
,
NULL_TREE
))
prefix_attributes
,
NULL_TREE
))
YYERROR1
;
YYERROR1
;
reinit_parse_for_function
();
;
reinit_parse_for_function
();
;
break
;}
break
;}
case
25
:
case
25
:
#line 3
49
"objc-parse.y"
#line 3
50
"objc-parse.y"
{
store_parm_decls
();
;
{
store_parm_decls
();
;
break
;}
break
;}
case
26
:
case
26
:
#line 35
1
"objc-parse.y"
#line 35
2
"objc-parse.y"
{
finish_function
(
0
);
{
finish_function
(
0
);
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
break
;}
break
;}
case
27
:
case
27
:
#line 35
6
"objc-parse.y"
#line 35
7
"objc-parse.y"
{
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
{
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
break
;}
break
;}
case
28
:
case
28
:
#line 36
0
"objc-parse.y"
#line 36
1
"objc-parse.y"
{
if
(
!
start_function
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
{
if
(
!
start_function
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
prefix_attributes
,
NULL_TREE
))
prefix_attributes
,
NULL_TREE
))
YYERROR1
;
YYERROR1
;
reinit_parse_for_function
();
;
reinit_parse_for_function
();
;
break
;}
break
;}
case
29
:
case
29
:
#line 36
5
"objc-parse.y"
#line 36
6
"objc-parse.y"
{
store_parm_decls
();
;
{
store_parm_decls
();
;
break
;}
break
;}
case
30
:
case
30
:
#line 36
7
"objc-parse.y"
#line 36
8
"objc-parse.y"
{
finish_function
(
0
);
{
finish_function
(
0
);
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
break
;}
break
;}
case
31
:
case
31
:
#line 37
2
"objc-parse.y"
#line 37
3
"objc-parse.y"
{
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
{
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
break
;}
break
;}
case
36
:
case
36
:
#line 38
5
"objc-parse.y"
#line 38
6
"objc-parse.y"
{
yyval
.
code
=
ADDR_EXPR
;
;
{
yyval
.
code
=
ADDR_EXPR
;
;
break
;}
break
;}
case
37
:
case
37
:
#line 38
7
"objc-parse.y"
#line 38
8
"objc-parse.y"
{
yyval
.
code
=
NEGATE_EXPR
;
;
{
yyval
.
code
=
NEGATE_EXPR
;
;
break
;}
break
;}
case
38
:
case
38
:
#line 3
89
"objc-parse.y"
#line 3
90
"objc-parse.y"
{
yyval
.
code
=
CONVERT_EXPR
;
;
{
yyval
.
code
=
CONVERT_EXPR
;
;
break
;}
break
;}
case
39
:
case
39
:
#line 39
1
"objc-parse.y"
#line 39
2
"objc-parse.y"
{
yyval
.
code
=
PREINCREMENT_EXPR
;
;
{
yyval
.
code
=
PREINCREMENT_EXPR
;
;
break
;}
break
;}
case
40
:
case
40
:
#line 39
3
"objc-parse.y"
#line 39
4
"objc-parse.y"
{
yyval
.
code
=
PREDECREMENT_EXPR
;
;
{
yyval
.
code
=
PREDECREMENT_EXPR
;
;
break
;}
break
;}
case
41
:
case
41
:
#line 39
5
"objc-parse.y"
#line 39
6
"objc-parse.y"
{
yyval
.
code
=
BIT_NOT_EXPR
;
;
{
yyval
.
code
=
BIT_NOT_EXPR
;
;
break
;}
break
;}
case
42
:
case
42
:
#line 39
7
"objc-parse.y"
#line 39
8
"objc-parse.y"
{
yyval
.
code
=
TRUTH_NOT_EXPR
;
;
{
yyval
.
code
=
TRUTH_NOT_EXPR
;
;
break
;}
break
;}
case
43
:
case
43
:
#line 40
1
"objc-parse.y"
#line 40
2
"objc-parse.y"
{
yyval
.
ttype
=
build_compound_expr
(
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
build_compound_expr
(
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
44
:
case
44
:
#line 40
6
"objc-parse.y"
#line 40
7
"objc-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
46
:
case
46
:
#line 41
2
"objc-parse.y"
#line 41
3
"objc-parse.y"
{
yyval
.
ttype
=
build_tree_list
(
NULL_TREE
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
build_tree_list
(
NULL_TREE
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
47
:
case
47
:
#line 41
4
"objc-parse.y"
#line 41
5
"objc-parse.y"
{
chainon
(
yyvsp
[
-
2
].
ttype
,
build_tree_list
(
NULL_TREE
,
yyvsp
[
0
].
ttype
));
;
{
chainon
(
yyvsp
[
-
2
].
ttype
,
build_tree_list
(
NULL_TREE
,
yyvsp
[
0
].
ttype
));
;
break
;}
break
;}
case
49
:
case
49
:
#line 42
0
"objc-parse.y"
#line 42
1
"objc-parse.y"
{
yyval
.
ttype
=
build_indirect_ref
(
yyvsp
[
0
].
ttype
,
"unary *"
);
;
{
yyval
.
ttype
=
build_indirect_ref
(
yyvsp
[
0
].
ttype
,
"unary *"
);
;
break
;}
break
;}
case
50
:
case
50
:
#line 42
3
"objc-parse.y"
#line 42
4
"objc-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
RESTORE_WARN_FLAGS
(
yyvsp
[
-
1
].
ttype
);
;
RESTORE_WARN_FLAGS
(
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
51
:
case
51
:
#line 42
6
"objc-parse.y"
#line 42
7
"objc-parse.y"
{
yyval
.
ttype
=
build_unary_op
(
yyvsp
[
-
1
].
code
,
yyvsp
[
0
].
ttype
,
0
);
{
yyval
.
ttype
=
build_unary_op
(
yyvsp
[
-
1
].
code
,
yyvsp
[
0
].
ttype
,
0
);
overflow_warning
(
yyval
.
ttype
);
;
overflow_warning
(
yyval
.
ttype
);
;
break
;}
break
;}
case
52
:
case
52
:
#line 43
0
"objc-parse.y"
#line 43
1
"objc-parse.y"
{
tree
label
=
lookup_label
(
yyvsp
[
0
].
ttype
);
{
tree
label
=
lookup_label
(
yyvsp
[
0
].
ttype
);
if
(
pedantic
)
if
(
pedantic
)
pedwarn
(
"ANSI C forbids `&&'"
);
pedwarn
(
"ANSI C forbids `&&'"
);
...
@@ -2511,7 +2511,7 @@ case 52:
...
@@ -2511,7 +2511,7 @@ case 52:
;
;
break
;}
break
;}
case
53
:
case
53
:
#line 45
8
"objc-parse.y"
#line 45
9
"objc-parse.y"
{
skip_evaluation
--
;
{
skip_evaluation
--
;
if
(
TREE_CODE
(
yyvsp
[
0
].
ttype
)
==
COMPONENT_REF
if
(
TREE_CODE
(
yyvsp
[
0
].
ttype
)
==
COMPONENT_REF
&&
DECL_C_BIT_FIELD
(
TREE_OPERAND
(
yyvsp
[
0
].
ttype
,
1
)))
&&
DECL_C_BIT_FIELD
(
TREE_OPERAND
(
yyvsp
[
0
].
ttype
,
1
)))
...
@@ -2519,53 +2519,53 @@ case 53:
...
@@ -2519,53 +2519,53 @@ case 53:
yyval
.
ttype
=
c_sizeof
(
TREE_TYPE
(
yyvsp
[
0
].
ttype
));
;
yyval
.
ttype
=
c_sizeof
(
TREE_TYPE
(
yyvsp
[
0
].
ttype
));
;
break
;}
break
;}
case
54
:
case
54
:
#line 46
4
"objc-parse.y"
#line 46
5
"objc-parse.y"
{
skip_evaluation
--
;
{
skip_evaluation
--
;
yyval
.
ttype
=
c_sizeof
(
groktypename
(
yyvsp
[
-
1
].
ttype
));
;
yyval
.
ttype
=
c_sizeof
(
groktypename
(
yyvsp
[
-
1
].
ttype
));
;
break
;}
break
;}
case
55
:
case
55
:
#line 46
7
"objc-parse.y"
#line 46
8
"objc-parse.y"
{
skip_evaluation
--
;
{
skip_evaluation
--
;
yyval
.
ttype
=
c_alignof_expr
(
yyvsp
[
0
].
ttype
);
;
yyval
.
ttype
=
c_alignof_expr
(
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
56
:
case
56
:
#line 47
0
"objc-parse.y"
#line 47
1
"objc-parse.y"
{
skip_evaluation
--
;
{
skip_evaluation
--
;
yyval
.
ttype
=
c_alignof
(
groktypename
(
yyvsp
[
-
1
].
ttype
));
;
yyval
.
ttype
=
c_alignof
(
groktypename
(
yyvsp
[
-
1
].
ttype
));
;
break
;}
break
;}
case
57
:
case
57
:
#line 47
3
"objc-parse.y"
#line 47
4
"objc-parse.y"
{
yyval
.
ttype
=
build_unary_op
(
REALPART_EXPR
,
yyvsp
[
0
].
ttype
,
0
);
;
{
yyval
.
ttype
=
build_unary_op
(
REALPART_EXPR
,
yyvsp
[
0
].
ttype
,
0
);
;
break
;}
break
;}
case
58
:
case
58
:
#line 47
5
"objc-parse.y"
#line 47
6
"objc-parse.y"
{
yyval
.
ttype
=
build_unary_op
(
IMAGPART_EXPR
,
yyvsp
[
0
].
ttype
,
0
);
;
{
yyval
.
ttype
=
build_unary_op
(
IMAGPART_EXPR
,
yyvsp
[
0
].
ttype
,
0
);
;
break
;}
break
;}
case
59
:
case
59
:
#line 47
7
"objc-parse.y"
#line 47
8
"objc-parse.y"
{
yyval
.
ttype
=
build_va_arg
(
yyvsp
[
-
3
].
ttype
,
groktypename
(
yyvsp
[
-
1
].
ttype
));
;
{
yyval
.
ttype
=
build_va_arg
(
yyvsp
[
-
3
].
ttype
,
groktypename
(
yyvsp
[
-
1
].
ttype
));
;
break
;}
break
;}
case
60
:
case
60
:
#line 48
1
"objc-parse.y"
#line 48
2
"objc-parse.y"
{
skip_evaluation
++
;
;
{
skip_evaluation
++
;
;
break
;}
break
;}
case
61
:
case
61
:
#line 48
5
"objc-parse.y"
#line 48
6
"objc-parse.y"
{
skip_evaluation
++
;
;
{
skip_evaluation
++
;
;
break
;}
break
;}
case
63
:
case
63
:
#line 49
1
"objc-parse.y"
#line 49
2
"objc-parse.y"
{
tree
type
=
groktypename
(
yyvsp
[
-
2
].
ttype
);
{
tree
type
=
groktypename
(
yyvsp
[
-
2
].
ttype
);
yyval
.
ttype
=
build_c_cast
(
type
,
yyvsp
[
0
].
ttype
);
;
yyval
.
ttype
=
build_c_cast
(
type
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
64
:
case
64
:
#line 49
4
"objc-parse.y"
#line 49
5
"objc-parse.y"
{
start_init
(
NULL_TREE
,
NULL
,
0
);
{
start_init
(
NULL_TREE
,
NULL
,
0
);
yyvsp
[
-
2
].
ttype
=
groktypename
(
yyvsp
[
-
2
].
ttype
);
yyvsp
[
-
2
].
ttype
=
groktypename
(
yyvsp
[
-
2
].
ttype
);
really_start_incremental_init
(
yyvsp
[
-
2
].
ttype
);
;
really_start_incremental_init
(
yyvsp
[
-
2
].
ttype
);
;
break
;}
break
;}
case
65
:
case
65
:
#line 49
8
"objc-parse.y"
#line 49
9
"objc-parse.y"
{
const
char
*
name
;
{
const
char
*
name
;
tree
result
=
pop_init_level
(
0
);
tree
result
=
pop_init_level
(
0
);
tree
type
=
yyvsp
[
-
5
].
ttype
;
tree
type
=
yyvsp
[
-
5
].
ttype
;
...
@@ -2592,90 +2592,90 @@ case 65:
...
@@ -2592,90 +2592,90 @@ case 65:
;
;
break
;}
break
;}
case
67
:
case
67
:
#line 52
7
"objc-parse.y"
#line 52
8
"objc-parse.y"
{
yyval
.
ttype
=
parser_build_binary_op
(
yyvsp
[
-
1
].
code
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
parser_build_binary_op
(
yyvsp
[
-
1
].
code
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
68
:
case
68
:
#line 5
29
"objc-parse.y"
#line 5
30
"objc-parse.y"
{
yyval
.
ttype
=
parser_build_binary_op
(
yyvsp
[
-
1
].
code
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
parser_build_binary_op
(
yyvsp
[
-
1
].
code
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
69
:
case
69
:
#line 53
1
"objc-parse.y"
#line 53
2
"objc-parse.y"
{
yyval
.
ttype
=
parser_build_binary_op
(
yyvsp
[
-
1
].
code
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
parser_build_binary_op
(
yyvsp
[
-
1
].
code
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
70
:
case
70
:
#line 53
3
"objc-parse.y"
#line 53
4
"objc-parse.y"
{
yyval
.
ttype
=
parser_build_binary_op
(
yyvsp
[
-
1
].
code
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
parser_build_binary_op
(
yyvsp
[
-
1
].
code
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
71
:
case
71
:
#line 53
5
"objc-parse.y"
#line 53
6
"objc-parse.y"
{
yyval
.
ttype
=
parser_build_binary_op
(
yyvsp
[
-
1
].
code
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
parser_build_binary_op
(
yyvsp
[
-
1
].
code
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
72
:
case
72
:
#line 53
7
"objc-parse.y"
#line 53
8
"objc-parse.y"
{
yyval
.
ttype
=
parser_build_binary_op
(
yyvsp
[
-
1
].
code
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
parser_build_binary_op
(
yyvsp
[
-
1
].
code
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
73
:
case
73
:
#line 5
39
"objc-parse.y"
#line 5
40
"objc-parse.y"
{
yyval
.
ttype
=
parser_build_binary_op
(
yyvsp
[
-
1
].
code
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
parser_build_binary_op
(
yyvsp
[
-
1
].
code
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
74
:
case
74
:
#line 54
1
"objc-parse.y"
#line 54
2
"objc-parse.y"
{
yyval
.
ttype
=
parser_build_binary_op
(
yyvsp
[
-
1
].
code
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
parser_build_binary_op
(
yyvsp
[
-
1
].
code
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
75
:
case
75
:
#line 54
3
"objc-parse.y"
#line 54
4
"objc-parse.y"
{
yyval
.
ttype
=
parser_build_binary_op
(
yyvsp
[
-
1
].
code
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
parser_build_binary_op
(
yyvsp
[
-
1
].
code
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
76
:
case
76
:
#line 54
5
"objc-parse.y"
#line 54
6
"objc-parse.y"
{
yyval
.
ttype
=
parser_build_binary_op
(
yyvsp
[
-
1
].
code
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
parser_build_binary_op
(
yyvsp
[
-
1
].
code
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
77
:
case
77
:
#line 54
7
"objc-parse.y"
#line 54
8
"objc-parse.y"
{
yyval
.
ttype
=
parser_build_binary_op
(
yyvsp
[
-
1
].
code
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
parser_build_binary_op
(
yyvsp
[
-
1
].
code
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
78
:
case
78
:
#line 5
49
"objc-parse.y"
#line 5
50
"objc-parse.y"
{
yyval
.
ttype
=
parser_build_binary_op
(
yyvsp
[
-
1
].
code
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
parser_build_binary_op
(
yyvsp
[
-
1
].
code
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
79
:
case
79
:
#line 55
1
"objc-parse.y"
#line 55
2
"objc-parse.y"
{
yyvsp
[
-
1
].
ttype
=
truthvalue_conversion
(
default_conversion
(
yyvsp
[
-
1
].
ttype
));
{
yyvsp
[
-
1
].
ttype
=
truthvalue_conversion
(
default_conversion
(
yyvsp
[
-
1
].
ttype
));
skip_evaluation
+=
yyvsp
[
-
1
].
ttype
==
boolean_false_node
;
;
skip_evaluation
+=
yyvsp
[
-
1
].
ttype
==
boolean_false_node
;
;
break
;}
break
;}
case
80
:
case
80
:
#line 55
4
"objc-parse.y"
#line 55
5
"objc-parse.y"
{
skip_evaluation
-=
yyvsp
[
-
3
].
ttype
==
boolean_false_node
;
{
skip_evaluation
-=
yyvsp
[
-
3
].
ttype
==
boolean_false_node
;
yyval
.
ttype
=
parser_build_binary_op
(
TRUTH_ANDIF_EXPR
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
0
].
ttype
);
;
yyval
.
ttype
=
parser_build_binary_op
(
TRUTH_ANDIF_EXPR
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
81
:
case
81
:
#line 55
7
"objc-parse.y"
#line 55
8
"objc-parse.y"
{
yyvsp
[
-
1
].
ttype
=
truthvalue_conversion
(
default_conversion
(
yyvsp
[
-
1
].
ttype
));
{
yyvsp
[
-
1
].
ttype
=
truthvalue_conversion
(
default_conversion
(
yyvsp
[
-
1
].
ttype
));
skip_evaluation
+=
yyvsp
[
-
1
].
ttype
==
boolean_true_node
;
;
skip_evaluation
+=
yyvsp
[
-
1
].
ttype
==
boolean_true_node
;
;
break
;}
break
;}
case
82
:
case
82
:
#line 56
0
"objc-parse.y"
#line 56
1
"objc-parse.y"
{
skip_evaluation
-=
yyvsp
[
-
3
].
ttype
==
boolean_true_node
;
{
skip_evaluation
-=
yyvsp
[
-
3
].
ttype
==
boolean_true_node
;
yyval
.
ttype
=
parser_build_binary_op
(
TRUTH_ORIF_EXPR
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
0
].
ttype
);
;
yyval
.
ttype
=
parser_build_binary_op
(
TRUTH_ORIF_EXPR
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
83
:
case
83
:
#line 56
3
"objc-parse.y"
#line 56
4
"objc-parse.y"
{
yyvsp
[
-
1
].
ttype
=
truthvalue_conversion
(
default_conversion
(
yyvsp
[
-
1
].
ttype
));
{
yyvsp
[
-
1
].
ttype
=
truthvalue_conversion
(
default_conversion
(
yyvsp
[
-
1
].
ttype
));
skip_evaluation
+=
yyvsp
[
-
1
].
ttype
==
boolean_false_node
;
;
skip_evaluation
+=
yyvsp
[
-
1
].
ttype
==
boolean_false_node
;
;
break
;}
break
;}
case
84
:
case
84
:
#line 56
6
"objc-parse.y"
#line 56
7
"objc-parse.y"
{
skip_evaluation
+=
((
yyvsp
[
-
4
].
ttype
==
boolean_true_node
)
{
skip_evaluation
+=
((
yyvsp
[
-
4
].
ttype
==
boolean_true_node
)
-
(
yyvsp
[
-
4
].
ttype
==
boolean_false_node
));
;
-
(
yyvsp
[
-
4
].
ttype
==
boolean_false_node
));
;
break
;}
break
;}
case
85
:
case
85
:
#line 5
69
"objc-parse.y"
#line 5
70
"objc-parse.y"
{
skip_evaluation
-=
yyvsp
[
-
6
].
ttype
==
boolean_true_node
;
{
skip_evaluation
-=
yyvsp
[
-
6
].
ttype
==
boolean_true_node
;
yyval
.
ttype
=
build_conditional_expr
(
yyvsp
[
-
6
].
ttype
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
0
].
ttype
);
;
yyval
.
ttype
=
build_conditional_expr
(
yyvsp
[
-
6
].
ttype
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
86
:
case
86
:
#line 57
2
"objc-parse.y"
#line 57
3
"objc-parse.y"
{
if
(
pedantic
)
{
if
(
pedantic
)
pedwarn
(
"ANSI C forbids omitting the middle term of a ?: expression"
);
pedwarn
(
"ANSI C forbids omitting the middle term of a ?: expression"
);
/* Make sure first operand is calculated only once. */
/* Make sure first operand is calculated only once. */
...
@@ -2684,12 +2684,12 @@ case 86:
...
@@ -2684,12 +2684,12 @@ case 86:
skip_evaluation
+=
yyvsp
[
-
1
].
ttype
==
boolean_true_node
;
;
skip_evaluation
+=
yyvsp
[
-
1
].
ttype
==
boolean_true_node
;
;
break
;}
break
;}
case
87
:
case
87
:
#line 5
79
"objc-parse.y"
#line 5
80
"objc-parse.y"
{
skip_evaluation
-=
yyvsp
[
-
4
].
ttype
==
boolean_true_node
;
{
skip_evaluation
-=
yyvsp
[
-
4
].
ttype
==
boolean_true_node
;
yyval
.
ttype
=
build_conditional_expr
(
yyvsp
[
-
4
].
ttype
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
0
].
ttype
);
;
yyval
.
ttype
=
build_conditional_expr
(
yyvsp
[
-
4
].
ttype
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
88
:
case
88
:
#line 58
2
"objc-parse.y"
#line 58
3
"objc-parse.y"
{
char
class
;
{
char
class
;
yyval
.
ttype
=
build_modify_expr
(
yyvsp
[
-
2
].
ttype
,
NOP_EXPR
,
yyvsp
[
0
].
ttype
);
yyval
.
ttype
=
build_modify_expr
(
yyvsp
[
-
2
].
ttype
,
NOP_EXPR
,
yyvsp
[
0
].
ttype
);
class
=
TREE_CODE_CLASS
(
TREE_CODE
(
yyval
.
ttype
));
class
=
TREE_CODE_CLASS
(
TREE_CODE
(
yyval
.
ttype
));
...
@@ -2699,7 +2699,7 @@ case 88:
...
@@ -2699,7 +2699,7 @@ case 88:
;
;
break
;}
break
;}
case
89
:
case
89
:
#line 59
0
"objc-parse.y"
#line 59
1
"objc-parse.y"
{
char
class
;
{
char
class
;
yyval
.
ttype
=
build_modify_expr
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
-
1
].
code
,
yyvsp
[
0
].
ttype
);
yyval
.
ttype
=
build_modify_expr
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
-
1
].
code
,
yyvsp
[
0
].
ttype
);
/* This inhibits warnings in truthvalue_conversion. */
/* This inhibits warnings in truthvalue_conversion. */
...
@@ -2710,7 +2710,7 @@ case 89:
...
@@ -2710,7 +2710,7 @@ case 89:
;
;
break
;}
break
;}
case
90
:
case
90
:
#line 60
2
"objc-parse.y"
#line 60
3
"objc-parse.y"
{
{
yyval
.
ttype
=
lastiddecl
;
yyval
.
ttype
=
lastiddecl
;
if
(
!
yyval
.
ttype
||
yyval
.
ttype
==
error_mark_node
)
if
(
!
yyval
.
ttype
||
yyval
.
ttype
==
error_mark_node
)
...
@@ -2871,11 +2871,11 @@ case 90:
...
@@ -2871,11 +2871,11 @@ case 90:
;
;
break
;}
break
;}
case
92
:
case
92
:
#line 76
2
"objc-parse.y"
#line 76
3
"objc-parse.y"
{
yyval
.
ttype
=
combine_strings
(
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
combine_strings
(
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
93
:
case
93
:
#line 76
4
"objc-parse.y"
#line 76
5
"objc-parse.y"
{
char
class
=
TREE_CODE_CLASS
(
TREE_CODE
(
yyvsp
[
-
1
].
ttype
));
{
char
class
=
TREE_CODE_CLASS
(
TREE_CODE
(
yyvsp
[
-
1
].
ttype
));
if
(
class
==
'e'
||
class
==
'1'
if
(
class
==
'e'
||
class
==
'1'
||
class
==
'2'
||
class
==
'<'
)
||
class
==
'2'
||
class
==
'<'
)
...
@@ -2883,11 +2883,11 @@ case 93:
...
@@ -2883,11 +2883,11 @@ case 93:
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
;
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
;
break
;}
break
;}
case
94
:
case
94
:
#line 77
0
"objc-parse.y"
#line 77
1
"objc-parse.y"
{
yyval
.
ttype
=
error_mark_node
;
;
{
yyval
.
ttype
=
error_mark_node
;
;
break
;}
break
;}
case
95
:
case
95
:
#line 77
2
"objc-parse.y"
#line 77
3
"objc-parse.y"
{
tree
rtl_exp
;
{
tree
rtl_exp
;
if
(
pedantic
)
if
(
pedantic
)
pedwarn
(
"ANSI C forbids braced-groups within expressions"
);
pedwarn
(
"ANSI C forbids braced-groups within expressions"
);
...
@@ -2912,7 +2912,7 @@ case 95:
...
@@ -2912,7 +2912,7 @@ case 95:
;
;
break
;}
break
;}
case
96
:
case
96
:
#line 79
5
"objc-parse.y"
#line 79
6
"objc-parse.y"
{
{
/* Make sure we call expand_end_stmt_expr. Otherwise
/* Make sure we call expand_end_stmt_expr. Otherwise
we are likely to lose sequences and crash later. */
we are likely to lose sequences and crash later. */
...
@@ -2923,15 +2923,15 @@ case 96:
...
@@ -2923,15 +2923,15 @@ case 96:
;
;
break
;}
break
;}
case
97
:
case
97
:
#line 80
4
"objc-parse.y"
#line 80
5
"objc-parse.y"
{
yyval
.
ttype
=
build_function_call
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
build_function_call
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
98
:
case
98
:
#line 80
6
"objc-parse.y"
#line 80
7
"objc-parse.y"
{
yyval
.
ttype
=
build_array_ref
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
build_array_ref
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
99
:
case
99
:
#line 80
8
"objc-parse.y"
#line 80
9
"objc-parse.y"
{
{
if
(
doing_objc_thang
)
if
(
doing_objc_thang
)
{
{
...
@@ -2945,7 +2945,7 @@ case 99:
...
@@ -2945,7 +2945,7 @@ case 99:
;
;
break
;}
break
;}
case
100
:
case
100
:
#line 82
0
"objc-parse.y"
#line 82
1
"objc-parse.y"
{
{
tree
expr
=
build_indirect_ref
(
yyvsp
[
-
2
].
ttype
,
"->"
);
tree
expr
=
build_indirect_ref
(
yyvsp
[
-
2
].
ttype
,
"->"
);
...
@@ -2961,79 +2961,79 @@ case 100:
...
@@ -2961,79 +2961,79 @@ case 100:
;
;
break
;}
break
;}
case
101
:
case
101
:
#line 83
4
"objc-parse.y"
#line 83
5
"objc-parse.y"
{
yyval
.
ttype
=
build_unary_op
(
POSTINCREMENT_EXPR
,
yyvsp
[
-
1
].
ttype
,
0
);
;
{
yyval
.
ttype
=
build_unary_op
(
POSTINCREMENT_EXPR
,
yyvsp
[
-
1
].
ttype
,
0
);
;
break
;}
break
;}
case
102
:
case
102
:
#line 83
6
"objc-parse.y"
#line 83
7
"objc-parse.y"
{
yyval
.
ttype
=
build_unary_op
(
POSTDECREMENT_EXPR
,
yyvsp
[
-
1
].
ttype
,
0
);
;
{
yyval
.
ttype
=
build_unary_op
(
POSTDECREMENT_EXPR
,
yyvsp
[
-
1
].
ttype
,
0
);
;
break
;}
break
;}
case
103
:
case
103
:
#line 83
8
"objc-parse.y"
#line 83
9
"objc-parse.y"
{
yyval
.
ttype
=
build_message_expr
(
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
build_message_expr
(
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
104
:
case
104
:
#line 84
0
"objc-parse.y"
#line 84
1
"objc-parse.y"
{
yyval
.
ttype
=
build_selector_expr
(
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
build_selector_expr
(
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
105
:
case
105
:
#line 84
2
"objc-parse.y"
#line 84
3
"objc-parse.y"
{
yyval
.
ttype
=
build_protocol_expr
(
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
build_protocol_expr
(
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
106
:
case
106
:
#line 84
4
"objc-parse.y"
#line 84
5
"objc-parse.y"
{
yyval
.
ttype
=
build_encode_expr
(
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
build_encode_expr
(
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
107
:
case
107
:
#line 84
6
"objc-parse.y"
#line 84
7
"objc-parse.y"
{
yyval
.
ttype
=
build_objc_string_object
(
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
build_objc_string_object
(
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
109
:
case
109
:
#line 85
3
"objc-parse.y"
#line 85
4
"objc-parse.y"
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
;
break
;}
break
;}
case
111
:
case
111
:
#line 86
2
"objc-parse.y"
#line 86
3
"objc-parse.y"
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
114
:
case
114
:
#line 87
0
"objc-parse.y"
#line 87
1
"objc-parse.y"
{
c_mark_varargs
();
{
c_mark_varargs
();
if
(
pedantic
)
if
(
pedantic
)
pedwarn
(
"ANSI C does not permit use of `varargs.h'"
);
;
pedwarn
(
"ANSI C does not permit use of `varargs.h'"
);
;
break
;}
break
;}
case
115
:
case
115
:
#line 88
0
"objc-parse.y"
#line 88
1
"objc-parse.y"
{
;
{
;
break
;}
break
;}
case
120
:
case
120
:
#line 89
6
"objc-parse.y"
#line 89
7
"objc-parse.y"
{
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
{
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
break
;}
break
;}
case
121
:
case
121
:
#line 90
0
"objc-parse.y"
#line 90
1
"objc-parse.y"
{
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
{
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
break
;}
break
;}
case
122
:
case
122
:
#line 90
4
"objc-parse.y"
#line 90
5
"objc-parse.y"
{
shadow_tag_warned
(
yyvsp
[
-
1
].
ttype
,
1
);
{
shadow_tag_warned
(
yyvsp
[
-
1
].
ttype
,
1
);
pedwarn
(
"empty declaration"
);
;
pedwarn
(
"empty declaration"
);
;
break
;}
break
;}
case
123
:
case
123
:
#line 90
7
"objc-parse.y"
#line 90
8
"objc-parse.y"
{
pedwarn
(
"empty declaration"
);
;
{
pedwarn
(
"empty declaration"
);
;
break
;}
break
;}
case
124
:
case
124
:
#line 91
6
"objc-parse.y"
#line 91
7
"objc-parse.y"
{
;
{
;
break
;}
break
;}
case
129
:
case
129
:
#line 93
1
"objc-parse.y"
#line 93
2
"objc-parse.y"
{
pending_xref_error
();
{
pending_xref_error
();
declspec_stack
=
tree_cons
(
prefix_attributes
,
declspec_stack
=
tree_cons
(
prefix_attributes
,
current_declspecs
,
current_declspecs
,
...
@@ -3042,127 +3042,127 @@ case 129:
...
@@ -3042,127 +3042,127 @@ case 129:
&
current_declspecs
,
&
prefix_attributes
);
;
&
current_declspecs
,
&
prefix_attributes
);
;
break
;}
break
;}
case
130
:
case
130
:
#line 94
1
"objc-parse.y"
#line 94
2
"objc-parse.y"
{
prefix_attributes
=
chainon
(
prefix_attributes
,
yyvsp
[
0
].
ttype
);
;
{
prefix_attributes
=
chainon
(
prefix_attributes
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
131
:
case
131
:
#line 94
6
"objc-parse.y"
#line 94
7
"objc-parse.y"
{
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
{
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
break
;}
break
;}
case
132
:
case
132
:
#line 95
0
"objc-parse.y"
#line 95
1
"objc-parse.y"
{
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
{
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
break
;}
break
;}
case
133
:
case
133
:
#line 95
4
"objc-parse.y"
#line 95
5
"objc-parse.y"
{
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
{
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
break
;}
break
;}
case
134
:
case
134
:
#line 95
8
"objc-parse.y"
#line 95
9
"objc-parse.y"
{
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
{
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
break
;}
break
;}
case
135
:
case
135
:
#line 96
2
"objc-parse.y"
#line 96
3
"objc-parse.y"
{
shadow_tag
(
yyvsp
[
-
1
].
ttype
);
;
{
shadow_tag
(
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
136
:
case
136
:
#line 96
4
"objc-parse.y"
#line 96
5
"objc-parse.y"
{
pedwarn
(
"empty declaration"
);
;
{
pedwarn
(
"empty declaration"
);
;
break
;}
break
;}
case
137
:
case
137
:
#line 96
6
"objc-parse.y"
#line 96
7
"objc-parse.y"
{
RESTORE_WARN_FLAGS
(
yyvsp
[
-
1
].
ttype
);
;
{
RESTORE_WARN_FLAGS
(
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
138
:
case
138
:
#line 97
6
"objc-parse.y"
#line 97
7
"objc-parse.y"
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
139
:
case
139
:
#line 97
8
"objc-parse.y"
#line 97
9
"objc-parse.y"
{
yyval
.
ttype
=
chainon
(
yyvsp
[
0
].
ttype
,
tree_cons
(
NULL_TREE
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
-
2
].
ttype
));
;
{
yyval
.
ttype
=
chainon
(
yyvsp
[
0
].
ttype
,
tree_cons
(
NULL_TREE
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
-
2
].
ttype
));
;
break
;}
break
;}
case
140
:
case
140
:
#line 98
2
"objc-parse.y"
#line 98
3
"objc-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
141
:
case
141
:
#line 98
4
"objc-parse.y"
#line 98
5
"objc-parse.y"
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
142
:
case
142
:
#line 98
6
"objc-parse.y"
#line 98
7
"objc-parse.y"
{
if
(
extra_warnings
)
{
if
(
extra_warnings
)
warning
(
"`%s' is not at beginning of declaration"
,
warning
(
"`%s' is not at beginning of declaration"
,
IDENTIFIER_POINTER
(
yyvsp
[
0
].
ttype
));
IDENTIFIER_POINTER
(
yyvsp
[
0
].
ttype
));
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
143
:
case
143
:
#line 99
1
"objc-parse.y"
#line 99
2
"objc-parse.y"
{
yyval
.
ttype
=
tree_cons
(
yyvsp
[
0
].
ttype
,
NULL_TREE
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
tree_cons
(
yyvsp
[
0
].
ttype
,
NULL_TREE
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
144
:
case
144
:
#line 99
6
"objc-parse.y"
#line 99
7
"objc-parse.y"
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
145
:
case
145
:
#line 99
8
"objc-parse.y"
#line 99
9
"objc-parse.y"
{
yyval
.
ttype
=
chainon
(
yyvsp
[
0
].
ttype
,
tree_cons
(
NULL_TREE
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
-
2
].
ttype
));
;
{
yyval
.
ttype
=
chainon
(
yyvsp
[
0
].
ttype
,
tree_cons
(
NULL_TREE
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
-
2
].
ttype
));
;
break
;}
break
;}
case
146
:
case
146
:
#line 100
3
"objc-parse.y"
#line 100
4
"objc-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
147
:
case
147
:
#line 100
5
"objc-parse.y"
#line 100
6
"objc-parse.y"
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
148
:
case
148
:
#line 100
7
"objc-parse.y"
#line 100
8
"objc-parse.y"
{
if
(
extra_warnings
)
{
if
(
extra_warnings
)
warning
(
"`%s' is not at beginning of declaration"
,
warning
(
"`%s' is not at beginning of declaration"
,
IDENTIFIER_POINTER
(
yyvsp
[
0
].
ttype
));
IDENTIFIER_POINTER
(
yyvsp
[
0
].
ttype
));
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
149
:
case
149
:
#line 102
0
"objc-parse.y"
#line 102
1
"objc-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
150
:
case
150
:
#line 102
2
"objc-parse.y"
#line 102
3
"objc-parse.y"
{
yyval
.
ttype
=
tree_cons
(
yyvsp
[
0
].
ttype
,
NULL_TREE
,
NULL_TREE
);
;
{
yyval
.
ttype
=
tree_cons
(
yyvsp
[
0
].
ttype
,
NULL_TREE
,
NULL_TREE
);
;
break
;}
break
;}
case
151
:
case
151
:
#line 102
4
"objc-parse.y"
#line 102
5
"objc-parse.y"
{
yyval
.
ttype
=
chainon
(
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
chainon
(
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
152
:
case
152
:
#line 102
6
"objc-parse.y"
#line 102
7
"objc-parse.y"
{
yyval
.
ttype
=
tree_cons
(
yyvsp
[
0
].
ttype
,
NULL_TREE
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
tree_cons
(
yyvsp
[
0
].
ttype
,
NULL_TREE
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
153
:
case
153
:
#line 103
1
"objc-parse.y"
#line 103
2
"objc-parse.y"
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
NULL_TREE
);
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
NULL_TREE
);
TREE_STATIC
(
yyval
.
ttype
)
=
1
;
;
TREE_STATIC
(
yyval
.
ttype
)
=
1
;
;
break
;}
break
;}
case
154
:
case
154
:
#line 103
4
"objc-parse.y"
#line 103
5
"objc-parse.y"
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
break
;}
break
;}
case
155
:
case
155
:
#line 103
6
"objc-parse.y"
#line 103
7
"objc-parse.y"
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ttype
);
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ttype
);
TREE_STATIC
(
yyval
.
ttype
)
=
1
;
;
TREE_STATIC
(
yyval
.
ttype
)
=
1
;
;
break
;}
break
;}
case
156
:
case
156
:
#line 10
39
"objc-parse.y"
#line 10
40
"objc-parse.y"
{
if
(
extra_warnings
&&
TREE_STATIC
(
yyvsp
[
-
1
].
ttype
))
{
if
(
extra_warnings
&&
TREE_STATIC
(
yyvsp
[
-
1
].
ttype
))
warning
(
"`%s' is not at beginning of declaration"
,
warning
(
"`%s' is not at beginning of declaration"
,
IDENTIFIER_POINTER
(
yyvsp
[
0
].
ttype
));
IDENTIFIER_POINTER
(
yyvsp
[
0
].
ttype
));
...
@@ -3170,180 +3170,180 @@ case 156:
...
@@ -3170,180 +3170,180 @@ case 156:
TREE_STATIC
(
yyval
.
ttype
)
=
TREE_STATIC
(
yyvsp
[
-
1
].
ttype
);
;
TREE_STATIC
(
yyval
.
ttype
)
=
TREE_STATIC
(
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
157
:
case
157
:
#line 105
3
"objc-parse.y"
#line 105
4
"objc-parse.y"
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
158
:
case
158
:
#line 105
5
"objc-parse.y"
#line 105
6
"objc-parse.y"
{
yyval
.
ttype
=
chainon
(
yyvsp
[
0
].
ttype
,
tree_cons
(
NULL_TREE
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
-
2
].
ttype
));
;
{
yyval
.
ttype
=
chainon
(
yyvsp
[
0
].
ttype
,
tree_cons
(
NULL_TREE
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
-
2
].
ttype
));
;
break
;}
break
;}
case
159
:
case
159
:
#line 10
59
"objc-parse.y"
#line 10
60
"objc-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
160
:
case
160
:
#line 106
1
"objc-parse.y"
#line 106
2
"objc-parse.y"
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
163
:
case
163
:
#line 107
1
"objc-parse.y"
#line 107
2
"objc-parse.y"
{
/* For a typedef name, record the meaning, not the name.
{
/* For a typedef name, record the meaning, not the name.
In case of `foo foo, bar;'. */
In case of `foo foo, bar;'. */
yyval
.
ttype
=
lookup_name
(
yyvsp
[
0
].
ttype
);
;
yyval
.
ttype
=
lookup_name
(
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
164
:
case
164
:
#line 107
5
"objc-parse.y"
#line 107
6
"objc-parse.y"
{
yyval
.
ttype
=
get_static_reference
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
get_static_reference
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
165
:
case
165
:
#line 107
7
"objc-parse.y"
#line 107
8
"objc-parse.y"
{
yyval
.
ttype
=
get_object_reference
(
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
get_object_reference
(
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
166
:
case
166
:
#line 108
2
"objc-parse.y"
#line 108
3
"objc-parse.y"
{
yyval
.
ttype
=
get_object_reference
(
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
get_object_reference
(
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
167
:
case
167
:
#line 108
4
"objc-parse.y"
#line 108
5
"objc-parse.y"
{
yyval
.
ttype
=
TREE_TYPE
(
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
TREE_TYPE
(
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
168
:
case
168
:
#line 108
6
"objc-parse.y"
#line 108
7
"objc-parse.y"
{
yyval
.
ttype
=
groktypename
(
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
groktypename
(
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
176
:
case
176
:
#line 110
8
"objc-parse.y"
#line 110
9
"objc-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
177
:
case
177
:
#line 111
0
"objc-parse.y"
#line 111
1
"objc-parse.y"
{
if
(
TREE_CHAIN
(
yyvsp
[
-
1
].
ttype
))
yyvsp
[
-
1
].
ttype
=
combine_strings
(
yyvsp
[
-
1
].
ttype
);
{
if
(
TREE_CHAIN
(
yyvsp
[
-
1
].
ttype
))
yyvsp
[
-
1
].
ttype
=
combine_strings
(
yyvsp
[
-
1
].
ttype
);
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
;
;
break
;}
break
;}
case
178
:
case
178
:
#line 111
7
"objc-parse.y"
#line 111
8
"objc-parse.y"
{
yyval
.
ttype
=
start_decl
(
yyvsp
[
-
3
].
ttype
,
current_declspecs
,
1
,
{
yyval
.
ttype
=
start_decl
(
yyvsp
[
-
3
].
ttype
,
current_declspecs
,
1
,
yyvsp
[
-
1
].
ttype
,
prefix_attributes
);
yyvsp
[
-
1
].
ttype
,
prefix_attributes
);
start_init
(
yyval
.
ttype
,
yyvsp
[
-
2
].
ttype
,
global_bindings_p
());
;
start_init
(
yyval
.
ttype
,
yyvsp
[
-
2
].
ttype
,
global_bindings_p
());
;
break
;}
break
;}
case
179
:
case
179
:
#line 112
2
"objc-parse.y"
#line 112
3
"objc-parse.y"
{
finish_init
();
{
finish_init
();
finish_decl
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
4
].
ttype
);
;
finish_decl
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
4
].
ttype
);
;
break
;}
break
;}
case
180
:
case
180
:
#line 112
5
"objc-parse.y"
#line 112
6
"objc-parse.y"
{
tree
d
=
start_decl
(
yyvsp
[
-
2
].
ttype
,
current_declspecs
,
0
,
{
tree
d
=
start_decl
(
yyvsp
[
-
2
].
ttype
,
current_declspecs
,
0
,
yyvsp
[
0
].
ttype
,
prefix_attributes
);
yyvsp
[
0
].
ttype
,
prefix_attributes
);
finish_decl
(
d
,
NULL_TREE
,
yyvsp
[
-
1
].
ttype
);
finish_decl
(
d
,
NULL_TREE
,
yyvsp
[
-
1
].
ttype
);
;
;
break
;}
break
;}
case
181
:
case
181
:
#line 113
3
"objc-parse.y"
#line 113
4
"objc-parse.y"
{
yyval
.
ttype
=
start_decl
(
yyvsp
[
-
3
].
ttype
,
current_declspecs
,
1
,
{
yyval
.
ttype
=
start_decl
(
yyvsp
[
-
3
].
ttype
,
current_declspecs
,
1
,
yyvsp
[
-
1
].
ttype
,
prefix_attributes
);
yyvsp
[
-
1
].
ttype
,
prefix_attributes
);
start_init
(
yyval
.
ttype
,
yyvsp
[
-
2
].
ttype
,
global_bindings_p
());
;
start_init
(
yyval
.
ttype
,
yyvsp
[
-
2
].
ttype
,
global_bindings_p
());
;
break
;}
break
;}
case
182
:
case
182
:
#line 113
8
"objc-parse.y"
#line 113
9
"objc-parse.y"
{
finish_init
();
{
finish_init
();
decl_attributes
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
-
3
].
ttype
,
prefix_attributes
);
decl_attributes
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
-
3
].
ttype
,
prefix_attributes
);
finish_decl
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
4
].
ttype
);
;
finish_decl
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
4
].
ttype
);
;
break
;}
break
;}
case
183
:
case
183
:
#line 114
2
"objc-parse.y"
#line 114
3
"objc-parse.y"
{
tree
d
=
start_decl
(
yyvsp
[
-
2
].
ttype
,
current_declspecs
,
0
,
{
tree
d
=
start_decl
(
yyvsp
[
-
2
].
ttype
,
current_declspecs
,
0
,
yyvsp
[
0
].
ttype
,
prefix_attributes
);
yyvsp
[
0
].
ttype
,
prefix_attributes
);
finish_decl
(
d
,
NULL_TREE
,
yyvsp
[
-
1
].
ttype
);
;
finish_decl
(
d
,
NULL_TREE
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
184
:
case
184
:
#line 115
0
"objc-parse.y"
#line 115
1
"objc-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
185
:
case
185
:
#line 115
2
"objc-parse.y"
#line 115
3
"objc-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
186
:
case
186
:
#line 115
7
"objc-parse.y"
#line 115
8
"objc-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
187
:
case
187
:
#line 11
59
"objc-parse.y"
#line 11
60
"objc-parse.y"
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
188
:
case
188
:
#line 116
4
"objc-parse.y"
#line 116
5
"objc-parse.y"
{
yyval
.
ttype
=
yyvsp
[
-
2
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
-
2
].
ttype
;
;
break
;}
break
;}
case
189
:
case
189
:
#line 11
69
"objc-parse.y"
#line 11
70
"objc-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
190
:
case
190
:
#line 117
1
"objc-parse.y"
#line 117
2
"objc-parse.y"
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
191
:
case
191
:
#line 117
6
"objc-parse.y"
#line 117
7
"objc-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
192
:
case
192
:
#line 117
8
"objc-parse.y"
#line 117
9
"objc-parse.y"
{
yyval
.
ttype
=
build_tree_list
(
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
{
yyval
.
ttype
=
build_tree_list
(
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
break
;}
break
;}
case
193
:
case
193
:
#line 118
0
"objc-parse.y"
#line 118
1
"objc-parse.y"
{
yyval
.
ttype
=
build_tree_list
(
yyvsp
[
-
3
].
ttype
,
build_tree_list
(
NULL_TREE
,
yyvsp
[
-
1
].
ttype
));
;
{
yyval
.
ttype
=
build_tree_list
(
yyvsp
[
-
3
].
ttype
,
build_tree_list
(
NULL_TREE
,
yyvsp
[
-
1
].
ttype
));
;
break
;}
break
;}
case
194
:
case
194
:
#line 118
2
"objc-parse.y"
#line 118
3
"objc-parse.y"
{
yyval
.
ttype
=
build_tree_list
(
yyvsp
[
-
5
].
ttype
,
tree_cons
(
NULL_TREE
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
));
;
{
yyval
.
ttype
=
build_tree_list
(
yyvsp
[
-
5
].
ttype
,
tree_cons
(
NULL_TREE
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
));
;
break
;}
break
;}
case
195
:
case
195
:
#line 118
4
"objc-parse.y"
#line 118
5
"objc-parse.y"
{
yyval
.
ttype
=
build_tree_list
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
build_tree_list
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
201
:
case
201
:
#line 120
2
"objc-parse.y"
#line 120
3
"objc-parse.y"
{
really_start_incremental_init
(
NULL_TREE
);
;
{
really_start_incremental_init
(
NULL_TREE
);
;
break
;}
break
;}
case
202
:
case
202
:
#line 120
4
"objc-parse.y"
#line 120
5
"objc-parse.y"
{
yyval
.
ttype
=
pop_init_level
(
0
);
;
{
yyval
.
ttype
=
pop_init_level
(
0
);
;
break
;}
break
;}
case
203
:
case
203
:
#line 120
6
"objc-parse.y"
#line 120
7
"objc-parse.y"
{
yyval
.
ttype
=
error_mark_node
;
;
{
yyval
.
ttype
=
error_mark_node
;
;
break
;}
break
;}
case
204
:
case
204
:
#line 121
2
"objc-parse.y"
#line 121
3
"objc-parse.y"
{
if
(
pedantic
)
{
if
(
pedantic
)
pedwarn
(
"ANSI C forbids empty initializer braces"
);
;
pedwarn
(
"ANSI C forbids empty initializer braces"
);
;
break
;}
break
;}
case
210
:
case
210
:
#line 122
8
"objc-parse.y"
#line 122
9
"objc-parse.y"
{
set_init_label
(
yyvsp
[
-
1
].
ttype
);
;
{
set_init_label
(
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
213
:
case
213
:
#line 123
5
"objc-parse.y"
#line 123
6
"objc-parse.y"
{
push_init_level
(
0
);
;
{
push_init_level
(
0
);
;
break
;}
break
;}
case
214
:
case
214
:
#line 123
7
"objc-parse.y"
#line 123
8
"objc-parse.y"
{
process_init_element
(
pop_init_level
(
0
));
;
{
process_init_element
(
pop_init_level
(
0
));
;
break
;}
break
;}
case
215
:
case
215
:
#line 12
39
"objc-parse.y"
#line 12
40
"objc-parse.y"
{
process_init_element
(
yyvsp
[
0
].
ttype
);
;
{
process_init_element
(
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
219
:
case
219
:
#line 125
0
"objc-parse.y"
#line 125
1
"objc-parse.y"
{
set_init_label
(
yyvsp
[
0
].
ttype
);
;
{
set_init_label
(
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
220
:
case
220
:
#line 125
8
"objc-parse.y"
#line 125
9
"objc-parse.y"
{
if
(
pedantic
)
{
if
(
pedantic
)
pedwarn
(
"ANSI C forbids nested functions"
);
pedwarn
(
"ANSI C forbids nested functions"
);
...
@@ -3357,16 +3357,16 @@ case 220:
...
@@ -3357,16 +3357,16 @@ case 220:
reinit_parse_for_function
();
;
reinit_parse_for_function
();
;
break
;}
break
;}
case
221
:
case
221
:
#line 127
0
"objc-parse.y"
#line 127
1
"objc-parse.y"
{
store_parm_decls
();
;
{
store_parm_decls
();
;
break
;}
break
;}
case
222
:
case
222
:
#line 127
8
"objc-parse.y"
#line 127
9
"objc-parse.y"
{
finish_function
(
1
);
{
finish_function
(
1
);
pop_function_context
();
;
pop_function_context
();
;
break
;}
break
;}
case
223
:
case
223
:
#line 128
4
"objc-parse.y"
#line 128
5
"objc-parse.y"
{
if
(
pedantic
)
{
if
(
pedantic
)
pedwarn
(
"ANSI C forbids nested functions"
);
pedwarn
(
"ANSI C forbids nested functions"
);
...
@@ -3380,195 +3380,195 @@ case 223:
...
@@ -3380,195 +3380,195 @@ case 223:
reinit_parse_for_function
();
;
reinit_parse_for_function
();
;
break
;}
break
;}
case
224
:
case
224
:
#line 129
6
"objc-parse.y"
#line 129
7
"objc-parse.y"
{
store_parm_decls
();
;
{
store_parm_decls
();
;
break
;}
break
;}
case
225
:
case
225
:
#line 130
4
"objc-parse.y"
#line 130
5
"objc-parse.y"
{
finish_function
(
1
);
{
finish_function
(
1
);
pop_function_context
();
;
pop_function_context
();
;
break
;}
break
;}
case
228
:
case
228
:
#line 132
0
"objc-parse.y"
#line 132
1
"objc-parse.y"
{
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
;
break
;}
break
;}
case
229
:
case
229
:
#line 132
2
"objc-parse.y"
#line 132
3
"objc-parse.y"
{
yyval
.
ttype
=
build_nt
(
CALL_EXPR
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
{
yyval
.
ttype
=
build_nt
(
CALL_EXPR
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
break
;}
break
;}
case
230
:
case
230
:
#line 132
7
"objc-parse.y"
#line 132
8
"objc-parse.y"
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
231
:
case
231
:
#line 13
29
"objc-parse.y"
#line 13
30
"objc-parse.y"
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
yyvsp
[
-
2
].
ttype
,
NULL_TREE
);
;
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
yyvsp
[
-
2
].
ttype
,
NULL_TREE
);
;
break
;}
break
;}
case
232
:
case
232
:
#line 133
1
"objc-parse.y"
#line 133
2
"objc-parse.y"
{
yyval
.
ttype
=
make_pointer_declarator
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
make_pointer_declarator
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
233
:
case
233
:
#line 133
8
"objc-parse.y"
#line 133
9
"objc-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
236
:
case
236
:
#line 135
0
"objc-parse.y"
#line 135
1
"objc-parse.y"
{
yyval
.
ttype
=
build_nt
(
CALL_EXPR
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
{
yyval
.
ttype
=
build_nt
(
CALL_EXPR
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
break
;}
break
;}
case
237
:
case
237
:
#line 135
5
"objc-parse.y"
#line 135
6
"objc-parse.y"
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
238
:
case
238
:
#line 135
7
"objc-parse.y"
#line 135
8
"objc-parse.y"
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
yyvsp
[
-
2
].
ttype
,
NULL_TREE
);
;
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
yyvsp
[
-
2
].
ttype
,
NULL_TREE
);
;
break
;}
break
;}
case
239
:
case
239
:
#line 13
59
"objc-parse.y"
#line 13
60
"objc-parse.y"
{
yyval
.
ttype
=
make_pointer_declarator
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
make_pointer_declarator
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
240
:
case
240
:
#line 136
6
"objc-parse.y"
#line 136
7
"objc-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
242
:
case
242
:
#line 137
5
"objc-parse.y"
#line 137
6
"objc-parse.y"
{
yyval
.
ttype
=
build_nt
(
CALL_EXPR
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
{
yyval
.
ttype
=
build_nt
(
CALL_EXPR
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
break
;}
break
;}
case
243
:
case
243
:
#line 138
0
"objc-parse.y"
#line 138
1
"objc-parse.y"
{
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
;
break
;}
break
;}
case
244
:
case
244
:
#line 138
2
"objc-parse.y"
#line 138
3
"objc-parse.y"
{
yyval
.
ttype
=
make_pointer_declarator
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
make_pointer_declarator
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
245
:
case
245
:
#line 138
4
"objc-parse.y"
#line 138
5
"objc-parse.y"
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
246
:
case
246
:
#line 138
6
"objc-parse.y"
#line 138
7
"objc-parse.y"
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
yyvsp
[
-
2
].
ttype
,
NULL_TREE
);
;
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
yyvsp
[
-
2
].
ttype
,
NULL_TREE
);
;
break
;}
break
;}
case
247
:
case
247
:
#line 139
3
"objc-parse.y"
#line 139
4
"objc-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
249
:
case
249
:
#line 1
399
"objc-parse.y"
#line 1
400
"objc-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
250
:
case
250
:
#line 140
1
"objc-parse.y"
#line 140
2
"objc-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
251
:
case
251
:
#line 140
6
"objc-parse.y"
#line 140
7
"objc-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
252
:
case
252
:
#line 140
8
"objc-parse.y"
#line 140
9
"objc-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
253
:
case
253
:
#line 141
3
"objc-parse.y"
#line 141
4
"objc-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
254
:
case
254
:
#line 141
5
"objc-parse.y"
#line 141
6
"objc-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
255
:
case
255
:
#line 142
0
"objc-parse.y"
#line 142
1
"objc-parse.y"
{
yyval
.
ttype
=
start_struct
(
RECORD_TYPE
,
yyvsp
[
-
1
].
ttype
);
{
yyval
.
ttype
=
start_struct
(
RECORD_TYPE
,
yyvsp
[
-
1
].
ttype
);
/* Start scope of tag before parsing components. */
/* Start scope of tag before parsing components. */
;
;
break
;}
break
;}
case
256
:
case
256
:
#line 142
4
"objc-parse.y"
#line 142
5
"objc-parse.y"
{
yyval
.
ttype
=
finish_struct
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
2
].
ttype
,
chainon
(
yyvsp
[
-
6
].
ttype
,
yyvsp
[
0
].
ttype
));
;
{
yyval
.
ttype
=
finish_struct
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
2
].
ttype
,
chainon
(
yyvsp
[
-
6
].
ttype
,
yyvsp
[
0
].
ttype
));
;
break
;}
break
;}
case
257
:
case
257
:
#line 142
6
"objc-parse.y"
#line 142
7
"objc-parse.y"
{
yyval
.
ttype
=
finish_struct
(
start_struct
(
RECORD_TYPE
,
NULL_TREE
),
{
yyval
.
ttype
=
finish_struct
(
start_struct
(
RECORD_TYPE
,
NULL_TREE
),
yyvsp
[
-
2
].
ttype
,
chainon
(
yyvsp
[
-
4
].
ttype
,
yyvsp
[
0
].
ttype
));
yyvsp
[
-
2
].
ttype
,
chainon
(
yyvsp
[
-
4
].
ttype
,
yyvsp
[
0
].
ttype
));
;
;
break
;}
break
;}
case
258
:
case
258
:
#line 143
0
"objc-parse.y"
#line 143
1
"objc-parse.y"
{
yyval
.
ttype
=
xref_tag
(
RECORD_TYPE
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
xref_tag
(
RECORD_TYPE
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
259
:
case
259
:
#line 143
2
"objc-parse.y"
#line 143
3
"objc-parse.y"
{
yyval
.
ttype
=
start_struct
(
UNION_TYPE
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
start_struct
(
UNION_TYPE
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
260
:
case
260
:
#line 143
4
"objc-parse.y"
#line 143
5
"objc-parse.y"
{
yyval
.
ttype
=
finish_struct
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
2
].
ttype
,
chainon
(
yyvsp
[
-
6
].
ttype
,
yyvsp
[
0
].
ttype
));
;
{
yyval
.
ttype
=
finish_struct
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
2
].
ttype
,
chainon
(
yyvsp
[
-
6
].
ttype
,
yyvsp
[
0
].
ttype
));
;
break
;}
break
;}
case
261
:
case
261
:
#line 143
6
"objc-parse.y"
#line 143
7
"objc-parse.y"
{
yyval
.
ttype
=
finish_struct
(
start_struct
(
UNION_TYPE
,
NULL_TREE
),
{
yyval
.
ttype
=
finish_struct
(
start_struct
(
UNION_TYPE
,
NULL_TREE
),
yyvsp
[
-
2
].
ttype
,
chainon
(
yyvsp
[
-
4
].
ttype
,
yyvsp
[
0
].
ttype
));
yyvsp
[
-
2
].
ttype
,
chainon
(
yyvsp
[
-
4
].
ttype
,
yyvsp
[
0
].
ttype
));
;
;
break
;}
break
;}
case
262
:
case
262
:
#line 144
0
"objc-parse.y"
#line 144
1
"objc-parse.y"
{
yyval
.
ttype
=
xref_tag
(
UNION_TYPE
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
xref_tag
(
UNION_TYPE
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
263
:
case
263
:
#line 144
2
"objc-parse.y"
#line 144
3
"objc-parse.y"
{
yyval
.
ttype
=
start_enum
(
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
start_enum
(
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
264
:
case
264
:
#line 144
4
"objc-parse.y"
#line 144
5
"objc-parse.y"
{
yyval
.
ttype
=
finish_enum
(
yyvsp
[
-
4
].
ttype
,
nreverse
(
yyvsp
[
-
3
].
ttype
),
{
yyval
.
ttype
=
finish_enum
(
yyvsp
[
-
4
].
ttype
,
nreverse
(
yyvsp
[
-
3
].
ttype
),
chainon
(
yyvsp
[
-
7
].
ttype
,
yyvsp
[
0
].
ttype
));
;
chainon
(
yyvsp
[
-
7
].
ttype
,
yyvsp
[
0
].
ttype
));
;
break
;}
break
;}
case
265
:
case
265
:
#line 144
7
"objc-parse.y"
#line 144
8
"objc-parse.y"
{
yyval
.
ttype
=
start_enum
(
NULL_TREE
);
;
{
yyval
.
ttype
=
start_enum
(
NULL_TREE
);
;
break
;}
break
;}
case
266
:
case
266
:
#line 14
49
"objc-parse.y"
#line 14
50
"objc-parse.y"
{
yyval
.
ttype
=
finish_enum
(
yyvsp
[
-
4
].
ttype
,
nreverse
(
yyvsp
[
-
3
].
ttype
),
{
yyval
.
ttype
=
finish_enum
(
yyvsp
[
-
4
].
ttype
,
nreverse
(
yyvsp
[
-
3
].
ttype
),
chainon
(
yyvsp
[
-
6
].
ttype
,
yyvsp
[
0
].
ttype
));
;
chainon
(
yyvsp
[
-
6
].
ttype
,
yyvsp
[
0
].
ttype
));
;
break
;}
break
;}
case
267
:
case
267
:
#line 145
2
"objc-parse.y"
#line 145
3
"objc-parse.y"
{
yyval
.
ttype
=
xref_tag
(
ENUMERAL_TYPE
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
xref_tag
(
ENUMERAL_TYPE
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
271
:
case
271
:
#line 146
3
"objc-parse.y"
#line 146
4
"objc-parse.y"
{
if
(
pedantic
&&
!
flag_isoc99
)
{
if
(
pedantic
&&
!
flag_isoc99
)
pedwarn
(
"comma at end of enumerator list"
);
;
pedwarn
(
"comma at end of enumerator list"
);
;
break
;}
break
;}
case
272
:
case
272
:
#line 14
69
"objc-parse.y"
#line 14
70
"objc-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
273
:
case
273
:
#line 147
1
"objc-parse.y"
#line 147
2
"objc-parse.y"
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
pedwarn
(
"no semicolon at end of struct or union"
);
;
pedwarn
(
"no semicolon at end of struct or union"
);
;
break
;}
break
;}
case
274
:
case
274
:
#line 147
6
"objc-parse.y"
#line 147
7
"objc-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
275
:
case
275
:
#line 147
8
"objc-parse.y"
#line 147
9
"objc-parse.y"
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
276
:
case
276
:
#line 148
0
"objc-parse.y"
#line 148
1
"objc-parse.y"
{
if
(
pedantic
)
{
if
(
pedantic
)
pedwarn
(
"extra semicolon in struct or union specified"
);
;
pedwarn
(
"extra semicolon in struct or union specified"
);
;
break
;}
break
;}
case
277
:
case
277
:
#line 148
4
"objc-parse.y"
#line 148
5
"objc-parse.y"
{
{
tree
interface
=
lookup_interface
(
yyvsp
[
-
1
].
ttype
);
tree
interface
=
lookup_interface
(
yyvsp
[
-
1
].
ttype
);
...
@@ -3583,14 +3583,14 @@ case 277:
...
@@ -3583,14 +3583,14 @@ case 277:
;
;
break
;}
break
;}
case
278
:
case
278
:
#line 15
09
"objc-parse.y"
#line 15
10
"objc-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
break
;}
break
;}
case
279
:
case
279
:
#line 151
4
"objc-parse.y"
#line 151
5
"objc-parse.y"
{
{
/* Support for unnamed structs or unions as members of
/* Support for unnamed structs or unions as members of
structs or unions (which is [a] useful and [b] supports
structs or unions (which is [a] useful and [b] supports
...
@@ -3605,151 +3605,151 @@ case 279:
...
@@ -3605,151 +3605,151 @@ case 279:
;
;
break
;}
break
;}
case
280
:
case
280
:
#line 152
7
"objc-parse.y"
#line 152
8
"objc-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
break
;}
break
;}
case
281
:
case
281
:
#line 153
2
"objc-parse.y"
#line 153
3
"objc-parse.y"
{
if
(
pedantic
)
{
if
(
pedantic
)
pedwarn
(
"ANSI C forbids member declarations with no members"
);
pedwarn
(
"ANSI C forbids member declarations with no members"
);
shadow_tag
(
yyvsp
[
0
].
ttype
);
shadow_tag
(
yyvsp
[
0
].
ttype
);
yyval
.
ttype
=
NULL_TREE
;
;
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
282
:
case
282
:
#line 153
7
"objc-parse.y"
#line 153
8
"objc-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
283
:
case
283
:
#line 15
39
"objc-parse.y"
#line 15
40
"objc-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
RESTORE_WARN_FLAGS
(
yyvsp
[
-
1
].
ttype
);
;
RESTORE_WARN_FLAGS
(
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
285
:
case
285
:
#line 154
6
"objc-parse.y"
#line 154
7
"objc-parse.y"
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
286
:
case
286
:
#line 155
1
"objc-parse.y"
#line 155
2
"objc-parse.y"
{
yyval
.
ttype
=
grokfield
(
yyvsp
[
-
3
].
filename
,
yyvsp
[
-
2
].
lineno
,
yyvsp
[
-
1
].
ttype
,
current_declspecs
,
NULL_TREE
);
{
yyval
.
ttype
=
grokfield
(
yyvsp
[
-
3
].
filename
,
yyvsp
[
-
2
].
lineno
,
yyvsp
[
-
1
].
ttype
,
current_declspecs
,
NULL_TREE
);
decl_attributes
(
yyval
.
ttype
,
yyvsp
[
0
].
ttype
,
prefix_attributes
);
;
decl_attributes
(
yyval
.
ttype
,
yyvsp
[
0
].
ttype
,
prefix_attributes
);
;
break
;}
break
;}
case
287
:
case
287
:
#line 155
5
"objc-parse.y"
#line 155
6
"objc-parse.y"
{
yyval
.
ttype
=
grokfield
(
yyvsp
[
-
5
].
filename
,
yyvsp
[
-
4
].
lineno
,
yyvsp
[
-
3
].
ttype
,
current_declspecs
,
yyvsp
[
-
1
].
ttype
);
{
yyval
.
ttype
=
grokfield
(
yyvsp
[
-
5
].
filename
,
yyvsp
[
-
4
].
lineno
,
yyvsp
[
-
3
].
ttype
,
current_declspecs
,
yyvsp
[
-
1
].
ttype
);
decl_attributes
(
yyval
.
ttype
,
yyvsp
[
0
].
ttype
,
prefix_attributes
);
;
decl_attributes
(
yyval
.
ttype
,
yyvsp
[
0
].
ttype
,
prefix_attributes
);
;
break
;}
break
;}
case
288
:
case
288
:
#line 155
8
"objc-parse.y"
#line 155
9
"objc-parse.y"
{
yyval
.
ttype
=
grokfield
(
yyvsp
[
-
4
].
filename
,
yyvsp
[
-
3
].
lineno
,
NULL_TREE
,
current_declspecs
,
yyvsp
[
-
1
].
ttype
);
{
yyval
.
ttype
=
grokfield
(
yyvsp
[
-
4
].
filename
,
yyvsp
[
-
3
].
lineno
,
NULL_TREE
,
current_declspecs
,
yyvsp
[
-
1
].
ttype
);
decl_attributes
(
yyval
.
ttype
,
yyvsp
[
0
].
ttype
,
prefix_attributes
);
;
decl_attributes
(
yyval
.
ttype
,
yyvsp
[
0
].
ttype
,
prefix_attributes
);
;
break
;}
break
;}
case
290
:
case
290
:
#line 157
0
"objc-parse.y"
#line 157
1
"objc-parse.y"
{
if
(
yyvsp
[
-
2
].
ttype
==
error_mark_node
)
{
if
(
yyvsp
[
-
2
].
ttype
==
error_mark_node
)
yyval
.
ttype
=
yyvsp
[
-
2
].
ttype
;
yyval
.
ttype
=
yyvsp
[
-
2
].
ttype
;
else
else
yyval
.
ttype
=
chainon
(
yyvsp
[
0
].
ttype
,
yyvsp
[
-
2
].
ttype
);
;
yyval
.
ttype
=
chainon
(
yyvsp
[
0
].
ttype
,
yyvsp
[
-
2
].
ttype
);
;
break
;}
break
;}
case
291
:
case
291
:
#line 157
5
"objc-parse.y"
#line 157
6
"objc-parse.y"
{
yyval
.
ttype
=
error_mark_node
;
;
{
yyval
.
ttype
=
error_mark_node
;
;
break
;}
break
;}
case
292
:
case
292
:
#line 158
1
"objc-parse.y"
#line 158
2
"objc-parse.y"
{
yyval
.
ttype
=
build_enumerator
(
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
{
yyval
.
ttype
=
build_enumerator
(
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
break
;}
break
;}
case
293
:
case
293
:
#line 158
3
"objc-parse.y"
#line 158
4
"objc-parse.y"
{
yyval
.
ttype
=
build_enumerator
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
build_enumerator
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
294
:
case
294
:
#line 158
8
"objc-parse.y"
#line 158
9
"objc-parse.y"
{
yyval
.
ttype
=
build_tree_list
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
build_tree_list
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
295
:
case
295
:
#line 159
0
"objc-parse.y"
#line 159
1
"objc-parse.y"
{
yyval
.
ttype
=
build_tree_list
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
build_tree_list
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
296
:
case
296
:
#line 159
5
"objc-parse.y"
#line 159
6
"objc-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
298
:
case
298
:
#line 160
1
"objc-parse.y"
#line 160
2
"objc-parse.y"
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
break
;}
break
;}
case
299
:
case
299
:
#line 160
3
"objc-parse.y"
#line 160
4
"objc-parse.y"
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
300
:
case
300
:
#line 160
8
"objc-parse.y"
#line 160
9
"objc-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
301
:
case
301
:
#line 161
0
"objc-parse.y"
#line 161
1
"objc-parse.y"
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
302
:
case
302
:
#line 161
5
"objc-parse.y"
#line 161
6
"objc-parse.y"
{
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
;
break
;}
break
;}
case
303
:
case
303
:
#line 161
8
"objc-parse.y"
#line 161
9
"objc-parse.y"
{
yyval
.
ttype
=
make_pointer_declarator
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
make_pointer_declarator
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
304
:
case
304
:
#line 162
0
"objc-parse.y"
#line 162
1
"objc-parse.y"
{
yyval
.
ttype
=
make_pointer_declarator
(
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
{
yyval
.
ttype
=
make_pointer_declarator
(
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
break
;}
break
;}
case
305
:
case
305
:
#line 162
2
"objc-parse.y"
#line 162
3
"objc-parse.y"
{
yyval
.
ttype
=
build_nt
(
CALL_EXPR
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
{
yyval
.
ttype
=
build_nt
(
CALL_EXPR
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
break
;}
break
;}
case
306
:
case
306
:
#line 162
4
"objc-parse.y"
#line 162
5
"objc-parse.y"
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
307
:
case
307
:
#line 162
6
"objc-parse.y"
#line 162
7
"objc-parse.y"
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
yyvsp
[
-
2
].
ttype
,
NULL_TREE
);
;
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
yyvsp
[
-
2
].
ttype
,
NULL_TREE
);
;
break
;}
break
;}
case
308
:
case
308
:
#line 162
8
"objc-parse.y"
#line 162
9
"objc-parse.y"
{
yyval
.
ttype
=
build_nt
(
CALL_EXPR
,
NULL_TREE
,
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
{
yyval
.
ttype
=
build_nt
(
CALL_EXPR
,
NULL_TREE
,
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
break
;}
break
;}
case
309
:
case
309
:
#line 163
0
"objc-parse.y"
#line 163
1
"objc-parse.y"
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
NULL_TREE
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
NULL_TREE
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
310
:
case
310
:
#line 163
2
"objc-parse.y"
#line 163
3
"objc-parse.y"
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
NULL_TREE
,
NULL_TREE
);
;
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
NULL_TREE
,
NULL_TREE
);
;
break
;}
break
;}
case
311
:
case
311
:
#line 163
6
"objc-parse.y"
#line 163
7
"objc-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
312
:
case
312
:
#line 164
5
"objc-parse.y"
#line 164
6
"objc-parse.y"
{
{
if
(
pedantic
&&
yyvsp
[
0
].
ends_in_label
)
if
(
pedantic
&&
yyvsp
[
0
].
ends_in_label
)
pedwarn
(
"ANSI C forbids label at end of compound statement"
);
pedwarn
(
"ANSI C forbids label at end of compound statement"
);
;
;
break
;}
break
;}
case
314
:
case
314
:
#line 165
4
"objc-parse.y"
#line 165
5
"objc-parse.y"
{
yyval
.
ends_in_label
=
yyvsp
[
0
].
ends_in_label
;
;
{
yyval
.
ends_in_label
=
yyvsp
[
0
].
ends_in_label
;
;
break
;}
break
;}
case
315
:
case
315
:
#line 165
6
"objc-parse.y"
#line 165
7
"objc-parse.y"
{
yyval
.
ends_in_label
=
0
;
;
{
yyval
.
ends_in_label
=
0
;
;
break
;}
break
;}
case
319
:
case
319
:
#line 166
8
"objc-parse.y"
#line 166
9
"objc-parse.y"
{
emit_line_note
(
input_filename
,
lineno
);
{
emit_line_note
(
input_filename
,
lineno
);
pushlevel
(
0
);
pushlevel
(
0
);
clear_last_expr
();
clear_last_expr
();
...
@@ -3759,12 +3759,12 @@ case 319:
...
@@ -3759,12 +3759,12 @@ case 319:
;
;
break
;}
break
;}
case
321
:
case
321
:
#line 168
2
"objc-parse.y"
#line 168
3
"objc-parse.y"
{
if
(
pedantic
)
{
if
(
pedantic
)
pedwarn
(
"ANSI C forbids label declarations"
);
;
pedwarn
(
"ANSI C forbids label declarations"
);
;
break
;}
break
;}
case
324
:
case
324
:
#line 169
3
"objc-parse.y"
#line 169
4
"objc-parse.y"
{
tree
link
;
{
tree
link
;
for
(
link
=
yyvsp
[
-
1
].
ttype
;
link
;
link
=
TREE_CHAIN
(
link
))
for
(
link
=
yyvsp
[
-
1
].
ttype
;
link
;
link
=
TREE_CHAIN
(
link
))
{
{
...
@@ -3775,37 +3775,37 @@ case 324:
...
@@ -3775,37 +3775,37 @@ case 324:
;
;
break
;}
break
;}
case
325
:
case
325
:
#line 170
7
"objc-parse.y"
#line 170
8
"objc-parse.y"
{;
{;
break
;}
break
;}
case
327
:
case
327
:
#line 171
1
"objc-parse.y"
#line 171
2
"objc-parse.y"
{
compstmt_count
++
;
;
{
compstmt_count
++
;
;
break
;}
break
;}
case
328
:
case
328
:
#line 171
4
"objc-parse.y"
#line 171
5
"objc-parse.y"
{
yyval
.
ttype
=
convert
(
void_type_node
,
integer_zero_node
);
;
{
yyval
.
ttype
=
convert
(
void_type_node
,
integer_zero_node
);
;
break
;}
break
;}
case
329
:
case
329
:
#line 171
6
"objc-parse.y"
#line 171
7
"objc-parse.y"
{
emit_line_note
(
input_filename
,
lineno
);
{
emit_line_note
(
input_filename
,
lineno
);
expand_end_bindings
(
getdecls
(),
1
,
0
);
expand_end_bindings
(
getdecls
(),
1
,
0
);
yyval
.
ttype
=
poplevel
(
1
,
1
,
0
);
;
yyval
.
ttype
=
poplevel
(
1
,
1
,
0
);
;
break
;}
break
;}
case
330
:
case
330
:
#line 172
0
"objc-parse.y"
#line 172
1
"objc-parse.y"
{
emit_line_note
(
input_filename
,
lineno
);
{
emit_line_note
(
input_filename
,
lineno
);
expand_end_bindings
(
getdecls
(),
kept_level_p
(),
0
);
expand_end_bindings
(
getdecls
(),
kept_level_p
(),
0
);
yyval
.
ttype
=
poplevel
(
kept_level_p
(),
0
,
0
);
;
yyval
.
ttype
=
poplevel
(
kept_level_p
(),
0
,
0
);
;
break
;}
break
;}
case
331
:
case
331
:
#line 172
4
"objc-parse.y"
#line 172
5
"objc-parse.y"
{
emit_line_note
(
input_filename
,
lineno
);
{
emit_line_note
(
input_filename
,
lineno
);
expand_end_bindings
(
getdecls
(),
kept_level_p
(),
0
);
expand_end_bindings
(
getdecls
(),
kept_level_p
(),
0
);
yyval
.
ttype
=
poplevel
(
kept_level_p
(),
0
,
0
);
;
yyval
.
ttype
=
poplevel
(
kept_level_p
(),
0
,
0
);
;
break
;}
break
;}
case
332
:
case
332
:
#line 173
1
"objc-parse.y"
#line 173
2
"objc-parse.y"
{
if
(
current_function_decl
==
0
)
{
if
(
current_function_decl
==
0
)
{
{
error
(
"braced-group within expression allowed only inside a function"
);
error
(
"braced-group within expression allowed only inside a function"
);
...
@@ -3823,11 +3823,11 @@ case 332:
...
@@ -3823,11 +3823,11 @@ case 332:
;
;
break
;}
break
;}
case
333
:
case
333
:
#line 174
8
"objc-parse.y"
#line 174
9
"objc-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
336
:
case
336
:
#line 176
2
"objc-parse.y"
#line 176
3
"objc-parse.y"
{
emit_line_note
(
yyvsp
[
-
5
].
filename
,
yyvsp
[
-
4
].
lineno
);
{
emit_line_note
(
yyvsp
[
-
5
].
filename
,
yyvsp
[
-
4
].
lineno
);
c_expand_start_cond
(
truthvalue_conversion
(
yyvsp
[
-
1
].
ttype
),
0
,
c_expand_start_cond
(
truthvalue_conversion
(
yyvsp
[
-
1
].
ttype
),
0
,
compstmt_count
);
compstmt_count
);
...
@@ -3837,7 +3837,7 @@ case 336:
...
@@ -3837,7 +3837,7 @@ case 336:
position_after_white_space
();
;
position_after_white_space
();
;
break
;}
break
;}
case
337
:
case
337
:
#line 177
6
"objc-parse.y"
#line 177
7
"objc-parse.y"
{
stmt_count
++
;
{
stmt_count
++
;
compstmt_count
++
;
compstmt_count
++
;
emit_line_note
(
yyvsp
[
-
2
].
filename
,
yyvsp
[
-
1
].
lineno
);
emit_line_note
(
yyvsp
[
-
2
].
filename
,
yyvsp
[
-
1
].
lineno
);
...
@@ -3847,43 +3847,43 @@ case 337:
...
@@ -3847,43 +3847,43 @@ case 337:
position_after_white_space
();
;
position_after_white_space
();
;
break
;}
break
;}
case
338
:
case
338
:
#line 178
4
"objc-parse.y"
#line 178
5
"objc-parse.y"
{
expand_loop_continue_here
();
;
{
expand_loop_continue_here
();
;
break
;}
break
;}
case
339
:
case
339
:
#line 178
8
"objc-parse.y"
#line 178
9
"objc-parse.y"
{
yyval
.
filename
=
input_filename
;
;
{
yyval
.
filename
=
input_filename
;
;
break
;}
break
;}
case
340
:
case
340
:
#line 179
2
"objc-parse.y"
#line 179
3
"objc-parse.y"
{
yyval
.
lineno
=
lineno
;
;
{
yyval
.
lineno
=
lineno
;
;
break
;}
break
;}
case
341
:
case
341
:
#line 179
7
"objc-parse.y"
#line 179
8
"objc-parse.y"
{
;
{
;
break
;}
break
;}
case
342
:
case
342
:
#line 180
2
"objc-parse.y"
#line 180
3
"objc-parse.y"
{
;
{
;
break
;}
break
;}
case
343
:
case
343
:
#line 180
7
"objc-parse.y"
#line 180
8
"objc-parse.y"
{
yyval
.
ends_in_label
=
yyvsp
[
0
].
ends_in_label
;
;
{
yyval
.
ends_in_label
=
yyvsp
[
0
].
ends_in_label
;
;
break
;}
break
;}
case
344
:
case
344
:
#line 181
2
"objc-parse.y"
#line 181
3
"objc-parse.y"
{
yyval
.
ends_in_label
=
0
;
;
{
yyval
.
ends_in_label
=
0
;
;
break
;}
break
;}
case
345
:
case
345
:
#line 181
4
"objc-parse.y"
#line 181
5
"objc-parse.y"
{
yyval
.
ends_in_label
=
1
;
;
{
yyval
.
ends_in_label
=
1
;
;
break
;}
break
;}
case
346
:
case
346
:
#line 182
0
"objc-parse.y"
#line 182
1
"objc-parse.y"
{
stmt_count
++
;
;
{
stmt_count
++
;
;
break
;}
break
;}
case
348
:
case
348
:
#line 182
3
"objc-parse.y"
#line 182
4
"objc-parse.y"
{
stmt_count
++
;
{
stmt_count
++
;
emit_line_note
(
yyvsp
[
-
3
].
filename
,
yyvsp
[
-
2
].
lineno
);
emit_line_note
(
yyvsp
[
-
3
].
filename
,
yyvsp
[
-
2
].
lineno
);
/* It appears that this should not be done--that a non-lvalue array
/* It appears that this should not be done--that a non-lvalue array
...
@@ -3901,19 +3901,19 @@ case 348:
...
@@ -3901,19 +3901,19 @@ case 348:
iterator_expand
(
yyvsp
[
-
1
].
ttype
);
;
iterator_expand
(
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
349
:
case
349
:
#line 18
39
"objc-parse.y"
#line 18
40
"objc-parse.y"
{
c_expand_start_else
();
{
c_expand_start_else
();
yyvsp
[
-
1
].
itype
=
stmt_count
;
yyvsp
[
-
1
].
itype
=
stmt_count
;
position_after_white_space
();
;
position_after_white_space
();
;
break
;}
break
;}
case
350
:
case
350
:
#line 184
3
"objc-parse.y"
#line 184
4
"objc-parse.y"
{
c_expand_end_cond
();
{
c_expand_end_cond
();
if
(
extra_warnings
&&
stmt_count
==
yyvsp
[
-
3
].
itype
)
if
(
extra_warnings
&&
stmt_count
==
yyvsp
[
-
3
].
itype
)
warning
(
"empty body in an else-statement"
);
;
warning
(
"empty body in an else-statement"
);
;
break
;}
break
;}
case
351
:
case
351
:
#line 184
7
"objc-parse.y"
#line 184
8
"objc-parse.y"
{
c_expand_end_cond
();
{
c_expand_end_cond
();
/* This warning is here instead of in simple_if, because we
/* This warning is here instead of in simple_if, because we
do not want a warning if an empty if is followed by an
do not want a warning if an empty if is followed by an
...
@@ -3924,11 +3924,11 @@ case 351:
...
@@ -3924,11 +3924,11 @@ case 351:
"empty body in an if-statement"
);
;
"empty body in an if-statement"
);
;
break
;}
break
;}
case
352
:
case
352
:
#line 18
59
"objc-parse.y"
#line 18
60
"objc-parse.y"
{
c_expand_end_cond
();
;
{
c_expand_end_cond
();
;
break
;}
break
;}
case
353
:
case
353
:
#line 186
1
"objc-parse.y"
#line 186
2
"objc-parse.y"
{
stmt_count
++
;
{
stmt_count
++
;
emit_line_note
(
yyvsp
[
-
2
].
filename
,
yyvsp
[
-
1
].
lineno
);
emit_line_note
(
yyvsp
[
-
2
].
filename
,
yyvsp
[
-
1
].
lineno
);
/* The emit_nop used to come before emit_line_note,
/* The emit_nop used to come before emit_line_note,
...
@@ -3940,7 +3940,7 @@ case 353:
...
@@ -3940,7 +3940,7 @@ case 353:
emit_nop
();
;
emit_nop
();
;
break
;}
break
;}
case
354
:
case
354
:
#line 187
1
"objc-parse.y"
#line 187
2
"objc-parse.y"
{
/* Don't start the loop till we have succeeded
{
/* Don't start the loop till we have succeeded
in parsing the end test. This is to make sure
in parsing the end test. This is to make sure
that we end every loop we start. */
that we end every loop we start. */
...
@@ -3951,22 +3951,22 @@ case 354:
...
@@ -3951,22 +3951,22 @@ case 354:
position_after_white_space
();
;
position_after_white_space
();
;
break
;}
break
;}
case
355
:
case
355
:
#line 188
0
"objc-parse.y"
#line 188
1
"objc-parse.y"
{
expand_end_loop
();
;
{
expand_end_loop
();
;
break
;}
break
;}
case
356
:
case
356
:
#line 188
3
"objc-parse.y"
#line 188
4
"objc-parse.y"
{
emit_line_note
(
input_filename
,
lineno
);
{
emit_line_note
(
input_filename
,
lineno
);
expand_exit_loop_if_false
(
NULL_PTR
,
expand_exit_loop_if_false
(
NULL_PTR
,
truthvalue_conversion
(
yyvsp
[
-
2
].
ttype
));
truthvalue_conversion
(
yyvsp
[
-
2
].
ttype
));
expand_end_loop
();
;
expand_end_loop
();
;
break
;}
break
;}
case
357
:
case
357
:
#line 18
89
"objc-parse.y"
#line 18
90
"objc-parse.y"
{
expand_end_loop
();
;
{
expand_end_loop
();
;
break
;}
break
;}
case
358
:
case
358
:
#line 189
2
"objc-parse.y"
#line 189
3
"objc-parse.y"
{
stmt_count
++
;
{
stmt_count
++
;
emit_line_note
(
yyvsp
[
-
5
].
filename
,
yyvsp
[
-
4
].
lineno
);
emit_line_note
(
yyvsp
[
-
5
].
filename
,
yyvsp
[
-
4
].
lineno
);
/* See comment in `while' alternative, above. */
/* See comment in `while' alternative, above. */
...
@@ -3979,12 +3979,12 @@ case 358:
...
@@ -3979,12 +3979,12 @@ case 358:
;
;
break
;}
break
;}
case
359
:
case
359
:
#line 190
4
"objc-parse.y"
#line 190
5
"objc-parse.y"
{
yyvsp
[
0
].
lineno
=
lineno
;
{
yyvsp
[
0
].
lineno
=
lineno
;
yyval
.
filename
=
input_filename
;
;
yyval
.
filename
=
input_filename
;
;
break
;}
break
;}
case
360
:
case
360
:
#line 190
7
"objc-parse.y"
#line 190
8
"objc-parse.y"
{
{
/* Start the loop. Doing this after parsing
/* Start the loop. Doing this after parsing
all the expressions ensures we will end the loop. */
all the expressions ensures we will end the loop. */
...
@@ -3999,7 +3999,7 @@ case 360:
...
@@ -3999,7 +3999,7 @@ case 360:
position_after_white_space
();
;
position_after_white_space
();
;
break
;}
break
;}
case
361
:
case
361
:
#line 192
0
"objc-parse.y"
#line 192
1
"objc-parse.y"
{
/* Emit the increment expression, with a line number. */
{
/* Emit the increment expression, with a line number. */
emit_line_note
(
yyvsp
[
-
4
].
filename
,
yyvsp
[
-
5
].
lineno
);
emit_line_note
(
yyvsp
[
-
4
].
filename
,
yyvsp
[
-
5
].
lineno
);
expand_loop_continue_here
();
expand_loop_continue_here
();
...
@@ -4008,44 +4008,44 @@ case 361:
...
@@ -4008,44 +4008,44 @@ case 361:
expand_end_loop
();
;
expand_end_loop
();
;
break
;}
break
;}
case
362
:
case
362
:
#line 192
7
"objc-parse.y"
#line 192
8
"objc-parse.y"
{
stmt_count
++
;
{
stmt_count
++
;
emit_line_note
(
yyvsp
[
-
5
].
filename
,
yyvsp
[
-
4
].
lineno
);
emit_line_note
(
yyvsp
[
-
5
].
filename
,
yyvsp
[
-
4
].
lineno
);
c_expand_start_case
(
yyvsp
[
-
1
].
ttype
);
c_expand_start_case
(
yyvsp
[
-
1
].
ttype
);
position_after_white_space
();
;
position_after_white_space
();
;
break
;}
break
;}
case
363
:
case
363
:
#line 193
2
"objc-parse.y"
#line 193
3
"objc-parse.y"
{
expand_end_case
(
yyvsp
[
-
3
].
ttype
);
;
{
expand_end_case
(
yyvsp
[
-
3
].
ttype
);
;
break
;}
break
;}
case
364
:
case
364
:
#line 193
4
"objc-parse.y"
#line 193
5
"objc-parse.y"
{
stmt_count
++
;
{
stmt_count
++
;
emit_line_note
(
yyvsp
[
-
3
].
filename
,
yyvsp
[
-
2
].
lineno
);
emit_line_note
(
yyvsp
[
-
3
].
filename
,
yyvsp
[
-
2
].
lineno
);
if
(
!
expand_exit_something
())
if
(
!
expand_exit_something
())
error
(
"break statement not within loop or switch"
);
;
error
(
"break statement not within loop or switch"
);
;
break
;}
break
;}
case
365
:
case
365
:
#line 19
39
"objc-parse.y"
#line 19
40
"objc-parse.y"
{
stmt_count
++
;
{
stmt_count
++
;
emit_line_note
(
yyvsp
[
-
3
].
filename
,
yyvsp
[
-
2
].
lineno
);
emit_line_note
(
yyvsp
[
-
3
].
filename
,
yyvsp
[
-
2
].
lineno
);
if
(
!
expand_continue_loop
(
NULL_PTR
))
if
(
!
expand_continue_loop
(
NULL_PTR
))
error
(
"continue statement not within a loop"
);
;
error
(
"continue statement not within a loop"
);
;
break
;}
break
;}
case
366
:
case
366
:
#line 194
4
"objc-parse.y"
#line 194
5
"objc-parse.y"
{
stmt_count
++
;
{
stmt_count
++
;
emit_line_note
(
yyvsp
[
-
3
].
filename
,
yyvsp
[
-
2
].
lineno
);
emit_line_note
(
yyvsp
[
-
3
].
filename
,
yyvsp
[
-
2
].
lineno
);
c_expand_return
(
NULL_TREE
);
;
c_expand_return
(
NULL_TREE
);
;
break
;}
break
;}
case
367
:
case
367
:
#line 194
8
"objc-parse.y"
#line 194
9
"objc-parse.y"
{
stmt_count
++
;
{
stmt_count
++
;
emit_line_note
(
yyvsp
[
-
4
].
filename
,
yyvsp
[
-
3
].
lineno
);
emit_line_note
(
yyvsp
[
-
4
].
filename
,
yyvsp
[
-
3
].
lineno
);
c_expand_return
(
yyvsp
[
-
1
].
ttype
);
;
c_expand_return
(
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
368
:
case
368
:
#line 195
2
"objc-parse.y"
#line 195
3
"objc-parse.y"
{
stmt_count
++
;
{
stmt_count
++
;
emit_line_note
(
yyvsp
[
-
7
].
filename
,
yyvsp
[
-
6
].
lineno
);
emit_line_note
(
yyvsp
[
-
7
].
filename
,
yyvsp
[
-
6
].
lineno
);
STRIP_NOPS
(
yyvsp
[
-
2
].
ttype
);
STRIP_NOPS
(
yyvsp
[
-
2
].
ttype
);
...
@@ -4057,7 +4057,7 @@ case 368:
...
@@ -4057,7 +4057,7 @@ case 368:
error
(
"argument of `asm' is not a constant string"
);
;
error
(
"argument of `asm' is not a constant string"
);
;
break
;}
break
;}
case
369
:
case
369
:
#line 196
3
"objc-parse.y"
#line 196
4
"objc-parse.y"
{
stmt_count
++
;
{
stmt_count
++
;
emit_line_note
(
yyvsp
[
-
9
].
filename
,
yyvsp
[
-
8
].
lineno
);
emit_line_note
(
yyvsp
[
-
9
].
filename
,
yyvsp
[
-
8
].
lineno
);
c_expand_asm_operands
(
yyvsp
[
-
4
].
ttype
,
yyvsp
[
-
2
].
ttype
,
NULL_TREE
,
NULL_TREE
,
c_expand_asm_operands
(
yyvsp
[
-
4
].
ttype
,
yyvsp
[
-
2
].
ttype
,
NULL_TREE
,
NULL_TREE
,
...
@@ -4065,7 +4065,7 @@ case 369:
...
@@ -4065,7 +4065,7 @@ case 369:
input_filename
,
lineno
);
;
input_filename
,
lineno
);
;
break
;}
break
;}
case
370
:
case
370
:
#line 197
0
"objc-parse.y"
#line 197
1
"objc-parse.y"
{
stmt_count
++
;
{
stmt_count
++
;
emit_line_note
(
yyvsp
[
-
11
].
filename
,
yyvsp
[
-
10
].
lineno
);
emit_line_note
(
yyvsp
[
-
11
].
filename
,
yyvsp
[
-
10
].
lineno
);
c_expand_asm_operands
(
yyvsp
[
-
6
].
ttype
,
yyvsp
[
-
4
].
ttype
,
yyvsp
[
-
2
].
ttype
,
NULL_TREE
,
c_expand_asm_operands
(
yyvsp
[
-
6
].
ttype
,
yyvsp
[
-
4
].
ttype
,
yyvsp
[
-
2
].
ttype
,
NULL_TREE
,
...
@@ -4073,7 +4073,7 @@ case 370:
...
@@ -4073,7 +4073,7 @@ case 370:
input_filename
,
lineno
);
;
input_filename
,
lineno
);
;
break
;}
break
;}
case
371
:
case
371
:
#line 197
8
"objc-parse.y"
#line 197
9
"objc-parse.y"
{
stmt_count
++
;
{
stmt_count
++
;
emit_line_note
(
yyvsp
[
-
13
].
filename
,
yyvsp
[
-
12
].
lineno
);
emit_line_note
(
yyvsp
[
-
13
].
filename
,
yyvsp
[
-
12
].
lineno
);
c_expand_asm_operands
(
yyvsp
[
-
8
].
ttype
,
yyvsp
[
-
6
].
ttype
,
yyvsp
[
-
4
].
ttype
,
yyvsp
[
-
2
].
ttype
,
c_expand_asm_operands
(
yyvsp
[
-
8
].
ttype
,
yyvsp
[
-
6
].
ttype
,
yyvsp
[
-
4
].
ttype
,
yyvsp
[
-
2
].
ttype
,
...
@@ -4081,7 +4081,7 @@ case 371:
...
@@ -4081,7 +4081,7 @@ case 371:
input_filename
,
lineno
);
;
input_filename
,
lineno
);
;
break
;}
break
;}
case
372
:
case
372
:
#line 198
4
"objc-parse.y"
#line 198
5
"objc-parse.y"
{
tree
decl
;
{
tree
decl
;
stmt_count
++
;
stmt_count
++
;
emit_line_note
(
yyvsp
[
-
4
].
filename
,
yyvsp
[
-
3
].
lineno
);
emit_line_note
(
yyvsp
[
-
4
].
filename
,
yyvsp
[
-
3
].
lineno
);
...
@@ -4094,7 +4094,7 @@ case 372:
...
@@ -4094,7 +4094,7 @@ case 372:
;
;
break
;}
break
;}
case
373
:
case
373
:
#line 199
5
"objc-parse.y"
#line 199
6
"objc-parse.y"
{
if
(
pedantic
)
{
if
(
pedantic
)
pedwarn
(
"ANSI C forbids `goto *expr;'"
);
pedwarn
(
"ANSI C forbids `goto *expr;'"
);
stmt_count
++
;
stmt_count
++
;
...
@@ -4102,7 +4102,7 @@ case 373:
...
@@ -4102,7 +4102,7 @@ case 373:
expand_computed_goto
(
convert
(
ptr_type_node
,
yyvsp
[
-
1
].
ttype
));
;
expand_computed_goto
(
convert
(
ptr_type_node
,
yyvsp
[
-
1
].
ttype
));
;
break
;}
break
;}
case
376
:
case
376
:
#line 201
0
"objc-parse.y"
#line 201
1
"objc-parse.y"
{
{
/* The value returned by this action is */
/* The value returned by this action is */
/* 1 if everything is OK */
/* 1 if everything is OK */
...
@@ -4125,14 +4125,14 @@ case 376:
...
@@ -4125,14 +4125,14 @@ case 376:
;
;
break
;}
break
;}
case
377
:
case
377
:
#line 203
1
"objc-parse.y"
#line 203
2
"objc-parse.y"
{
{
if
(
yyvsp
[
-
1
].
itype
)
if
(
yyvsp
[
-
1
].
itype
)
iterator_for_loop_end
(
yyvsp
[
-
3
].
ttype
);
iterator_for_loop_end
(
yyvsp
[
-
3
].
ttype
);
;
;
break
;}
break
;}
case
378
:
case
378
:
#line 206
2
"objc-parse.y"
#line 206
3
"objc-parse.y"
{
register
tree
value
=
check_case_value
(
yyvsp
[
-
1
].
ttype
);
{
register
tree
value
=
check_case_value
(
yyvsp
[
-
1
].
ttype
);
register
tree
label
register
tree
label
=
build_decl
(
LABEL_DECL
,
NULL_TREE
,
NULL_TREE
);
=
build_decl
(
LABEL_DECL
,
NULL_TREE
,
NULL_TREE
);
...
@@ -4165,7 +4165,7 @@ case 378:
...
@@ -4165,7 +4165,7 @@ case 378:
position_after_white_space
();
;
position_after_white_space
();
;
break
;}
break
;}
case
379
:
case
379
:
#line 209
3
"objc-parse.y"
#line 209
4
"objc-parse.y"
{
register
tree
value1
=
check_case_value
(
yyvsp
[
-
3
].
ttype
);
{
register
tree
value1
=
check_case_value
(
yyvsp
[
-
3
].
ttype
);
register
tree
value2
=
check_case_value
(
yyvsp
[
-
1
].
ttype
);
register
tree
value2
=
check_case_value
(
yyvsp
[
-
1
].
ttype
);
register
tree
label
register
tree
label
...
@@ -4198,7 +4198,7 @@ case 379:
...
@@ -4198,7 +4198,7 @@ case 379:
position_after_white_space
();
;
position_after_white_space
();
;
break
;}
break
;}
case
380
:
case
380
:
#line 212
4
"objc-parse.y"
#line 212
5
"objc-parse.y"
{
{
tree
duplicate
;
tree
duplicate
;
register
tree
label
register
tree
label
...
@@ -4215,7 +4215,7 @@ case 380:
...
@@ -4215,7 +4215,7 @@ case 380:
position_after_white_space
();
;
position_after_white_space
();
;
break
;}
break
;}
case
381
:
case
381
:
#line 21
39
"objc-parse.y"
#line 21
40
"objc-parse.y"
{
tree
label
=
define_label
(
input_filename
,
lineno
,
yyvsp
[
-
2
].
ttype
);
{
tree
label
=
define_label
(
input_filename
,
lineno
,
yyvsp
[
-
2
].
ttype
);
stmt_count
++
;
stmt_count
++
;
emit_nop
();
emit_nop
();
...
@@ -4227,52 +4227,52 @@ case 381:
...
@@ -4227,52 +4227,52 @@ case 381:
position_after_white_space
();
;
position_after_white_space
();
;
break
;}
break
;}
case
382
:
case
382
:
#line 215
4
"objc-parse.y"
#line 215
5
"objc-parse.y"
{
emit_line_note
(
input_filename
,
lineno
);
{
emit_line_note
(
input_filename
,
lineno
);
yyval
.
ttype
=
NULL_TREE
;
;
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
383
:
case
383
:
#line 215
7
"objc-parse.y"
#line 215
8
"objc-parse.y"
{
emit_line_note
(
input_filename
,
lineno
);
;
{
emit_line_note
(
input_filename
,
lineno
);
;
break
;}
break
;}
case
384
:
case
384
:
#line 216
2
"objc-parse.y"
#line 216
3
"objc-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
386
:
case
386
:
#line 21
69
"objc-parse.y"
#line 21
70
"objc-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
389
:
case
389
:
#line 217
6
"objc-parse.y"
#line 217
7
"objc-parse.y"
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
390
:
case
390
:
#line 218
1
"objc-parse.y"
#line 218
2
"objc-parse.y"
{
yyval
.
ttype
=
build_tree_list
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
build_tree_list
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
391
:
case
391
:
#line 218
6
"objc-parse.y"
#line 218
7
"objc-parse.y"
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
combine_strings
(
yyvsp
[
0
].
ttype
),
NULL_TREE
);
;
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
combine_strings
(
yyvsp
[
0
].
ttype
),
NULL_TREE
);
;
break
;}
break
;}
case
392
:
case
392
:
#line 218
8
"objc-parse.y"
#line 218
9
"objc-parse.y"
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
combine_strings
(
yyvsp
[
0
].
ttype
),
yyvsp
[
-
2
].
ttype
);
;
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
combine_strings
(
yyvsp
[
0
].
ttype
),
yyvsp
[
-
2
].
ttype
);
;
break
;}
break
;}
case
393
:
case
393
:
#line 219
4
"objc-parse.y"
#line 219
5
"objc-parse.y"
{
pushlevel
(
0
);
{
pushlevel
(
0
);
clear_parm_order
();
clear_parm_order
();
declare_parm_level
(
0
);
;
declare_parm_level
(
0
);
;
break
;}
break
;}
case
394
:
case
394
:
#line 219
8
"objc-parse.y"
#line 219
9
"objc-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
parmlist_tags_warning
();
parmlist_tags_warning
();
poplevel
(
0
,
0
,
0
);
;
poplevel
(
0
,
0
,
0
);
;
break
;}
break
;}
case
396
:
case
396
:
#line 220
6
"objc-parse.y"
#line 220
7
"objc-parse.y"
{
tree
parm
;
{
tree
parm
;
if
(
pedantic
)
if
(
pedantic
)
pedwarn
(
"ANSI C forbids forward parameter declarations"
);
pedwarn
(
"ANSI C forbids forward parameter declarations"
);
...
@@ -4282,19 +4282,19 @@ case 396:
...
@@ -4282,19 +4282,19 @@ case 396:
clear_parm_order
();
;
clear_parm_order
();
;
break
;}
break
;}
case
397
:
case
397
:
#line 221
4
"objc-parse.y"
#line 221
5
"objc-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
398
:
case
398
:
#line 221
6
"objc-parse.y"
#line 221
7
"objc-parse.y"
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
NULL_TREE
,
NULL_TREE
);
;
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
NULL_TREE
,
NULL_TREE
);
;
break
;}
break
;}
case
399
:
case
399
:
#line 222
2
"objc-parse.y"
#line 222
3
"objc-parse.y"
{
yyval
.
ttype
=
get_parm_info
(
0
);
;
{
yyval
.
ttype
=
get_parm_info
(
0
);
;
break
;}
break
;}
case
400
:
case
400
:
#line 222
4
"objc-parse.y"
#line 222
5
"objc-parse.y"
{
yyval
.
ttype
=
get_parm_info
(
0
);
{
yyval
.
ttype
=
get_parm_info
(
0
);
/* Gcc used to allow this as an extension. However, it does
/* Gcc used to allow this as an extension. However, it does
not work for all targets, and thus has been disabled.
not work for all targets, and thus has been disabled.
...
@@ -4306,23 +4306,23 @@ case 400:
...
@@ -4306,23 +4306,23 @@ case 400:
;
;
break
;}
break
;}
case
401
:
case
401
:
#line 223
4
"objc-parse.y"
#line 223
5
"objc-parse.y"
{
yyval
.
ttype
=
get_parm_info
(
1
);
;
{
yyval
.
ttype
=
get_parm_info
(
1
);
;
break
;}
break
;}
case
402
:
case
402
:
#line 223
6
"objc-parse.y"
#line 223
7
"objc-parse.y"
{
yyval
.
ttype
=
get_parm_info
(
0
);
;
{
yyval
.
ttype
=
get_parm_info
(
0
);
;
break
;}
break
;}
case
403
:
case
403
:
#line 224
1
"objc-parse.y"
#line 224
2
"objc-parse.y"
{
push_parm_decl
(
yyvsp
[
0
].
ttype
);
;
{
push_parm_decl
(
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
404
:
case
404
:
#line 224
3
"objc-parse.y"
#line 224
4
"objc-parse.y"
{
push_parm_decl
(
yyvsp
[
0
].
ttype
);
;
{
push_parm_decl
(
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
405
:
case
405
:
#line 225
0
"objc-parse.y"
#line 225
1
"objc-parse.y"
{
yyval
.
ttype
=
build_tree_list
(
build_tree_list
(
current_declspecs
,
{
yyval
.
ttype
=
build_tree_list
(
build_tree_list
(
current_declspecs
,
yyvsp
[
-
1
].
ttype
),
yyvsp
[
-
1
].
ttype
),
build_tree_list
(
prefix_attributes
,
build_tree_list
(
prefix_attributes
,
...
@@ -4332,7 +4332,7 @@ case 405:
...
@@ -4332,7 +4332,7 @@ case 405:
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
break
;}
break
;}
case
406
:
case
406
:
#line 225
8
"objc-parse.y"
#line 225
9
"objc-parse.y"
{
yyval
.
ttype
=
build_tree_list
(
build_tree_list
(
current_declspecs
,
{
yyval
.
ttype
=
build_tree_list
(
build_tree_list
(
current_declspecs
,
yyvsp
[
-
1
].
ttype
),
yyvsp
[
-
1
].
ttype
),
build_tree_list
(
prefix_attributes
,
build_tree_list
(
prefix_attributes
,
...
@@ -4342,7 +4342,7 @@ case 406:
...
@@ -4342,7 +4342,7 @@ case 406:
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
break
;}
break
;}
case
407
:
case
407
:
#line 226
6
"objc-parse.y"
#line 226
7
"objc-parse.y"
{
yyval
.
ttype
=
build_tree_list
(
build_tree_list
(
current_declspecs
,
{
yyval
.
ttype
=
build_tree_list
(
build_tree_list
(
current_declspecs
,
yyvsp
[
-
1
].
ttype
),
yyvsp
[
-
1
].
ttype
),
build_tree_list
(
prefix_attributes
,
build_tree_list
(
prefix_attributes
,
...
@@ -4352,7 +4352,7 @@ case 407:
...
@@ -4352,7 +4352,7 @@ case 407:
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
break
;}
break
;}
case
408
:
case
408
:
#line 227
4
"objc-parse.y"
#line 227
5
"objc-parse.y"
{
yyval
.
ttype
=
build_tree_list
(
build_tree_list
(
current_declspecs
,
{
yyval
.
ttype
=
build_tree_list
(
build_tree_list
(
current_declspecs
,
yyvsp
[
-
1
].
ttype
),
yyvsp
[
-
1
].
ttype
),
build_tree_list
(
prefix_attributes
,
build_tree_list
(
prefix_attributes
,
...
@@ -4362,7 +4362,7 @@ case 408:
...
@@ -4362,7 +4362,7 @@ case 408:
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
break
;}
break
;}
case
409
:
case
409
:
#line 228
3
"objc-parse.y"
#line 228
4
"objc-parse.y"
{
yyval
.
ttype
=
build_tree_list
(
build_tree_list
(
current_declspecs
,
{
yyval
.
ttype
=
build_tree_list
(
build_tree_list
(
current_declspecs
,
yyvsp
[
-
1
].
ttype
),
yyvsp
[
-
1
].
ttype
),
build_tree_list
(
prefix_attributes
,
build_tree_list
(
prefix_attributes
,
...
@@ -4372,19 +4372,19 @@ case 409:
...
@@ -4372,19 +4372,19 @@ case 409:
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
break
;}
break
;}
case
410
:
case
410
:
#line 229
6
"objc-parse.y"
#line 229
7
"objc-parse.y"
{
pushlevel
(
0
);
{
pushlevel
(
0
);
clear_parm_order
();
clear_parm_order
();
declare_parm_level
(
1
);
;
declare_parm_level
(
1
);
;
break
;}
break
;}
case
411
:
case
411
:
#line 230
0
"objc-parse.y"
#line 230
1
"objc-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
parmlist_tags_warning
();
parmlist_tags_warning
();
poplevel
(
0
,
0
,
0
);
;
poplevel
(
0
,
0
,
0
);
;
break
;}
break
;}
case
413
:
case
413
:
#line 230
8
"objc-parse.y"
#line 230
9
"objc-parse.y"
{
tree
t
;
{
tree
t
;
for
(
t
=
yyvsp
[
-
1
].
ttype
;
t
;
t
=
TREE_CHAIN
(
t
))
for
(
t
=
yyvsp
[
-
1
].
ttype
;
t
;
t
=
TREE_CHAIN
(
t
))
if
(
TREE_VALUE
(
t
)
==
NULL_TREE
)
if
(
TREE_VALUE
(
t
)
==
NULL_TREE
)
...
@@ -4392,29 +4392,29 @@ case 413:
...
@@ -4392,29 +4392,29 @@ case 413:
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
NULL_TREE
,
yyvsp
[
-
1
].
ttype
);
;
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
NULL_TREE
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
414
:
case
414
:
#line 231
8
"objc-parse.y"
#line 231
9
"objc-parse.y"
{
yyval
.
ttype
=
build_tree_list
(
NULL_TREE
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
build_tree_list
(
NULL_TREE
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
415
:
case
415
:
#line 232
0
"objc-parse.y"
#line 232
1
"objc-parse.y"
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
2
].
ttype
,
build_tree_list
(
NULL_TREE
,
yyvsp
[
0
].
ttype
));
;
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
2
].
ttype
,
build_tree_list
(
NULL_TREE
,
yyvsp
[
0
].
ttype
));
;
break
;}
break
;}
case
416
:
case
416
:
#line 232
6
"objc-parse.y"
#line 232
7
"objc-parse.y"
{
yyval
.
ttype
=
build_tree_list
(
NULL_TREE
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
build_tree_list
(
NULL_TREE
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
417
:
case
417
:
#line 232
8
"objc-parse.y"
#line 232
9
"objc-parse.y"
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
2
].
ttype
,
build_tree_list
(
NULL_TREE
,
yyvsp
[
0
].
ttype
));
;
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
2
].
ttype
,
build_tree_list
(
NULL_TREE
,
yyvsp
[
0
].
ttype
));
;
break
;}
break
;}
case
418
:
case
418
:
#line 233
3
"objc-parse.y"
#line 233
4
"objc-parse.y"
{
yyval
.
ttype
=
SAVE_WARN_FLAGS
();
{
yyval
.
ttype
=
SAVE_WARN_FLAGS
();
pedantic
=
0
;
pedantic
=
0
;
warn_pointer_arith
=
0
;
;
warn_pointer_arith
=
0
;
;
break
;}
break
;}
case
424
:
case
424
:
#line 234
7
"objc-parse.y"
#line 234
8
"objc-parse.y"
{
{
if
(
objc_implementation_context
)
if
(
objc_implementation_context
)
{
{
...
@@ -4427,27 +4427,27 @@ case 424:
...
@@ -4427,27 +4427,27 @@ case 424:
;
;
break
;}
break
;}
case
425
:
case
425
:
#line 236
2
"objc-parse.y"
#line 236
3
"objc-parse.y"
{
yyval
.
ttype
=
build_tree_list
(
NULL_TREE
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
build_tree_list
(
NULL_TREE
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
426
:
case
426
:
#line 236
4
"objc-parse.y"
#line 236
5
"objc-parse.y"
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
2
].
ttype
,
build_tree_list
(
NULL_TREE
,
yyvsp
[
0
].
ttype
));
;
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
2
].
ttype
,
build_tree_list
(
NULL_TREE
,
yyvsp
[
0
].
ttype
));
;
break
;}
break
;}
case
427
:
case
427
:
#line 23
69
"objc-parse.y"
#line 23
70
"objc-parse.y"
{
{
objc_declare_class
(
yyvsp
[
-
1
].
ttype
);
objc_declare_class
(
yyvsp
[
-
1
].
ttype
);
;
;
break
;}
break
;}
case
428
:
case
428
:
#line 237
5
"objc-parse.y"
#line 237
6
"objc-parse.y"
{
{
objc_declare_alias
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
-
1
].
ttype
);
objc_declare_alias
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
;
break
;}
break
;}
case
429
:
case
429
:
#line 238
1
"objc-parse.y"
#line 238
2
"objc-parse.y"
{
{
objc_interface_context
=
objc_ivar_context
objc_interface_context
=
objc_ivar_context
=
start_class
(
CLASS_INTERFACE_TYPE
,
yyvsp
[
-
2
].
ttype
,
NULL_TREE
,
yyvsp
[
-
1
].
ttype
);
=
start_class
(
CLASS_INTERFACE_TYPE
,
yyvsp
[
-
2
].
ttype
,
NULL_TREE
,
yyvsp
[
-
1
].
ttype
);
...
@@ -4455,20 +4455,20 @@ case 429:
...
@@ -4455,20 +4455,20 @@ case 429:
;
;
break
;}
break
;}
case
430
:
case
430
:
#line 238
7
"objc-parse.y"
#line 238
8
"objc-parse.y"
{
{
continue_class
(
objc_interface_context
);
continue_class
(
objc_interface_context
);
;
;
break
;}
break
;}
case
431
:
case
431
:
#line 239
2
"objc-parse.y"
#line 239
3
"objc-parse.y"
{
{
finish_class
(
objc_interface_context
);
finish_class
(
objc_interface_context
);
objc_interface_context
=
NULL_TREE
;
objc_interface_context
=
NULL_TREE
;
;
;
break
;}
break
;}
case
432
:
case
432
:
#line 239
8
"objc-parse.y"
#line 239
9
"objc-parse.y"
{
{
objc_interface_context
objc_interface_context
=
start_class
(
CLASS_INTERFACE_TYPE
,
yyvsp
[
-
1
].
ttype
,
NULL_TREE
,
yyvsp
[
0
].
ttype
);
=
start_class
(
CLASS_INTERFACE_TYPE
,
yyvsp
[
-
1
].
ttype
,
NULL_TREE
,
yyvsp
[
0
].
ttype
);
...
@@ -4476,14 +4476,14 @@ case 432:
...
@@ -4476,14 +4476,14 @@ case 432:
;
;
break
;}
break
;}
case
433
:
case
433
:
#line 240
5
"objc-parse.y"
#line 240
6
"objc-parse.y"
{
{
finish_class
(
objc_interface_context
);
finish_class
(
objc_interface_context
);
objc_interface_context
=
NULL_TREE
;
objc_interface_context
=
NULL_TREE
;
;
;
break
;}
break
;}
case
434
:
case
434
:
#line 241
1
"objc-parse.y"
#line 241
2
"objc-parse.y"
{
{
objc_interface_context
=
objc_ivar_context
objc_interface_context
=
objc_ivar_context
=
start_class
(
CLASS_INTERFACE_TYPE
,
yyvsp
[
-
4
].
ttype
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
-
1
].
ttype
);
=
start_class
(
CLASS_INTERFACE_TYPE
,
yyvsp
[
-
4
].
ttype
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
-
1
].
ttype
);
...
@@ -4491,20 +4491,20 @@ case 434:
...
@@ -4491,20 +4491,20 @@ case 434:
;
;
break
;}
break
;}
case
435
:
case
435
:
#line 241
7
"objc-parse.y"
#line 241
8
"objc-parse.y"
{
{
continue_class
(
objc_interface_context
);
continue_class
(
objc_interface_context
);
;
;
break
;}
break
;}
case
436
:
case
436
:
#line 242
2
"objc-parse.y"
#line 242
3
"objc-parse.y"
{
{
finish_class
(
objc_interface_context
);
finish_class
(
objc_interface_context
);
objc_interface_context
=
NULL_TREE
;
objc_interface_context
=
NULL_TREE
;
;
;
break
;}
break
;}
case
437
:
case
437
:
#line 242
8
"objc-parse.y"
#line 242
9
"objc-parse.y"
{
{
objc_interface_context
objc_interface_context
=
start_class
(
CLASS_INTERFACE_TYPE
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
=
start_class
(
CLASS_INTERFACE_TYPE
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
...
@@ -4512,14 +4512,14 @@ case 437:
...
@@ -4512,14 +4512,14 @@ case 437:
;
;
break
;}
break
;}
case
438
:
case
438
:
#line 243
5
"objc-parse.y"
#line 243
6
"objc-parse.y"
{
{
finish_class
(
objc_interface_context
);
finish_class
(
objc_interface_context
);
objc_interface_context
=
NULL_TREE
;
objc_interface_context
=
NULL_TREE
;
;
;
break
;}
break
;}
case
439
:
case
439
:
#line 244
1
"objc-parse.y"
#line 244
2
"objc-parse.y"
{
{
objc_implementation_context
=
objc_ivar_context
objc_implementation_context
=
objc_ivar_context
=
start_class
(
CLASS_IMPLEMENTATION_TYPE
,
yyvsp
[
-
1
].
ttype
,
NULL_TREE
,
NULL_TREE
);
=
start_class
(
CLASS_IMPLEMENTATION_TYPE
,
yyvsp
[
-
1
].
ttype
,
NULL_TREE
,
NULL_TREE
);
...
@@ -4527,14 +4527,14 @@ case 439:
...
@@ -4527,14 +4527,14 @@ case 439:
;
;
break
;}
break
;}
case
440
:
case
440
:
#line 244
7
"objc-parse.y"
#line 244
8
"objc-parse.y"
{
{
objc_ivar_chain
objc_ivar_chain
=
continue_class
(
objc_implementation_context
);
=
continue_class
(
objc_implementation_context
);
;
;
break
;}
break
;}
case
441
:
case
441
:
#line 245
3
"objc-parse.y"
#line 245
4
"objc-parse.y"
{
{
objc_implementation_context
objc_implementation_context
=
start_class
(
CLASS_IMPLEMENTATION_TYPE
,
yyvsp
[
0
].
ttype
,
NULL_TREE
,
NULL_TREE
);
=
start_class
(
CLASS_IMPLEMENTATION_TYPE
,
yyvsp
[
0
].
ttype
,
NULL_TREE
,
NULL_TREE
);
...
@@ -4543,7 +4543,7 @@ case 441:
...
@@ -4543,7 +4543,7 @@ case 441:
;
;
break
;}
break
;}
case
442
:
case
442
:
#line 246
1
"objc-parse.y"
#line 246
2
"objc-parse.y"
{
{
objc_implementation_context
=
objc_ivar_context
objc_implementation_context
=
objc_ivar_context
=
start_class
(
CLASS_IMPLEMENTATION_TYPE
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
,
NULL_TREE
);
=
start_class
(
CLASS_IMPLEMENTATION_TYPE
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
,
NULL_TREE
);
...
@@ -4551,14 +4551,14 @@ case 442:
...
@@ -4551,14 +4551,14 @@ case 442:
;
;
break
;}
break
;}
case
443
:
case
443
:
#line 246
7
"objc-parse.y"
#line 246
8
"objc-parse.y"
{
{
objc_ivar_chain
objc_ivar_chain
=
continue_class
(
objc_implementation_context
);
=
continue_class
(
objc_implementation_context
);
;
;
break
;}
break
;}
case
444
:
case
444
:
#line 247
3
"objc-parse.y"
#line 247
4
"objc-parse.y"
{
{
objc_implementation_context
objc_implementation_context
=
start_class
(
CLASS_IMPLEMENTATION_TYPE
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
,
NULL_TREE
);
=
start_class
(
CLASS_IMPLEMENTATION_TYPE
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
,
NULL_TREE
);
...
@@ -4567,7 +4567,7 @@ case 444:
...
@@ -4567,7 +4567,7 @@ case 444:
;
;
break
;}
break
;}
case
445
:
case
445
:
#line 248
1
"objc-parse.y"
#line 248
2
"objc-parse.y"
{
{
objc_interface_context
objc_interface_context
=
start_class
(
CATEGORY_INTERFACE_TYPE
,
yyvsp
[
-
4
].
ttype
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
=
start_class
(
CATEGORY_INTERFACE_TYPE
,
yyvsp
[
-
4
].
ttype
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
...
@@ -4575,14 +4575,14 @@ case 445:
...
@@ -4575,14 +4575,14 @@ case 445:
;
;
break
;}
break
;}
case
446
:
case
446
:
#line 248
8
"objc-parse.y"
#line 248
9
"objc-parse.y"
{
{
finish_class
(
objc_interface_context
);
finish_class
(
objc_interface_context
);
objc_interface_context
=
NULL_TREE
;
objc_interface_context
=
NULL_TREE
;
;
;
break
;}
break
;}
case
447
:
case
447
:
#line 249
4
"objc-parse.y"
#line 249
5
"objc-parse.y"
{
{
objc_implementation_context
objc_implementation_context
=
start_class
(
CATEGORY_IMPLEMENTATION_TYPE
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
,
NULL_TREE
);
=
start_class
(
CATEGORY_IMPLEMENTATION_TYPE
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
,
NULL_TREE
);
...
@@ -4591,7 +4591,7 @@ case 447:
...
@@ -4591,7 +4591,7 @@ case 447:
;
;
break
;}
break
;}
case
448
:
case
448
:
#line 250
4
"objc-parse.y"
#line 250
5
"objc-parse.y"
{
{
remember_protocol_qualifiers
();
remember_protocol_qualifiers
();
objc_interface_context
objc_interface_context
...
@@ -4599,7 +4599,7 @@ case 448:
...
@@ -4599,7 +4599,7 @@ case 448:
;
;
break
;}
break
;}
case
449
:
case
449
:
#line 251
0
"objc-parse.y"
#line 251
1
"objc-parse.y"
{
{
forget_protocol_qualifiers
();
forget_protocol_qualifiers
();
finish_protocol
(
objc_interface_context
);
finish_protocol
(
objc_interface_context
);
...
@@ -4607,13 +4607,13 @@ case 449:
...
@@ -4607,13 +4607,13 @@ case 449:
;
;
break
;}
break
;}
case
450
:
case
450
:
#line 25
19
"objc-parse.y"
#line 25
20
"objc-parse.y"
{
{
yyval
.
ttype
=
NULL_TREE
;
yyval
.
ttype
=
NULL_TREE
;
;
;
break
;}
break
;}
case
452
:
case
452
:
#line 252
7
"objc-parse.y"
#line 252
8
"objc-parse.y"
{
{
if
(
yyvsp
[
-
2
].
code
==
LT_EXPR
&&
yyvsp
[
0
].
code
==
GT_EXPR
)
if
(
yyvsp
[
-
2
].
code
==
LT_EXPR
&&
yyvsp
[
0
].
code
==
GT_EXPR
)
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
...
@@ -4622,54 +4622,54 @@ case 452:
...
@@ -4622,54 +4622,54 @@ case 452:
;
;
break
;}
break
;}
case
455
:
case
455
:
#line 254
1
"objc-parse.y"
#line 254
2
"objc-parse.y"
{
objc_public_flag
=
2
;
;
{
objc_public_flag
=
2
;
;
break
;}
break
;}
case
456
:
case
456
:
#line 254
2
"objc-parse.y"
#line 254
3
"objc-parse.y"
{
objc_public_flag
=
0
;
;
{
objc_public_flag
=
0
;
;
break
;}
break
;}
case
457
:
case
457
:
#line 254
3
"objc-parse.y"
#line 254
4
"objc-parse.y"
{
objc_public_flag
=
1
;
;
{
objc_public_flag
=
1
;
;
break
;}
break
;}
case
458
:
case
458
:
#line 254
8
"objc-parse.y"
#line 254
9
"objc-parse.y"
{
{
yyval
.
ttype
=
NULL_TREE
;
yyval
.
ttype
=
NULL_TREE
;
;
;
break
;}
break
;}
case
460
:
case
460
:
#line 255
3
"objc-parse.y"
#line 255
4
"objc-parse.y"
{
{
if
(
pedantic
)
if
(
pedantic
)
pedwarn
(
"extra semicolon in struct or union specified"
);
pedwarn
(
"extra semicolon in struct or union specified"
);
;
;
break
;}
break
;}
case
461
:
case
461
:
#line 257
1
"objc-parse.y"
#line 257
2
"objc-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
break
;}
break
;}
case
462
:
case
462
:
#line 257
6
"objc-parse.y"
#line 257
7
"objc-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
break
;}
break
;}
case
463
:
case
463
:
#line 258
1
"objc-parse.y"
#line 258
2
"objc-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
464
:
case
464
:
#line 258
6
"objc-parse.y"
#line 258
7
"objc-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
467
:
case
467
:
#line 259
3
"objc-parse.y"
#line 259
4
"objc-parse.y"
{
{
yyval
.
ttype
=
add_instance_variable
(
objc_ivar_context
,
yyval
.
ttype
=
add_instance_variable
(
objc_ivar_context
,
objc_public_flag
,
objc_public_flag
,
...
@@ -4678,7 +4678,7 @@ case 467:
...
@@ -4678,7 +4678,7 @@ case 467:
;
;
break
;}
break
;}
case
468
:
case
468
:
#line 260
0
"objc-parse.y"
#line 260
1
"objc-parse.y"
{
{
yyval
.
ttype
=
add_instance_variable
(
objc_ivar_context
,
yyval
.
ttype
=
add_instance_variable
(
objc_ivar_context
,
objc_public_flag
,
objc_public_flag
,
...
@@ -4686,7 +4686,7 @@ case 468:
...
@@ -4686,7 +4686,7 @@ case 468:
;
;
break
;}
break
;}
case
469
:
case
469
:
#line 260
6
"objc-parse.y"
#line 260
7
"objc-parse.y"
{
{
yyval
.
ttype
=
add_instance_variable
(
objc_ivar_context
,
yyval
.
ttype
=
add_instance_variable
(
objc_ivar_context
,
objc_public_flag
,
objc_public_flag
,
...
@@ -4695,7 +4695,7 @@ case 469:
...
@@ -4695,7 +4695,7 @@ case 469:
;
;
break
;}
break
;}
case
470
:
case
470
:
#line 261
6
"objc-parse.y"
#line 261
7
"objc-parse.y"
{
{
remember_protocol_qualifiers
();
remember_protocol_qualifiers
();
if
(
objc_implementation_context
)
if
(
objc_implementation_context
)
...
@@ -4705,7 +4705,7 @@ case 470:
...
@@ -4705,7 +4705,7 @@ case 470:
;
;
break
;}
break
;}
case
471
:
case
471
:
#line 262
4
"objc-parse.y"
#line 262
5
"objc-parse.y"
{
{
forget_protocol_qualifiers
();
forget_protocol_qualifiers
();
add_class_method
(
objc_implementation_context
,
yyvsp
[
0
].
ttype
);
add_class_method
(
objc_implementation_context
,
yyvsp
[
0
].
ttype
);
...
@@ -4714,20 +4714,20 @@ case 471:
...
@@ -4714,20 +4714,20 @@ case 471:
;
;
break
;}
break
;}
case
472
:
case
472
:
#line 263
1
"objc-parse.y"
#line 263
2
"objc-parse.y"
{
{
continue_method_def
();
continue_method_def
();
;
;
break
;}
break
;}
case
473
:
case
473
:
#line 263
5
"objc-parse.y"
#line 263
6
"objc-parse.y"
{
{
finish_method_def
();
finish_method_def
();
objc_method_context
=
NULL_TREE
;
objc_method_context
=
NULL_TREE
;
;
;
break
;}
break
;}
case
474
:
case
474
:
#line 264
1
"objc-parse.y"
#line 264
2
"objc-parse.y"
{
{
remember_protocol_qualifiers
();
remember_protocol_qualifiers
();
if
(
objc_implementation_context
)
if
(
objc_implementation_context
)
...
@@ -4737,7 +4737,7 @@ case 474:
...
@@ -4737,7 +4737,7 @@ case 474:
;
;
break
;}
break
;}
case
475
:
case
475
:
#line 26
49
"objc-parse.y"
#line 26
50
"objc-parse.y"
{
{
forget_protocol_qualifiers
();
forget_protocol_qualifiers
();
add_instance_method
(
objc_implementation_context
,
yyvsp
[
0
].
ttype
);
add_instance_method
(
objc_implementation_context
,
yyvsp
[
0
].
ttype
);
...
@@ -4746,28 +4746,28 @@ case 475:
...
@@ -4746,28 +4746,28 @@ case 475:
;
;
break
;}
break
;}
case
476
:
case
476
:
#line 265
6
"objc-parse.y"
#line 265
7
"objc-parse.y"
{
{
continue_method_def
();
continue_method_def
();
;
;
break
;}
break
;}
case
477
:
case
477
:
#line 266
0
"objc-parse.y"
#line 266
1
"objc-parse.y"
{
{
finish_method_def
();
finish_method_def
();
objc_method_context
=
NULL_TREE
;
objc_method_context
=
NULL_TREE
;
;
;
break
;}
break
;}
case
479
:
case
479
:
#line 267
2
"objc-parse.y"
#line 267
3
"objc-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
484
:
case
484
:
#line 26
79
"objc-parse.y"
#line 26
80
"objc-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
488
:
case
488
:
#line 26
89
"objc-parse.y"
#line 26
90
"objc-parse.y"
{
{
/* Remember protocol qualifiers in prototypes. */
/* Remember protocol qualifiers in prototypes. */
remember_protocol_qualifiers
();
remember_protocol_qualifiers
();
...
@@ -4775,7 +4775,7 @@ case 488:
...
@@ -4775,7 +4775,7 @@ case 488:
;
;
break
;}
break
;}
case
489
:
case
489
:
#line 269
5
"objc-parse.y"
#line 269
6
"objc-parse.y"
{
{
/* Forget protocol qualifiers here. */
/* Forget protocol qualifiers here. */
forget_protocol_qualifiers
();
forget_protocol_qualifiers
();
...
@@ -4783,7 +4783,7 @@ case 489:
...
@@ -4783,7 +4783,7 @@ case 489:
;
;
break
;}
break
;}
case
491
:
case
491
:
#line 270
3
"objc-parse.y"
#line 270
4
"objc-parse.y"
{
{
/* Remember protocol qualifiers in prototypes. */
/* Remember protocol qualifiers in prototypes. */
remember_protocol_qualifiers
();
remember_protocol_qualifiers
();
...
@@ -4791,7 +4791,7 @@ case 491:
...
@@ -4791,7 +4791,7 @@ case 491:
;
;
break
;}
break
;}
case
492
:
case
492
:
#line 27
09
"objc-parse.y"
#line 27
10
"objc-parse.y"
{
{
/* Forget protocol qualifiers here. */
/* Forget protocol qualifiers here. */
forget_protocol_qualifiers
();
forget_protocol_qualifiers
();
...
@@ -4799,93 +4799,93 @@ case 492:
...
@@ -4799,93 +4799,93 @@ case 492:
;
;
break
;}
break
;}
case
494
:
case
494
:
#line 27
19
"objc-parse.y"
#line 27
20
"objc-parse.y"
{
{
yyval
.
ttype
=
build_method_decl
(
objc_inherit_code
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
,
NULL_TREE
);
yyval
.
ttype
=
build_method_decl
(
objc_inherit_code
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
;
break
;}
break
;}
case
495
:
case
495
:
#line 272
4
"objc-parse.y"
#line 272
5
"objc-parse.y"
{
{
yyval
.
ttype
=
build_method_decl
(
objc_inherit_code
,
NULL_TREE
,
yyvsp
[
0
].
ttype
,
NULL_TREE
);
yyval
.
ttype
=
build_method_decl
(
objc_inherit_code
,
NULL_TREE
,
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
;
break
;}
break
;}
case
496
:
case
496
:
#line 27
29
"objc-parse.y"
#line 27
30
"objc-parse.y"
{
{
yyval
.
ttype
=
build_method_decl
(
objc_inherit_code
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
yyval
.
ttype
=
build_method_decl
(
objc_inherit_code
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
;
break
;}
break
;}
case
497
:
case
497
:
#line 273
4
"objc-parse.y"
#line 273
5
"objc-parse.y"
{
{
yyval
.
ttype
=
build_method_decl
(
objc_inherit_code
,
NULL_TREE
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
yyval
.
ttype
=
build_method_decl
(
objc_inherit_code
,
NULL_TREE
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
;
break
;}
break
;}
case
506
:
case
506
:
#line 276
4
"objc-parse.y"
#line 276
5
"objc-parse.y"
{
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
{
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
;
break
;}
break
;}
case
507
:
case
507
:
#line 276
8
"objc-parse.y"
#line 276
9
"objc-parse.y"
{
shadow_tag
(
yyvsp
[
-
1
].
ttype
);
;
{
shadow_tag
(
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
508
:
case
508
:
#line 277
0
"objc-parse.y"
#line 277
1
"objc-parse.y"
{
pedwarn
(
"empty declaration"
);
;
{
pedwarn
(
"empty declaration"
);
;
break
;}
break
;}
case
509
:
case
509
:
#line 277
5
"objc-parse.y"
#line 277
6
"objc-parse.y"
{
push_parm_decl
(
yyvsp
[
0
].
ttype
);
;
{
push_parm_decl
(
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
510
:
case
510
:
#line 277
7
"objc-parse.y"
#line 277
8
"objc-parse.y"
{
push_parm_decl
(
yyvsp
[
0
].
ttype
);
;
{
push_parm_decl
(
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
511
:
case
511
:
#line 278
5
"objc-parse.y"
#line 278
6
"objc-parse.y"
{
yyval
.
ttype
=
build_tree_list
(
build_tree_list
(
current_declspecs
,
{
yyval
.
ttype
=
build_tree_list
(
build_tree_list
(
current_declspecs
,
yyvsp
[
-
1
].
ttype
),
yyvsp
[
-
1
].
ttype
),
build_tree_list
(
prefix_attributes
,
build_tree_list
(
prefix_attributes
,
yyvsp
[
0
].
ttype
));
;
yyvsp
[
0
].
ttype
));
;
break
;}
break
;}
case
512
:
case
512
:
#line 279
0
"objc-parse.y"
#line 279
1
"objc-parse.y"
{
yyval
.
ttype
=
build_tree_list
(
build_tree_list
(
current_declspecs
,
{
yyval
.
ttype
=
build_tree_list
(
build_tree_list
(
current_declspecs
,
yyvsp
[
-
1
].
ttype
),
yyvsp
[
-
1
].
ttype
),
build_tree_list
(
prefix_attributes
,
build_tree_list
(
prefix_attributes
,
yyvsp
[
0
].
ttype
));
;
yyvsp
[
0
].
ttype
));
;
break
;}
break
;}
case
513
:
case
513
:
#line 279
5
"objc-parse.y"
#line 279
6
"objc-parse.y"
{
yyval
.
ttype
=
build_tree_list
(
build_tree_list
(
current_declspecs
,
{
yyval
.
ttype
=
build_tree_list
(
build_tree_list
(
current_declspecs
,
yyvsp
[
-
1
].
ttype
),
yyvsp
[
-
1
].
ttype
),
build_tree_list
(
prefix_attributes
,
build_tree_list
(
prefix_attributes
,
yyvsp
[
0
].
ttype
));
;
yyvsp
[
0
].
ttype
));
;
break
;}
break
;}
case
514
:
case
514
:
#line 280
3
"objc-parse.y"
#line 280
4
"objc-parse.y"
{
{
yyval
.
ttype
=
NULL_TREE
;
yyval
.
ttype
=
NULL_TREE
;
;
;
break
;}
break
;}
case
515
:
case
515
:
#line 280
7
"objc-parse.y"
#line 280
8
"objc-parse.y"
{
{
/* oh what a kludge! */
/* oh what a kludge! */
yyval
.
ttype
=
(
tree
)
1
;
yyval
.
ttype
=
(
tree
)
1
;
;
;
break
;}
break
;}
case
516
:
case
516
:
#line 281
2
"objc-parse.y"
#line 281
3
"objc-parse.y"
{
{
pushlevel
(
0
);
pushlevel
(
0
);
;
;
break
;}
break
;}
case
517
:
case
517
:
#line 281
6
"objc-parse.y"
#line 281
7
"objc-parse.y"
{
{
/* returns a tree list node generated by get_parm_info */
/* returns a tree list node generated by get_parm_info */
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
...
@@ -4893,119 +4893,119 @@ case 517:
...
@@ -4893,119 +4893,119 @@ case 517:
;
;
break
;}
break
;}
case
520
:
case
520
:
#line 283
1
"objc-parse.y"
#line 283
2
"objc-parse.y"
{
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
yyval
.
ttype
=
chainon
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
;
break
;}
break
;}
case
525
:
case
525
:
#line 284
4
"objc-parse.y"
#line 284
5
"objc-parse.y"
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
break
;}
break
;}
case
526
:
case
526
:
#line 284
5
"objc-parse.y"
#line 284
6
"objc-parse.y"
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
break
;}
break
;}
case
527
:
case
527
:
#line 284
6
"objc-parse.y"
#line 284
7
"objc-parse.y"
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
break
;}
break
;}
case
528
:
case
528
:
#line 284
7
"objc-parse.y"
#line 284
8
"objc-parse.y"
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
break
;}
break
;}
case
529
:
case
529
:
#line 284
8
"objc-parse.y"
#line 284
9
"objc-parse.y"
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
break
;}
break
;}
case
530
:
case
530
:
#line 28
49
"objc-parse.y"
#line 28
50
"objc-parse.y"
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
break
;}
break
;}
case
531
:
case
531
:
#line 285
0
"objc-parse.y"
#line 285
1
"objc-parse.y"
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
break
;}
break
;}
case
532
:
case
532
:
#line 285
1
"objc-parse.y"
#line 285
2
"objc-parse.y"
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
break
;}
break
;}
case
533
:
case
533
:
#line 285
2
"objc-parse.y"
#line 285
3
"objc-parse.y"
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
break
;}
break
;}
case
534
:
case
534
:
#line 285
3
"objc-parse.y"
#line 285
4
"objc-parse.y"
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
break
;}
break
;}
case
535
:
case
535
:
#line 285
4
"objc-parse.y"
#line 285
5
"objc-parse.y"
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
break
;}
break
;}
case
536
:
case
536
:
#line 285
5
"objc-parse.y"
#line 285
6
"objc-parse.y"
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
break
;}
break
;}
case
537
:
case
537
:
#line 285
6
"objc-parse.y"
#line 285
7
"objc-parse.y"
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
break
;}
break
;}
case
538
:
case
538
:
#line 285
7
"objc-parse.y"
#line 285
8
"objc-parse.y"
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
break
;}
break
;}
case
539
:
case
539
:
#line 285
8
"objc-parse.y"
#line 285
9
"objc-parse.y"
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
break
;}
break
;}
case
540
:
case
540
:
#line 28
59
"objc-parse.y"
#line 28
60
"objc-parse.y"
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
break
;}
break
;}
case
541
:
case
541
:
#line 286
0
"objc-parse.y"
#line 286
1
"objc-parse.y"
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
break
;}
break
;}
case
542
:
case
542
:
#line 286
1
"objc-parse.y"
#line 286
2
"objc-parse.y"
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
break
;}
break
;}
case
543
:
case
543
:
#line 286
2
"objc-parse.y"
#line 286
3
"objc-parse.y"
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
break
;}
break
;}
case
546
:
case
546
:
#line 286
8
"objc-parse.y"
#line 286
9
"objc-parse.y"
{
{
yyval
.
ttype
=
build_keyword_decl
(
yyvsp
[
-
5
].
ttype
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
yyval
.
ttype
=
build_keyword_decl
(
yyvsp
[
-
5
].
ttype
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
;
break
;}
break
;}
case
547
:
case
547
:
#line 287
3
"objc-parse.y"
#line 287
4
"objc-parse.y"
{
{
yyval
.
ttype
=
build_keyword_decl
(
yyvsp
[
-
2
].
ttype
,
NULL_TREE
,
yyvsp
[
0
].
ttype
);
yyval
.
ttype
=
build_keyword_decl
(
yyvsp
[
-
2
].
ttype
,
NULL_TREE
,
yyvsp
[
0
].
ttype
);
;
;
break
;}
break
;}
case
548
:
case
548
:
#line 287
8
"objc-parse.y"
#line 287
9
"objc-parse.y"
{
{
yyval
.
ttype
=
build_keyword_decl
(
NULL_TREE
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
yyval
.
ttype
=
build_keyword_decl
(
NULL_TREE
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
;
break
;}
break
;}
case
549
:
case
549
:
#line 288
3
"objc-parse.y"
#line 288
4
"objc-parse.y"
{
{
yyval
.
ttype
=
build_keyword_decl
(
NULL_TREE
,
NULL_TREE
,
yyvsp
[
0
].
ttype
);
yyval
.
ttype
=
build_keyword_decl
(
NULL_TREE
,
NULL_TREE
,
yyvsp
[
0
].
ttype
);
;
;
break
;}
break
;}
case
553
:
case
553
:
#line 289
6
"objc-parse.y"
#line 289
7
"objc-parse.y"
{
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
yyval
.
ttype
=
chainon
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
;
break
;}
break
;}
case
554
:
case
554
:
#line 290
4
"objc-parse.y"
#line 290
5
"objc-parse.y"
{
{
if
(
TREE_CHAIN
(
yyvsp
[
0
].
ttype
)
==
NULL_TREE
)
if
(
TREE_CHAIN
(
yyvsp
[
0
].
ttype
)
==
NULL_TREE
)
/* just return the expr., remove a level of indirection */
/* just return the expr., remove a level of indirection */
...
@@ -5016,76 +5016,76 @@ case 554:
...
@@ -5016,76 +5016,76 @@ case 554:
;
;
break
;}
break
;}
case
555
:
case
555
:
#line 291
6
"objc-parse.y"
#line 291
7
"objc-parse.y"
{
{
yyval
.
ttype
=
build_tree_list
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
yyval
.
ttype
=
build_tree_list
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
;
break
;}
break
;}
case
556
:
case
556
:
#line 292
0
"objc-parse.y"
#line 292
1
"objc-parse.y"
{
{
yyval
.
ttype
=
build_tree_list
(
NULL_TREE
,
yyvsp
[
0
].
ttype
);
yyval
.
ttype
=
build_tree_list
(
NULL_TREE
,
yyvsp
[
0
].
ttype
);
;
;
break
;}
break
;}
case
558
:
case
558
:
#line 292
8
"objc-parse.y"
#line 292
9
"objc-parse.y"
{
{
yyval
.
ttype
=
get_class_reference
(
yyvsp
[
0
].
ttype
);
yyval
.
ttype
=
get_class_reference
(
yyvsp
[
0
].
ttype
);
;
;
break
;}
break
;}
case
559
:
case
559
:
#line 293
5
"objc-parse.y"
#line 293
6
"objc-parse.y"
{
objc_receiver_context
=
1
;
;
{
objc_receiver_context
=
1
;
;
break
;}
break
;}
case
560
:
case
560
:
#line 293
7
"objc-parse.y"
#line 293
8
"objc-parse.y"
{
objc_receiver_context
=
0
;
;
{
objc_receiver_context
=
0
;
;
break
;}
break
;}
case
561
:
case
561
:
#line 29
39
"objc-parse.y"
#line 29
40
"objc-parse.y"
{
{
yyval
.
ttype
=
build_tree_list
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
yyval
.
ttype
=
build_tree_list
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
;
break
;}
break
;}
case
565
:
case
565
:
#line 295
2
"objc-parse.y"
#line 295
3
"objc-parse.y"
{
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
yyval
.
ttype
=
chainon
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
;
break
;}
break
;}
case
566
:
case
566
:
#line 29
59
"objc-parse.y"
#line 29
60
"objc-parse.y"
{
{
yyval
.
ttype
=
build_tree_list
(
yyvsp
[
-
1
].
ttype
,
NULL_TREE
);
yyval
.
ttype
=
build_tree_list
(
yyvsp
[
-
1
].
ttype
,
NULL_TREE
);
;
;
break
;}
break
;}
case
567
:
case
567
:
#line 296
3
"objc-parse.y"
#line 296
4
"objc-parse.y"
{
{
yyval
.
ttype
=
build_tree_list
(
NULL_TREE
,
NULL_TREE
);
yyval
.
ttype
=
build_tree_list
(
NULL_TREE
,
NULL_TREE
);
;
;
break
;}
break
;}
case
568
:
case
568
:
#line 297
0
"objc-parse.y"
#line 297
1
"objc-parse.y"
{
{
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
;
;
break
;}
break
;}
case
569
:
case
569
:
#line 297
7
"objc-parse.y"
#line 297
8
"objc-parse.y"
{
{
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
;
;
break
;}
break
;}
case
570
:
case
570
:
#line 298
6
"objc-parse.y"
#line 298
7
"objc-parse.y"
{
{
yyval
.
ttype
=
groktypename
(
yyvsp
[
-
1
].
ttype
);
yyval
.
ttype
=
groktypename
(
yyvsp
[
-
1
].
ttype
);
;
;
break
;}
break
;}
}
}
/* the action file gets copied in in place of this dollarsign */
/* the action file gets copied in in place of this dollarsign */
#line 543 "/usr/
share/misc
/bison.simple"
#line 543 "/usr/
lib
/bison.simple"
yyvsp
-=
yylen
;
yyvsp
-=
yylen
;
yyssp
-=
yylen
;
yyssp
-=
yylen
;
...
@@ -5305,5 +5305,5 @@ yyerrhandle:
...
@@ -5305,5 +5305,5 @@ yyerrhandle:
}
}
return
1
;
return
1
;
}
}
#line 299
1
"objc-parse.y"
#line 299
2
"objc-parse.y"
gcc/objc/objc-parse.y
View file @
b6a6823e
/*WARNING: This file is automatically generated!*/
/*WARNING: This file is automatically generated!*/
/* YACC parser for C syntax and for Objective C. -*-c-*-
/* YACC parser for C syntax and for Objective C. -*-c-*-
Copyright (C) 1987, 1988, 1989, 1992, 1993, 1994, 1995, 1996,
1997, 1998,
Copyright (C) 1987, 1988, 1989, 1992, 1993, 1994, 1995, 1996,
1999, 2000 Free Software Foundation, Inc.
199
7, 1998, 199
9, 2000 Free Software Foundation, Inc.
This file is part of GNU CC.
This file is part of GNU CC.
...
...
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