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
458f4b6b
Commit
458f4b6b
authored
May 07, 1998
by
Jim Wilson
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
More toplev.h cleanup, regnerate c-parse.c.
From-SVN: r19614
parent
2d7cec0d
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
363 additions
and
362 deletions
+363
-362
gcc/c-parse.c
+363
-362
No files found.
gcc/c-parse.c
View file @
458f4b6b
...
@@ -77,6 +77,7 @@
...
@@ -77,6 +77,7 @@
#include "c-tree.h"
#include "c-tree.h"
#include "flags.h"
#include "flags.h"
#include "output.h"
#include "output.h"
#include "toplev.h"
#ifdef MULTIBYTE_CHARS
#ifdef MULTIBYTE_CHARS
#include <locale.h>
#include <locale.h>
...
@@ -93,10 +94,10 @@ char *language_string = "GNU C";
...
@@ -93,10 +94,10 @@ char *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 8
6
"c-parse.y"
#line 8
7
"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 20
2
"c-parse.y"
#line 20
3
"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. */
...
@@ -352,46 +353,46 @@ static const short yyrhs[] = { -1,
...
@@ -352,46 +353,46 @@ static const short yyrhs[] = { -1,
#if YYDEBUG != 0
#if YYDEBUG != 0
static
const
short
yyrline
[]
=
{
0
,
static
const
short
yyrline
[]
=
{
0
,
23
1
,
236
,
250
,
252
,
252
,
253
,
255
,
257
,
258
,
266
,
23
2
,
237
,
251
,
253
,
253
,
254
,
256
,
258
,
259
,
267
,
27
0
,
281
,
286
,
291
,
293
,
295
,
296
,
297
,
302
,
309
,
27
1
,
282
,
287
,
292
,
294
,
296
,
297
,
298
,
303
,
310
,
31
1
,
316
,
321
,
327
,
329
,
334
,
339
,
345
,
347
,
352
,
31
2
,
317
,
322
,
328
,
330
,
335
,
340
,
346
,
348
,
353
,
3
59
,
361
,
364
,
366
,
368
,
370
,
372
,
374
,
376
,
380
,
3
60
,
362
,
365
,
367
,
369
,
371
,
373
,
375
,
377
,
381
,
38
4
,
387
,
390
,
393
,
397
,
399
,
402
,
405
,
409
,
437
,
38
5
,
388
,
391
,
394
,
398
,
400
,
403
,
406
,
410
,
438
,
44
3
,
446
,
449
,
452
,
454
,
458
,
462
,
466
,
468
,
471
,
44
4
,
447
,
450
,
453
,
455
,
459
,
463
,
467
,
469
,
472
,
47
5
,
502
,
504
,
506
,
508
,
510
,
512
,
514
,
516
,
518
,
47
6
,
503
,
505
,
507
,
509
,
511
,
513
,
515
,
517
,
519
,
52
0
,
522
,
524
,
526
,
528
,
532
,
534
,
538
,
540
,
543
,
52
1
,
523
,
525
,
527
,
529
,
533
,
535
,
539
,
541
,
544
,
54
7
,
549
,
556
,
559
,
562
,
568
,
667
,
668
,
670
,
676
,
54
8
,
550
,
557
,
560
,
563
,
569
,
668
,
669
,
671
,
677
,
67
8
,
692
,
715
,
717
,
719
,
723
,
729
,
731
,
736
,
738
,
67
9
,
693
,
716
,
718
,
720
,
724
,
730
,
732
,
737
,
739
,
74
3
,
745
,
746
,
756
,
761
,
763
,
764
,
765
,
772
,
778
,
74
4
,
746
,
747
,
757
,
762
,
764
,
765
,
766
,
773
,
779
,
78
3
,
786
,
794
,
799
,
801
,
802
,
803
,
810
,
821
,
825
,
78
4
,
787
,
795
,
800
,
802
,
803
,
804
,
811
,
822
,
826
,
83
1
,
836
,
841
,
846
,
848
,
850
,
859
,
862
,
866
,
868
,
83
2
,
837
,
842
,
847
,
849
,
851
,
860
,
863
,
867
,
869
,
87
0
,
875
,
879
,
882
,
886
,
889
,
891
,
903
,
906
,
908
,
87
1
,
876
,
880
,
883
,
887
,
890
,
892
,
904
,
907
,
909
,
91
0
,
914
,
918
,
920
,
923
,
936
,
939
,
943
,
945
,
953
,
91
1
,
915
,
919
,
921
,
924
,
937
,
940
,
944
,
946
,
954
,
95
4
,
955
,
959
,
961
,
967
,
968
,
969
,
972
,
974
,
977
,
95
5
,
956
,
960
,
962
,
968
,
969
,
970
,
973
,
975
,
978
,
9
79
,
982
,
985
,
991
,
998
,
1000
,
1007
,
1014
,
1017
,
1024
,
9
80
,
983
,
986
,
992
,
999
,
1001
,
1008
,
1015
,
1018
,
1025
,
102
7
,
1031
,
1034
,
1038
,
1043
,
1046
,
1050
,
1053
,
1055
,
1057
,
102
8
,
1032
,
1035
,
1039
,
1044
,
1047
,
1051
,
1054
,
1056
,
1058
,
10
59
,
1066
,
1068
,
1069
,
1070
,
1075
,
1077
,
1082
,
1090
,
1095
,
10
60
,
1067
,
1069
,
1070
,
1071
,
1076
,
1078
,
1083
,
1091
,
1096
,
1
099
,
1102
,
1104
,
1109
,
1112
,
1114
,
1116
,
1120
,
1123
,
1123
,
1
100
,
1103
,
1105
,
1110
,
1113
,
1115
,
1117
,
1121
,
1124
,
1124
,
112
6
,
1126
,
1129
,
1129
,
1132
,
1132
,
1135
,
1137
,
1148
,
1156
,
112
7
,
1127
,
1130
,
1130
,
1133
,
1133
,
1136
,
1138
,
1149
,
1157
,
116
0
,
1171
,
1179
,
1186
,
1188
,
1193
,
1196
,
1201
,
1203
,
1205
,
116
1
,
1172
,
1180
,
1187
,
1189
,
1194
,
1197
,
1202
,
1204
,
1206
,
121
2
,
1214
,
1222
,
1228
,
1230
,
1232
,
1239
,
1241
,
1247
,
1253
,
121
3
,
1215
,
1223
,
1229
,
1231
,
1233
,
1240
,
1242
,
1248
,
1254
,
125
5
,
1257
,
1259
,
1266
,
1268
,
1271
,
1276
,
1278
,
1282
,
1284
,
125
6
,
1258
,
1260
,
1267
,
1269
,
1272
,
1277
,
1279
,
1283
,
1285
,
128
6
,
1288
,
1292
,
1294
,
1297
,
1300
,
1303
,
1306
,
1310
,
1312
,
128
7
,
1289
,
1293
,
1295
,
1298
,
1301
,
1304
,
1307
,
1311
,
1313
,
131
5
,
1317
,
1321
,
1324
,
1329
,
1331
,
1333
,
1347
,
1354
,
1359
,
131
6
,
1318
,
1322
,
1325
,
1330
,
1332
,
1334
,
1348
,
1355
,
1360
,
136
5
,
1370
,
1372
,
1377
,
1379
,
1383
,
1387
,
1391
,
1401
,
1403
,
136
6
,
1371
,
1373
,
1378
,
1380
,
1384
,
1388
,
1392
,
1402
,
1404
,
140
8
,
1413
,
1416
,
1420
,
1423
,
1427
,
1430
,
1433
,
1436
,
1440
,
140
9
,
1414
,
1417
,
1421
,
1424
,
1428
,
1431
,
1434
,
1437
,
1441
,
144
3
,
1447
,
1451
,
1453
,
1455
,
1457
,
1459
,
1461
,
1463
,
1465
,
144
4
,
1448
,
1452
,
1454
,
1456
,
1458
,
1460
,
1462
,
1464
,
1466
,
147
5
,
1483
,
1485
,
1487
,
1491
,
1493
,
1496
,
1499
,
1510
,
1512
,
147
6
,
1484
,
1486
,
1488
,
1492
,
1494
,
1497
,
1500
,
1511
,
1513
,
151
7
,
1519
,
1522
,
1536
,
1539
,
1542
,
1544
,
1546
,
1554
,
1562
,
151
8
,
1520
,
1523
,
1537
,
1540
,
1543
,
1545
,
1547
,
1555
,
1563
,
157
3
,
1578
,
1581
,
1595
,
1604
,
1608
,
1612
,
1616
,
1622
,
1626
,
157
4
,
1579
,
1582
,
1596
,
1605
,
1609
,
1613
,
1617
,
1623
,
1627
,
163
1
,
1634
,
1639
,
1642
,
1643
,
1660
,
1665
,
1668
,
1680
,
1682
,
163
2
,
1635
,
1640
,
1643
,
1644
,
1661
,
1666
,
1669
,
1681
,
1683
,
169
2
,
1702
,
1703
,
1711
,
1714
,
1726
,
1730
,
1747
,
1757
,
1766
,
169
3
,
1703
,
1704
,
1712
,
1715
,
1727
,
1731
,
1748
,
1758
,
1767
,
177
1
,
1776
,
1781
,
1785
,
1789
,
1800
,
1807
,
1814
,
1821
,
1832
,
177
2
,
1777
,
1782
,
1786
,
1790
,
1801
,
1808
,
1815
,
1822
,
1833
,
183
8
,
1841
,
1846
,
1869
,
1903
,
1934
,
1965
,
1980
,
1991
,
1995
,
183
9
,
1842
,
1847
,
1870
,
1904
,
1935
,
1966
,
1981
,
1992
,
1996
,
1999
,
2002
,
2007
,
2009
,
2012
,
2014
,
2018
,
2023
,
2026
,
2032
,
2000
,
2003
,
2008
,
2010
,
2013
,
2015
,
2019
,
2024
,
2027
,
2033
,
203
7
,
2042
,
2044
,
2053
,
2054
,
2060
,
2062
,
2072
,
2074
,
2078
,
203
8
,
2043
,
2045
,
2054
,
2055
,
2061
,
2063
,
2073
,
2075
,
2079
,
208
1
,
2087
,
2097
,
2106
,
2115
,
2125
,
2139
,
2144
,
2149
,
2151
,
208
2
,
2088
,
2098
,
2107
,
2116
,
2126
,
2140
,
2145
,
2150
,
2152
,
216
0
,
2163
,
2168
,
2171
,
2175
216
1
,
2164
,
2169
,
2172
,
2176
};
};
#endif
#endif
...
@@ -1660,14 +1661,14 @@ yyreduce:
...
@@ -1660,14 +1661,14 @@ yyreduce:
switch
(
yyn
)
{
switch
(
yyn
)
{
case
1
:
case
1
:
#line 23
2
"c-parse.y"
#line 23
3
"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 23
7
"c-parse.y"
#line 23
8
"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. */
...
@@ -1677,15 +1678,15 @@ case 2:
...
@@ -1677,15 +1678,15 @@ case 2:
;
;
break
;}
break
;}
case
3
:
case
3
:
#line 25
1
"c-parse.y"
#line 25
2
"c-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
5
:
case
5
:
#line 25
2
"c-parse.y"
#line 25
3
"c-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
9
:
case
9
:
#line 2
59
"c-parse.y"
#line 2
60
"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
)
...
@@ -1695,11 +1696,11 @@ case 9:
...
@@ -1695,11 +1696,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 26
7
"c-parse.y"
#line 26
8
"c-parse.y"
{
pedantic
=
yyvsp
[
-
1
].
itype
;
;
{
pedantic
=
yyvsp
[
-
1
].
itype
;
;
break
;}
break
;}
case
11
:
case
11
:
#line 27
2
"c-parse.y"
#line 27
3
"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
)
...
@@ -1711,45 +1712,45 @@ case 11:
...
@@ -1711,45 +1712,45 @@ case 11:
resume_momentary
(
yyvsp
[
-
2
].
itype
);
;
resume_momentary
(
yyvsp
[
-
2
].
itype
);
;
break
;}
break
;}
case
12
:
case
12
:
#line 28
2
"c-parse.y"
#line 28
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
);
resume_momentary
(
yyvsp
[
-
2
].
itype
);
;
resume_momentary
(
yyvsp
[
-
2
].
itype
);
;
break
;}
break
;}
case
13
:
case
13
:
#line 28
7
"c-parse.y"
#line 28
8
"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
);
resume_momentary
(
yyvsp
[
-
2
].
itype
);
;
resume_momentary
(
yyvsp
[
-
2
].
itype
);
;
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
,
0
))
prefix_attributes
,
NULL_TREE
,
0
))
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
);
...
@@ -1757,25 +1758,25 @@ case 21:
...
@@ -1757,25 +1758,25 @@ case 21:
resume_momentary
(
yyvsp
[
-
5
].
itype
);
;
resume_momentary
(
yyvsp
[
-
5
].
itype
);
;
break
;}
break
;}
case
22
:
case
22
:
#line 31
7
"c-parse.y"
#line 31
8
"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
);
resume_momentary
(
yyvsp
[
-
2
].
itype
);
;
resume_momentary
(
yyvsp
[
-
2
].
itype
);
;
break
;}
break
;}
case
23
:
case
23
:
#line 32
2
"c-parse.y"
#line 32
3
"c-parse.y"
{
if
(
!
start_function
(
current_declspecs
,
yyvsp
[
0
].
ttype
,
{
if
(
!
start_function
(
current_declspecs
,
yyvsp
[
0
].
ttype
,
prefix_attributes
,
NULL_TREE
,
0
))
prefix_attributes
,
NULL_TREE
,
0
))
YYERROR1
;
YYERROR1
;
reinit_parse_for_function
();
;
reinit_parse_for_function
();
;
break
;}
break
;}
case
24
:
case
24
:
#line 32
7
"c-parse.y"
#line 32
8
"c-parse.y"
{
store_parm_decls
();
;
{
store_parm_decls
();
;
break
;}
break
;}
case
25
:
case
25
:
#line 3
29
"c-parse.y"
#line 3
30
"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
);
...
@@ -1783,25 +1784,25 @@ case 25:
...
@@ -1783,25 +1784,25 @@ case 25:
resume_momentary
(
yyvsp
[
-
5
].
itype
);
;
resume_momentary
(
yyvsp
[
-
5
].
itype
);
;
break
;}
break
;}
case
26
:
case
26
:
#line 33
5
"c-parse.y"
#line 33
6
"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
);
resume_momentary
(
yyvsp
[
-
2
].
itype
);
;
resume_momentary
(
yyvsp
[
-
2
].
itype
);
;
break
;}
break
;}
case
27
:
case
27
:
#line 34
0
"c-parse.y"
#line 34
1
"c-parse.y"
{
if
(
!
start_function
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
{
if
(
!
start_function
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
prefix_attributes
,
NULL_TREE
,
0
))
prefix_attributes
,
NULL_TREE
,
0
))
YYERROR1
;
YYERROR1
;
reinit_parse_for_function
();
;
reinit_parse_for_function
();
;
break
;}
break
;}
case
28
:
case
28
:
#line 34
5
"c-parse.y"
#line 34
6
"c-parse.y"
{
store_parm_decls
();
;
{
store_parm_decls
();
;
break
;}
break
;}
case
29
:
case
29
:
#line 34
7
"c-parse.y"
#line 34
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
);
...
@@ -1809,72 +1810,72 @@ case 29:
...
@@ -1809,72 +1810,72 @@ case 29:
resume_momentary
(
yyvsp
[
-
5
].
itype
);
;
resume_momentary
(
yyvsp
[
-
5
].
itype
);
;
break
;}
break
;}
case
30
:
case
30
:
#line 35
3
"c-parse.y"
#line 35
4
"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
);
resume_momentary
(
yyvsp
[
-
2
].
itype
);
;
resume_momentary
(
yyvsp
[
-
2
].
itype
);
;
break
;}
break
;}
case
33
:
case
33
:
#line 36
5
"c-parse.y"
#line 36
6
"c-parse.y"
{
yyval
.
code
=
ADDR_EXPR
;
;
{
yyval
.
code
=
ADDR_EXPR
;
;
break
;}
break
;}
case
34
:
case
34
:
#line 36
7
"c-parse.y"
#line 36
8
"c-parse.y"
{
yyval
.
code
=
NEGATE_EXPR
;
;
{
yyval
.
code
=
NEGATE_EXPR
;
;
break
;}
break
;}
case
35
:
case
35
:
#line 3
69
"c-parse.y"
#line 3
70
"c-parse.y"
{
yyval
.
code
=
CONVERT_EXPR
;
;
{
yyval
.
code
=
CONVERT_EXPR
;
;
break
;}
break
;}
case
36
:
case
36
:
#line 37
1
"c-parse.y"
#line 37
2
"c-parse.y"
{
yyval
.
code
=
PREINCREMENT_EXPR
;
;
{
yyval
.
code
=
PREINCREMENT_EXPR
;
;
break
;}
break
;}
case
37
:
case
37
:
#line 37
3
"c-parse.y"
#line 37
4
"c-parse.y"
{
yyval
.
code
=
PREDECREMENT_EXPR
;
;
{
yyval
.
code
=
PREDECREMENT_EXPR
;
;
break
;}
break
;}
case
38
:
case
38
:
#line 37
5
"c-parse.y"
#line 37
6
"c-parse.y"
{
yyval
.
code
=
BIT_NOT_EXPR
;
;
{
yyval
.
code
=
BIT_NOT_EXPR
;
;
break
;}
break
;}
case
39
:
case
39
:
#line 37
7
"c-parse.y"
#line 37
8
"c-parse.y"
{
yyval
.
code
=
TRUTH_NOT_EXPR
;
;
{
yyval
.
code
=
TRUTH_NOT_EXPR
;
;
break
;}
break
;}
case
40
:
case
40
:
#line 38
1
"c-parse.y"
#line 38
2
"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
6
"c-parse.y"
#line 38
7
"c-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
43
:
case
43
:
#line 39
2
"c-parse.y"
#line 39
3
"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 39
4
"c-parse.y"
#line 39
5
"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 40
0
"c-parse.y"
#line 40
1
"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 40
3
"c-parse.y"
#line 40
4
"c-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
pedantic
=
yyvsp
[
-
1
].
itype
;
;
pedantic
=
yyvsp
[
-
1
].
itype
;
;
break
;}
break
;}
case
48
:
case
48
:
#line 40
6
"c-parse.y"
#line 40
7
"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 41
0
"c-parse.y"
#line 41
1
"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 `&&'"
);
...
@@ -1889,7 +1890,7 @@ case 49:
...
@@ -1889,7 +1890,7 @@ case 49:
;
;
break
;}
break
;}
case
50
:
case
50
:
#line 43
8
"c-parse.y"
#line 43
9
"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
)))
...
@@ -1897,49 +1898,49 @@ case 50:
...
@@ -1897,49 +1898,49 @@ 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 44
4
"c-parse.y"
#line 44
5
"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
7
"c-parse.y"
#line 44
8
"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 45
0
"c-parse.y"
#line 45
1
"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 45
3
"c-parse.y"
#line 45
4
"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 45
5
"c-parse.y"
#line 45
6
"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 4
59
"c-parse.y"
#line 4
60
"c-parse.y"
{
skip_evaluation
++
;
;
{
skip_evaluation
++
;
;
break
;}
break
;}
case
57
:
case
57
:
#line 46
3
"c-parse.y"
#line 46
4
"c-parse.y"
{
skip_evaluation
++
;
;
{
skip_evaluation
++
;
;
break
;}
break
;}
case
59
:
case
59
:
#line 4
69
"c-parse.y"
#line 4
70
"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
60
:
case
60
:
#line 47
2
"c-parse.y"
#line 47
3
"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
61
:
case
61
:
#line 47
6
"c-parse.y"
#line 47
7
"c-parse.y"
{
char
*
name
;
{
char
*
name
;
tree
result
=
pop_init_level
(
0
);
tree
result
=
pop_init_level
(
0
);
tree
type
=
yyvsp
[
-
5
].
ttype
;
tree
type
=
yyvsp
[
-
5
].
ttype
;
...
@@ -1966,90 +1967,90 @@ case 61:
...
@@ -1966,90 +1967,90 @@ case 61:
;
;
break
;}
break
;}
case
63
:
case
63
:
#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
64
:
case
64
:
#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
65
:
case
65
:
#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
66
:
case
66
:
#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
67
:
case
67
:
#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
68
:
case
68
:
#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
69
:
case
69
:
#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
70
:
case
70
:
#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
71
:
case
71
:
#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
72
:
case
72
:
#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
73
:
case
73
:
#line 52
5
"c-parse.y"
#line 52
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
74
:
case
74
:
#line 52
7
"c-parse.y"
#line 52
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
75
:
case
75
:
#line 5
29
"c-parse.y"
#line 5
30
"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
76
:
case
76
:
#line 53
2
"c-parse.y"
#line 53
3
"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
77
:
case
77
:
#line 53
5
"c-parse.y"
#line 53
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_true_node
;
;
skip_evaluation
+=
yyvsp
[
-
1
].
ttype
==
boolean_true_node
;
;
break
;}
break
;}
case
78
:
case
78
:
#line 53
8
"c-parse.y"
#line 53
9
"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
79
:
case
79
:
#line 54
1
"c-parse.y"
#line 54
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_false_node
;
;
skip_evaluation
+=
yyvsp
[
-
1
].
ttype
==
boolean_false_node
;
;
break
;}
break
;}
case
80
:
case
80
:
#line 54
4
"c-parse.y"
#line 54
5
"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
81
:
case
81
:
#line 54
7
"c-parse.y"
#line 54
8
"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
82
:
case
82
:
#line 55
0
"c-parse.y"
#line 55
1
"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. */
...
@@ -2058,23 +2059,23 @@ case 82:
...
@@ -2058,23 +2059,23 @@ case 82:
skip_evaluation
+=
yyvsp
[
-
1
].
ttype
==
boolean_true_node
;
;
skip_evaluation
+=
yyvsp
[
-
1
].
ttype
==
boolean_true_node
;
;
break
;}
break
;}
case
83
:
case
83
:
#line 55
7
"c-parse.y"
#line 55
8
"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
84
:
case
84
:
#line 56
0
"c-parse.y"
#line 56
1
"c-parse.y"
{
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
);
C_SET_EXP_ORIGINAL_CODE
(
yyval
.
ttype
,
MODIFY_EXPR
);
;
C_SET_EXP_ORIGINAL_CODE
(
yyval
.
ttype
,
MODIFY_EXPR
);
;
break
;}
break
;}
case
85
:
case
85
:
#line 56
3
"c-parse.y"
#line 56
4
"c-parse.y"
{
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. */
C_SET_EXP_ORIGINAL_CODE
(
yyval
.
ttype
,
ERROR_MARK
);
;
C_SET_EXP_ORIGINAL_CODE
(
yyval
.
ttype
,
ERROR_MARK
);
;
break
;}
break
;}
case
86
:
case
86
:
#line 57
0
"c-parse.y"
#line 57
1
"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
)
...
@@ -2174,11 +2175,11 @@ case 86:
...
@@ -2174,11 +2175,11 @@ case 86:
;
;
break
;}
break
;}
case
88
:
case
88
:
#line 6
69
"c-parse.y"
#line 6
70
"c-parse.y"
{
yyval
.
ttype
=
combine_strings
(
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
combine_strings
(
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
89
:
case
89
:
#line 67
1
"c-parse.y"
#line 67
2
"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
==
'<'
)
...
@@ -2186,11 +2187,11 @@ case 89:
...
@@ -2186,11 +2187,11 @@ case 89:
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
;
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
;
break
;}
break
;}
case
90
:
case
90
:
#line 67
7
"c-parse.y"
#line 67
8
"c-parse.y"
{
yyval
.
ttype
=
error_mark_node
;
;
{
yyval
.
ttype
=
error_mark_node
;
;
break
;}
break
;}
case
91
:
case
91
:
#line 6
79
"c-parse.y"
#line 6
80
"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"
);
...
@@ -2206,7 +2207,7 @@ case 91:
...
@@ -2206,7 +2207,7 @@ case 91:
yyval
.
ttype
=
expand_start_stmt_expr
();
;
yyval
.
ttype
=
expand_start_stmt_expr
();
;
break
;}
break
;}
case
92
:
case
92
:
#line 69
3
"c-parse.y"
#line 69
4
"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"
);
...
@@ -2231,21 +2232,21 @@ case 92:
...
@@ -2231,21 +2232,21 @@ case 92:
;
;
break
;}
break
;}
case
93
:
case
93
:
#line 71
6
"c-parse.y"
#line 71
7
"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
94
:
case
94
:
#line 71
8
"c-parse.y"
#line 71
9
"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
95
:
case
95
:
#line 72
0
"c-parse.y"
#line 72
1
"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
96
:
case
96
:
#line 72
4
"c-parse.y"
#line 72
5
"c-parse.y"
{
{
tree
expr
=
build_indirect_ref
(
yyvsp
[
-
2
].
ttype
,
"->"
);
tree
expr
=
build_indirect_ref
(
yyvsp
[
-
2
].
ttype
,
"->"
);
...
@@ -2253,56 +2254,56 @@ case 96:
...
@@ -2253,56 +2254,56 @@ case 96:
;
;
break
;}
break
;}
case
97
:
case
97
:
#line 73
0
"c-parse.y"
#line 73
1
"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
98
:
case
98
:
#line 73
2
"c-parse.y"
#line 73
3
"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
100
:
case
100
:
#line 7
39
"c-parse.y"
#line 7
40
"c-parse.y"
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
103
:
case
103
:
#line 74
8
"c-parse.y"
#line 74
9
"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
104
:
case
104
:
#line 75
8
"c-parse.y"
#line 75
9
"c-parse.y"
{
;
{
;
break
;}
break
;}
case
109
:
case
109
:
#line 77
4
"c-parse.y"
#line 77
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
);
resume_momentary
(
yyvsp
[
-
2
].
itype
);
;
resume_momentary
(
yyvsp
[
-
2
].
itype
);
;
break
;}
break
;}
case
110
:
case
110
:
#line 7
79
"c-parse.y"
#line 7
80
"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
);
resume_momentary
(
yyvsp
[
-
2
].
itype
);
;
resume_momentary
(
yyvsp
[
-
2
].
itype
);
;
break
;}
break
;}
case
111
:
case
111
:
#line 78
4
"c-parse.y"
#line 78
5
"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
112
:
case
112
:
#line 78
7
"c-parse.y"
#line 78
8
"c-parse.y"
{
pedwarn
(
"empty declaration"
);
;
{
pedwarn
(
"empty declaration"
);
;
break
;}
break
;}
case
113
:
case
113
:
#line 79
6
"c-parse.y"
#line 79
7
"c-parse.y"
{
;
{
;
break
;}
break
;}
case
118
:
case
118
:
#line 81
1
"c-parse.y"
#line 81
2
"c-parse.y"
{
yyval
.
itype
=
suspend_momentary
();
{
yyval
.
itype
=
suspend_momentary
();
pending_xref_error
();
pending_xref_error
();
declspec_stack
=
tree_cons
(
prefix_attributes
,
declspec_stack
=
tree_cons
(
prefix_attributes
,
...
@@ -2312,131 +2313,131 @@ case 118:
...
@@ -2312,131 +2313,131 @@ case 118:
&
current_declspecs
,
&
prefix_attributes
);
;
&
current_declspecs
,
&
prefix_attributes
);
;
break
;}
break
;}
case
119
:
case
119
:
#line 82
2
"c-parse.y"
#line 82
3
"c-parse.y"
{
prefix_attributes
=
chainon
(
prefix_attributes
,
yyvsp
[
0
].
ttype
);
;
{
prefix_attributes
=
chainon
(
prefix_attributes
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
120
:
case
120
:
#line 82
7
"c-parse.y"
#line 82
8
"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
);
resume_momentary
(
yyvsp
[
-
2
].
itype
);
;
resume_momentary
(
yyvsp
[
-
2
].
itype
);
;
break
;}
break
;}
case
121
:
case
121
:
#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
);
resume_momentary
(
yyvsp
[
-
2
].
itype
);
;
resume_momentary
(
yyvsp
[
-
2
].
itype
);
;
break
;}
break
;}
case
122
:
case
122
:
#line 83
7
"c-parse.y"
#line 83
8
"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
);
resume_momentary
(
yyvsp
[
-
1
].
itype
);
;
resume_momentary
(
yyvsp
[
-
1
].
itype
);
;
break
;}
break
;}
case
123
:
case
123
:
#line 84
2
"c-parse.y"
#line 84
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
);
resume_momentary
(
yyvsp
[
-
1
].
itype
);
;
resume_momentary
(
yyvsp
[
-
1
].
itype
);
;
break
;}
break
;}
case
124
:
case
124
:
#line 84
7
"c-parse.y"
#line 84
8
"c-parse.y"
{
shadow_tag
(
yyvsp
[
-
1
].
ttype
);
;
{
shadow_tag
(
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
125
:
case
125
:
#line 8
49
"c-parse.y"
#line 8
50
"c-parse.y"
{
pedwarn
(
"empty declaration"
);
;
{
pedwarn
(
"empty declaration"
);
;
break
;}
break
;}
case
126
:
case
126
:
#line 85
1
"c-parse.y"
#line 85
2
"c-parse.y"
{
pedantic
=
yyvsp
[
-
1
].
itype
;
;
{
pedantic
=
yyvsp
[
-
1
].
itype
;
;
break
;}
break
;}
case
127
:
case
127
:
#line 86
1
"c-parse.y"
#line 86
2
"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
128
:
case
128
:
#line 86
3
"c-parse.y"
#line 86
4
"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
129
:
case
129
:
#line 86
7
"c-parse.y"
#line 86
8
"c-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
130
:
case
130
:
#line 8
69
"c-parse.y"
#line 8
70
"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
131
:
case
131
:
#line 87
1
"c-parse.y"
#line 87
2
"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
132
:
case
132
:
#line 87
6
"c-parse.y"
#line 87
7
"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
133
:
case
133
:
#line 88
1
"c-parse.y"
#line 88
2
"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
134
:
case
134
:
#line 88
3
"c-parse.y"
#line 88
4
"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
135
:
case
135
:
#line 88
8
"c-parse.y"
#line 88
9
"c-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
136
:
case
136
:
#line 89
0
"c-parse.y"
#line 89
1
"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
137
:
case
137
:
#line 89
2
"c-parse.y"
#line 89
3
"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
138
:
case
138
:
#line 90
5
"c-parse.y"
#line 90
6
"c-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
139
:
case
139
:
#line 90
7
"c-parse.y"
#line 90
8
"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
140
:
case
140
:
#line 9
09
"c-parse.y"
#line 9
10
"c-parse.y"
{
yyval
.
ttype
=
chainon
(
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
chainon
(
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
141
:
case
141
:
#line 91
1
"c-parse.y"
#line 91
2
"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
142
:
case
142
:
#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
);
TREE_STATIC
(
yyval
.
ttype
)
=
1
;
;
TREE_STATIC
(
yyval
.
ttype
)
=
1
;
;
break
;}
break
;}
case
143
:
case
143
:
#line 9
19
"c-parse.y"
#line 9
20
"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
144
:
case
144
:
#line 92
1
"c-parse.y"
#line 92
2
"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
145
:
case
145
:
#line 92
4
"c-parse.y"
#line 92
5
"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
));
...
@@ -2444,138 +2445,138 @@ case 145:
...
@@ -2444,138 +2445,138 @@ case 145:
TREE_STATIC
(
yyval
.
ttype
)
=
TREE_STATIC
(
yyvsp
[
-
1
].
ttype
);
;
TREE_STATIC
(
yyval
.
ttype
)
=
TREE_STATIC
(
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
146
:
case
146
:
#line 93
8
"c-parse.y"
#line 93
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
147
:
case
147
:
#line 94
0
"c-parse.y"
#line 94
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
148
:
case
148
:
#line 94
4
"c-parse.y"
#line 94
5
"c-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
149
:
case
149
:
#line 94
6
"c-parse.y"
#line 94
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
152
:
case
152
:
#line 95
6
"c-parse.y"
#line 95
7
"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
153
:
case
153
:
#line 96
0
"c-parse.y"
#line 96
1
"c-parse.y"
{
yyval
.
ttype
=
TREE_TYPE
(
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
TREE_TYPE
(
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
154
:
case
154
:
#line 96
2
"c-parse.y"
#line 96
3
"c-parse.y"
{
yyval
.
ttype
=
groktypename
(
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
groktypename
(
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
162
:
case
162
:
#line 98
4
"c-parse.y"
#line 98
5
"c-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
163
:
case
163
:
#line 98
6
"c-parse.y"
#line 98
7
"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
164
:
case
164
:
#line 99
3
"c-parse.y"
#line 99
4
"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
165
:
case
165
:
#line 99
8
"c-parse.y"
#line 99
9
"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
166
:
case
166
:
#line 100
1
"c-parse.y"
#line 100
2
"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
167
:
case
167
:
#line 10
09
"c-parse.y"
#line 10
10
"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
168
:
case
168
:
#line 101
4
"c-parse.y"
#line 101
5
"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
169
:
case
169
:
#line 101
8
"c-parse.y"
#line 101
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
170
:
case
170
:
#line 102
6
"c-parse.y"
#line 102
7
"c-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
171
:
case
171
:
#line 102
8
"c-parse.y"
#line 102
9
"c-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
172
:
case
172
:
#line 103
3
"c-parse.y"
#line 103
4
"c-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
173
:
case
173
:
#line 103
5
"c-parse.y"
#line 103
6
"c-parse.y"
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
174
:
case
174
:
#line 104
0
"c-parse.y"
#line 104
1
"c-parse.y"
{
yyval
.
ttype
=
yyvsp
[
-
2
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
-
2
].
ttype
;
;
break
;}
break
;}
case
175
:
case
175
:
#line 104
5
"c-parse.y"
#line 104
6
"c-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
176
:
case
176
:
#line 104
7
"c-parse.y"
#line 104
8
"c-parse.y"
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
177
:
case
177
:
#line 105
2
"c-parse.y"
#line 105
3
"c-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
178
:
case
178
:
#line 105
4
"c-parse.y"
#line 105
5
"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
179
:
case
179
:
#line 105
6
"c-parse.y"
#line 105
7
"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
180
:
case
180
:
#line 105
8
"c-parse.y"
#line 105
9
"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
181
:
case
181
:
#line 106
0
"c-parse.y"
#line 106
1
"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
187
:
case
187
:
#line 107
8
"c-parse.y"
#line 107
9
"c-parse.y"
{
really_start_incremental_init
(
NULL_TREE
);
{
really_start_incremental_init
(
NULL_TREE
);
/* Note that the call to clear_momentary
/* Note that the call to clear_momentary
is in process_init_element. */
is in process_init_element. */
push_momentary
();
;
push_momentary
();
;
break
;}
break
;}
case
188
:
case
188
:
#line 108
3
"c-parse.y"
#line 108
4
"c-parse.y"
{
yyval
.
ttype
=
pop_init_level
(
0
);
{
yyval
.
ttype
=
pop_init_level
(
0
);
if
(
yyval
.
ttype
==
error_mark_node
if
(
yyval
.
ttype
==
error_mark_node
&&
!
(
yychar
==
STRING
||
yychar
==
CONSTANT
))
&&
!
(
yychar
==
STRING
||
yychar
==
CONSTANT
))
...
@@ -2584,48 +2585,48 @@ case 188:
...
@@ -2584,48 +2585,48 @@ case 188:
pop_momentary_nofree
();
;
pop_momentary_nofree
();
;
break
;}
break
;}
case
189
:
case
189
:
#line 109
1
"c-parse.y"
#line 109
2
"c-parse.y"
{
yyval
.
ttype
=
error_mark_node
;
;
{
yyval
.
ttype
=
error_mark_node
;
;
break
;}
break
;}
case
190
:
case
190
:
#line 109
7
"c-parse.y"
#line 109
8
"c-parse.y"
{
if
(
pedantic
)
{
if
(
pedantic
)
pedwarn
(
"ANSI C forbids empty initializer braces"
);
;
pedwarn
(
"ANSI C forbids empty initializer braces"
);
;
break
;}
break
;}
case
194
:
case
194
:
#line 111
1
"c-parse.y"
#line 111
2
"c-parse.y"
{
process_init_element
(
yyvsp
[
0
].
ttype
);
;
{
process_init_element
(
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
195
:
case
195
:
#line 111
3
"c-parse.y"
#line 111
4
"c-parse.y"
{
push_init_level
(
0
);
;
{
push_init_level
(
0
);
;
break
;}
break
;}
case
196
:
case
196
:
#line 111
5
"c-parse.y"
#line 111
6
"c-parse.y"
{
process_init_element
(
pop_init_level
(
0
));
;
{
process_init_element
(
pop_init_level
(
0
));
;
break
;}
break
;}
case
198
:
case
198
:
#line 112
1
"c-parse.y"
#line 112
2
"c-parse.y"
{
set_init_index
(
yyvsp
[
-
4
].
ttype
,
yyvsp
[
-
2
].
ttype
);
;
{
set_init_index
(
yyvsp
[
-
4
].
ttype
,
yyvsp
[
-
2
].
ttype
);
;
break
;}
break
;}
case
200
:
case
200
:
#line 112
4
"c-parse.y"
#line 112
5
"c-parse.y"
{
set_init_index
(
yyvsp
[
-
2
].
ttype
,
NULL_TREE
);
;
{
set_init_index
(
yyvsp
[
-
2
].
ttype
,
NULL_TREE
);
;
break
;}
break
;}
case
202
:
case
202
:
#line 112
7
"c-parse.y"
#line 112
8
"c-parse.y"
{
set_init_index
(
yyvsp
[
-
1
].
ttype
,
NULL_TREE
);
;
{
set_init_index
(
yyvsp
[
-
1
].
ttype
,
NULL_TREE
);
;
break
;}
break
;}
case
204
:
case
204
:
#line 113
0
"c-parse.y"
#line 113
1
"c-parse.y"
{
set_init_label
(
yyvsp
[
-
1
].
ttype
);
;
{
set_init_label
(
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
206
:
case
206
:
#line 113
3
"c-parse.y"
#line 113
4
"c-parse.y"
{
set_init_label
(
yyvsp
[
-
1
].
ttype
);
;
{
set_init_label
(
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
208
:
case
208
:
#line 11
39
"c-parse.y"
#line 11
40
"c-parse.y"
{
push_c_function_context
();
{
push_c_function_context
();
if
(
!
start_function
(
current_declspecs
,
yyvsp
[
0
].
ttype
,
if
(
!
start_function
(
current_declspecs
,
yyvsp
[
0
].
ttype
,
prefix_attributes
,
NULL_TREE
,
1
))
prefix_attributes
,
NULL_TREE
,
1
))
...
@@ -2636,16 +2637,16 @@ case 208:
...
@@ -2636,16 +2637,16 @@ case 208:
reinit_parse_for_function
();
;
reinit_parse_for_function
();
;
break
;}
break
;}
case
209
:
case
209
:
#line 114
8
"c-parse.y"
#line 114
9
"c-parse.y"
{
store_parm_decls
();
;
{
store_parm_decls
();
;
break
;}
break
;}
case
210
:
case
210
:
#line 115
6
"c-parse.y"
#line 115
7
"c-parse.y"
{
finish_function
(
1
);
{
finish_function
(
1
);
pop_c_function_context
();
;
pop_c_function_context
();
;
break
;}
break
;}
case
211
:
case
211
:
#line 116
2
"c-parse.y"
#line 116
3
"c-parse.y"
{
push_c_function_context
();
{
push_c_function_context
();
if
(
!
start_function
(
current_declspecs
,
yyvsp
[
0
].
ttype
,
if
(
!
start_function
(
current_declspecs
,
yyvsp
[
0
].
ttype
,
prefix_attributes
,
NULL_TREE
,
1
))
prefix_attributes
,
NULL_TREE
,
1
))
...
@@ -2656,172 +2657,172 @@ case 211:
...
@@ -2656,172 +2657,172 @@ case 211:
reinit_parse_for_function
();
;
reinit_parse_for_function
();
;
break
;}
break
;}
case
212
:
case
212
:
#line 117
1
"c-parse.y"
#line 117
2
"c-parse.y"
{
store_parm_decls
();
;
{
store_parm_decls
();
;
break
;}
break
;}
case
213
:
case
213
:
#line 11
79
"c-parse.y"
#line 11
80
"c-parse.y"
{
finish_function
(
1
);
{
finish_function
(
1
);
pop_c_function_context
();
;
pop_c_function_context
();
;
break
;}
break
;}
case
216
:
case
216
:
#line 119
5
"c-parse.y"
#line 119
6
"c-parse.y"
{
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
;
break
;}
break
;}
case
217
:
case
217
:
#line 119
7
"c-parse.y"
#line 119
8
"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
218
:
case
218
:
#line 120
2
"c-parse.y"
#line 120
3
"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
219
:
case
219
:
#line 120
4
"c-parse.y"
#line 120
5
"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
220
:
case
220
:
#line 120
6
"c-parse.y"
#line 120
7
"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
221
:
case
221
:
#line 121
3
"c-parse.y"
#line 121
4
"c-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
223
:
case
223
:
#line 122
4
"c-parse.y"
#line 122
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
224
:
case
224
:
#line 12
29
"c-parse.y"
#line 12
30
"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
225
:
case
225
:
#line 123
1
"c-parse.y"
#line 123
2
"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
226
:
case
226
:
#line 123
3
"c-parse.y"
#line 123
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
227
:
case
227
:
#line 124
0
"c-parse.y"
#line 124
1
"c-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
229
:
case
229
:
#line 12
49
"c-parse.y"
#line 12
50
"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
230
:
case
230
:
#line 125
4
"c-parse.y"
#line 125
5
"c-parse.y"
{
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
;
break
;}
break
;}
case
231
:
case
231
:
#line 125
6
"c-parse.y"
#line 125
7
"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
232
:
case
232
:
#line 125
8
"c-parse.y"
#line 125
9
"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
233
:
case
233
:
#line 126
0
"c-parse.y"
#line 126
1
"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
234
:
case
234
:
#line 126
7
"c-parse.y"
#line 126
8
"c-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
236
:
case
236
:
#line 127
3
"c-parse.y"
#line 127
4
"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
237
:
case
237
:
#line 127
7
"c-parse.y"
#line 127
8
"c-parse.y"
{
yyval
.
ttype
=
finish_struct
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
finish_struct
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
238
:
case
238
:
#line 12
79
"c-parse.y"
#line 12
80
"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
,
yyvsp
[
0
].
ttype
);
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
;
break
;}
break
;}
case
239
:
case
239
:
#line 128
3
"c-parse.y"
#line 128
4
"c-parse.y"
{
yyval
.
ttype
=
xref_tag
(
RECORD_TYPE
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
xref_tag
(
RECORD_TYPE
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
240
:
case
240
:
#line 128
5
"c-parse.y"
#line 128
6
"c-parse.y"
{
yyval
.
ttype
=
start_struct
(
UNION_TYPE
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
start_struct
(
UNION_TYPE
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
241
:
case
241
:
#line 128
7
"c-parse.y"
#line 128
8
"c-parse.y"
{
yyval
.
ttype
=
finish_struct
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
finish_struct
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
242
:
case
242
:
#line 12
89
"c-parse.y"
#line 12
90
"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
,
yyvsp
[
0
].
ttype
);
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
;
break
;}
break
;}
case
243
:
case
243
:
#line 129
3
"c-parse.y"
#line 129
4
"c-parse.y"
{
yyval
.
ttype
=
xref_tag
(
UNION_TYPE
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
xref_tag
(
UNION_TYPE
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
244
:
case
244
:
#line 129
5
"c-parse.y"
#line 129
6
"c-parse.y"
{
yyvsp
[
0
].
itype
=
suspend_momentary
();
{
yyvsp
[
0
].
itype
=
suspend_momentary
();
yyval
.
ttype
=
start_enum
(
yyvsp
[
-
1
].
ttype
);
;
yyval
.
ttype
=
start_enum
(
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
245
:
case
245
:
#line 129
8
"c-parse.y"
#line 129
9
"c-parse.y"
{
yyval
.
ttype
=
finish_enum
(
yyvsp
[
-
4
].
ttype
,
nreverse
(
yyvsp
[
-
3
].
ttype
),
yyvsp
[
0
].
ttype
);
{
yyval
.
ttype
=
finish_enum
(
yyvsp
[
-
4
].
ttype
,
nreverse
(
yyvsp
[
-
3
].
ttype
),
yyvsp
[
0
].
ttype
);
resume_momentary
(
yyvsp
[
-
5
].
itype
);
;
resume_momentary
(
yyvsp
[
-
5
].
itype
);
;
break
;}
break
;}
case
246
:
case
246
:
#line 130
1
"c-parse.y"
#line 130
2
"c-parse.y"
{
yyvsp
[
0
].
itype
=
suspend_momentary
();
{
yyvsp
[
0
].
itype
=
suspend_momentary
();
yyval
.
ttype
=
start_enum
(
NULL_TREE
);
;
yyval
.
ttype
=
start_enum
(
NULL_TREE
);
;
break
;}
break
;}
case
247
:
case
247
:
#line 130
4
"c-parse.y"
#line 130
5
"c-parse.y"
{
yyval
.
ttype
=
finish_enum
(
yyvsp
[
-
4
].
ttype
,
nreverse
(
yyvsp
[
-
3
].
ttype
),
yyvsp
[
0
].
ttype
);
{
yyval
.
ttype
=
finish_enum
(
yyvsp
[
-
4
].
ttype
,
nreverse
(
yyvsp
[
-
3
].
ttype
),
yyvsp
[
0
].
ttype
);
resume_momentary
(
yyvsp
[
-
5
].
itype
);
;
resume_momentary
(
yyvsp
[
-
5
].
itype
);
;
break
;}
break
;}
case
248
:
case
248
:
#line 130
7
"c-parse.y"
#line 130
8
"c-parse.y"
{
yyval
.
ttype
=
xref_tag
(
ENUMERAL_TYPE
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
xref_tag
(
ENUMERAL_TYPE
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
252
:
case
252
:
#line 131
8
"c-parse.y"
#line 131
9
"c-parse.y"
{
if
(
pedantic
)
pedwarn
(
"comma at end of enumerator list"
);
;
{
if
(
pedantic
)
pedwarn
(
"comma at end of enumerator list"
);
;
break
;}
break
;}
case
253
:
case
253
:
#line 132
3
"c-parse.y"
#line 132
4
"c-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
254
:
case
254
:
#line 132
5
"c-parse.y"
#line 132
6
"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
255
:
case
255
:
#line 133
0
"c-parse.y"
#line 133
1
"c-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
256
:
case
256
:
#line 133
2
"c-parse.y"
#line 133
3
"c-parse.y"
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
257
:
case
257
:
#line 133
4
"c-parse.y"
#line 133
5
"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
258
:
case
258
:
#line 13
49
"c-parse.y"
#line 13
50
"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
);
...
@@ -2829,14 +2830,14 @@ case 258:
...
@@ -2829,14 +2830,14 @@ case 258:
resume_momentary
(
yyvsp
[
-
1
].
itype
);
;
resume_momentary
(
yyvsp
[
-
1
].
itype
);
;
break
;}
break
;}
case
259
:
case
259
:
#line 135
5
"c-parse.y"
#line 135
6
"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
260
:
case
260
:
#line 136
0
"c-parse.y"
#line 136
1
"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
);
...
@@ -2844,140 +2845,140 @@ case 260:
...
@@ -2844,140 +2845,140 @@ case 260:
resume_momentary
(
yyvsp
[
-
1
].
itype
);
;
resume_momentary
(
yyvsp
[
-
1
].
itype
);
;
break
;}
break
;}
case
261
:
case
261
:
#line 136
6
"c-parse.y"
#line 136
7
"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
262
:
case
262
:
#line 137
1
"c-parse.y"
#line 137
2
"c-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
263
:
case
263
:
#line 137
3
"c-parse.y"
#line 137
4
"c-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
pedantic
=
yyvsp
[
-
1
].
itype
;
;
pedantic
=
yyvsp
[
-
1
].
itype
;
;
break
;}
break
;}
case
265
:
case
265
:
#line 138
0
"c-parse.y"
#line 138
1
"c-parse.y"
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
266
:
case
266
:
#line 138
5
"c-parse.y"
#line 138
6
"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
267
:
case
267
:
#line 13
89
"c-parse.y"
#line 13
90
"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
268
:
case
268
:
#line 139
2
"c-parse.y"
#line 139
3
"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
270
:
case
270
:
#line 140
4
"c-parse.y"
#line 140
5
"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
271
:
case
271
:
#line 14
09
"c-parse.y"
#line 14
10
"c-parse.y"
{
yyval
.
ttype
=
error_mark_node
;
;
{
yyval
.
ttype
=
error_mark_node
;
;
break
;}
break
;}
case
272
:
case
272
:
#line 141
5
"c-parse.y"
#line 141
6
"c-parse.y"
{
yyval
.
ttype
=
build_enumerator
(
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
{
yyval
.
ttype
=
build_enumerator
(
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
break
;}
break
;}
case
273
:
case
273
:
#line 141
7
"c-parse.y"
#line 141
8
"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
274
:
case
274
:
#line 142
2
"c-parse.y"
#line 142
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
275
:
case
275
:
#line 142
4
"c-parse.y"
#line 142
5
"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
276
:
case
276
:
#line 14
29
"c-parse.y"
#line 14
30
"c-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
278
:
case
278
:
#line 143
5
"c-parse.y"
#line 143
6
"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
279
:
case
279
:
#line 143
7
"c-parse.y"
#line 143
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
280
:
case
280
:
#line 144
2
"c-parse.y"
#line 144
3
"c-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
281
:
case
281
:
#line 144
4
"c-parse.y"
#line 144
5
"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
282
:
case
282
:
#line 14
49
"c-parse.y"
#line 14
50
"c-parse.y"
{
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
;
break
;}
break
;}
case
283
:
case
283
:
#line 145
2
"c-parse.y"
#line 145
3
"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
284
:
case
284
:
#line 145
4
"c-parse.y"
#line 145
5
"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
285
:
case
285
:
#line 145
6
"c-parse.y"
#line 145
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
286
:
case
286
:
#line 145
8
"c-parse.y"
#line 145
9
"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
287
:
case
287
:
#line 146
0
"c-parse.y"
#line 146
1
"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
288
:
case
288
:
#line 146
2
"c-parse.y"
#line 146
3
"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
289
:
case
289
:
#line 146
4
"c-parse.y"
#line 146
5
"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
290
:
case
290
:
#line 146
6
"c-parse.y"
#line 146
7
"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
291
:
case
291
:
#line 147
7
"c-parse.y"
#line 147
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
293
:
case
293
:
#line 148
6
"c-parse.y"
#line 148
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
294
:
case
294
:
#line 148
8
"c-parse.y"
#line 148
9
"c-parse.y"
{
yyval
.
ends_in_label
=
0
;
;
{
yyval
.
ends_in_label
=
0
;
;
break
;}
break
;}
case
298
:
case
298
:
#line 150
0
"c-parse.y"
#line 150
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
();
...
@@ -2986,12 +2987,12 @@ case 298:
...
@@ -2986,12 +2987,12 @@ case 298:
;
;
break
;}
break
;}
case
300
:
case
300
:
#line 151
3
"c-parse.y"
#line 151
4
"c-parse.y"
{
if
(
pedantic
)
{
if
(
pedantic
)
pedwarn
(
"ANSI C forbids label declarations"
);
;
pedwarn
(
"ANSI C forbids label declarations"
);
;
break
;}
break
;}
case
303
:
case
303
:
#line 152
4
"c-parse.y"
#line 152
5
"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
))
{
{
...
@@ -3002,19 +3003,19 @@ case 303:
...
@@ -3002,19 +3003,19 @@ case 303:
;
;
break
;}
break
;}
case
304
:
case
304
:
#line 153
8
"c-parse.y"
#line 153
9
"c-parse.y"
{;
{;
break
;}
break
;}
case
306
:
case
306
:
#line 154
2
"c-parse.y"
#line 154
3
"c-parse.y"
{
compstmt_count
++
;
;
{
compstmt_count
++
;
;
break
;}
break
;}
case
307
:
case
307
:
#line 154
5
"c-parse.y"
#line 154
6
"c-parse.y"
{
yyval
.
ttype
=
convert
(
void_type_node
,
integer_zero_node
);
;
{
yyval
.
ttype
=
convert
(
void_type_node
,
integer_zero_node
);
;
break
;}
break
;}
case
308
:
case
308
:
#line 154
7
"c-parse.y"
#line 154
8
"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
);
...
@@ -3024,7 +3025,7 @@ case 308:
...
@@ -3024,7 +3025,7 @@ case 308:
pop_momentary
();
;
pop_momentary
();
;
break
;}
break
;}
case
309
:
case
309
:
#line 155
5
"c-parse.y"
#line 155
6
"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
);
...
@@ -3034,7 +3035,7 @@ case 309:
...
@@ -3034,7 +3035,7 @@ case 309:
pop_momentary
();
;
pop_momentary
();
;
break
;}
break
;}
case
310
:
case
310
:
#line 156
3
"c-parse.y"
#line 156
4
"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
);
...
@@ -3044,7 +3045,7 @@ case 310:
...
@@ -3044,7 +3045,7 @@ case 310:
pop_momentary
();
;
pop_momentary
();
;
break
;}
break
;}
case
313
:
case
313
:
#line 158
3
"c-parse.y"
#line 158
4
"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
);
...
@@ -3054,7 +3055,7 @@ case 313:
...
@@ -3054,7 +3055,7 @@ case 313:
position_after_white_space
();
;
position_after_white_space
();
;
break
;}
break
;}
case
314
:
case
314
:
#line 159
7
"c-parse.y"
#line 159
8
"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
);
...
@@ -3064,43 +3065,43 @@ case 314:
...
@@ -3064,43 +3065,43 @@ case 314:
position_after_white_space
();
;
position_after_white_space
();
;
break
;}
break
;}
case
315
:
case
315
:
#line 160
5
"c-parse.y"
#line 160
6
"c-parse.y"
{
expand_loop_continue_here
();
;
{
expand_loop_continue_here
();
;
break
;}
break
;}
case
316
:
case
316
:
#line 16
09
"c-parse.y"
#line 16
10
"c-parse.y"
{
yyval
.
filename
=
input_filename
;
;
{
yyval
.
filename
=
input_filename
;
;
break
;}
break
;}
case
317
:
case
317
:
#line 161
3
"c-parse.y"
#line 161
4
"c-parse.y"
{
yyval
.
lineno
=
lineno
;
;
{
yyval
.
lineno
=
lineno
;
;
break
;}
break
;}
case
318
:
case
318
:
#line 161
8
"c-parse.y"
#line 161
9
"c-parse.y"
{
;
{
;
break
;}
break
;}
case
319
:
case
319
:
#line 162
3
"c-parse.y"
#line 162
4
"c-parse.y"
{
;
{
;
break
;}
break
;}
case
320
:
case
320
:
#line 162
8
"c-parse.y"
#line 162
9
"c-parse.y"
{
yyval
.
ends_in_label
=
yyvsp
[
0
].
ends_in_label
;
;
{
yyval
.
ends_in_label
=
yyvsp
[
0
].
ends_in_label
;
;
break
;}
break
;}
case
321
:
case
321
:
#line 163
3
"c-parse.y"
#line 163
4
"c-parse.y"
{
yyval
.
ends_in_label
=
0
;
;
{
yyval
.
ends_in_label
=
0
;
;
break
;}
break
;}
case
322
:
case
322
:
#line 163
5
"c-parse.y"
#line 163
6
"c-parse.y"
{
yyval
.
ends_in_label
=
1
;
;
{
yyval
.
ends_in_label
=
1
;
;
break
;}
break
;}
case
323
:
case
323
:
#line 164
1
"c-parse.y"
#line 164
2
"c-parse.y"
{
stmt_count
++
;
;
{
stmt_count
++
;
;
break
;}
break
;}
case
325
:
case
325
:
#line 164
4
"c-parse.y"
#line 164
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
);
/* 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
...
@@ -3119,19 +3120,19 @@ case 325:
...
@@ -3119,19 +3120,19 @@ case 325:
clear_momentary
();
;
clear_momentary
();
;
break
;}
break
;}
case
326
:
case
326
:
#line 166
1
"c-parse.y"
#line 166
2
"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
327
:
case
327
:
#line 166
5
"c-parse.y"
#line 166
6
"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
328
:
case
328
:
#line 16
69
"c-parse.y"
#line 16
70
"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
...
@@ -3142,11 +3143,11 @@ case 328:
...
@@ -3142,11 +3143,11 @@ case 328:
"empty body in an if-statement"
);
;
"empty body in an if-statement"
);
;
break
;}
break
;}
case
329
:
case
329
:
#line 168
1
"c-parse.y"
#line 168
2
"c-parse.y"
{
c_expand_end_cond
();
;
{
c_expand_end_cond
();
;
break
;}
break
;}
case
330
:
case
330
:
#line 168
3
"c-parse.y"
#line 168
4
"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,
...
@@ -3158,7 +3159,7 @@ case 330:
...
@@ -3158,7 +3159,7 @@ case 330:
emit_nop
();
;
emit_nop
();
;
break
;}
break
;}
case
331
:
case
331
:
#line 169
3
"c-parse.y"
#line 169
4
"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. */
...
@@ -3169,11 +3170,11 @@ case 331:
...
@@ -3169,11 +3170,11 @@ case 331:
position_after_white_space
();
;
position_after_white_space
();
;
break
;}
break
;}
case
332
:
case
332
:
#line 170
2
"c-parse.y"
#line 170
3
"c-parse.y"
{
expand_end_loop
();
;
{
expand_end_loop
();
;
break
;}
break
;}
case
333
:
case
333
:
#line 170
5
"c-parse.y"
#line 170
6
"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
));
...
@@ -3181,12 +3182,12 @@ case 333:
...
@@ -3181,12 +3182,12 @@ case 333:
clear_momentary
();
;
clear_momentary
();
;
break
;}
break
;}
case
334
:
case
334
:
#line 171
2
"c-parse.y"
#line 171
3
"c-parse.y"
{
expand_end_loop
();
{
expand_end_loop
();
clear_momentary
();
;
clear_momentary
();
;
break
;}
break
;}
case
335
:
case
335
:
#line 171
6
"c-parse.y"
#line 171
7
"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. */
...
@@ -3199,12 +3200,12 @@ case 335:
...
@@ -3199,12 +3200,12 @@ case 335:
;
;
break
;}
break
;}
case
336
:
case
336
:
#line 172
8
"c-parse.y"
#line 172
9
"c-parse.y"
{
yyvsp
[
0
].
lineno
=
lineno
;
{
yyvsp
[
0
].
lineno
=
lineno
;
yyval
.
filename
=
input_filename
;
;
yyval
.
filename
=
input_filename
;
;
break
;}
break
;}
case
337
:
case
337
:
#line 173
1
"c-parse.y"
#line 173
2
"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. */
...
@@ -3222,7 +3223,7 @@ case 337:
...
@@ -3222,7 +3223,7 @@ case 337:
position_after_white_space
();
;
position_after_white_space
();
;
break
;}
break
;}
case
338
:
case
338
:
#line 174
7
"c-parse.y"
#line 174
8
"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
();
...
@@ -3235,7 +3236,7 @@ case 338:
...
@@ -3235,7 +3236,7 @@ case 338:
expand_end_loop
();
;
expand_end_loop
();
;
break
;}
break
;}
case
339
:
case
339
:
#line 175
8
"c-parse.y"
#line 175
9
"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
);
...
@@ -3245,7 +3246,7 @@ case 339:
...
@@ -3245,7 +3246,7 @@ case 339:
position_after_white_space
();
;
position_after_white_space
();
;
break
;}
break
;}
case
340
:
case
340
:
#line 176
6
"c-parse.y"
#line 176
7
"c-parse.y"
{
expand_end_case
(
yyvsp
[
-
3
].
ttype
);
{
expand_end_case
(
yyvsp
[
-
3
].
ttype
);
if
(
yychar
==
CONSTANT
||
yychar
==
STRING
)
if
(
yychar
==
CONSTANT
||
yychar
==
STRING
)
pop_momentary_nofree
();
pop_momentary_nofree
();
...
@@ -3253,33 +3254,33 @@ case 340:
...
@@ -3253,33 +3254,33 @@ case 340:
pop_momentary
();
;
pop_momentary
();
;
break
;}
break
;}
case
341
:
case
341
:
#line 177
2
"c-parse.y"
#line 177
3
"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
342
:
case
342
:
#line 177
7
"c-parse.y"
#line 177
8
"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
343
:
case
343
:
#line 178
2
"c-parse.y"
#line 178
3
"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
344
:
case
344
:
#line 178
6
"c-parse.y"
#line 178
7
"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
345
:
case
345
:
#line 179
0
"c-parse.y"
#line 179
1
"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
);
...
@@ -3291,7 +3292,7 @@ case 345:
...
@@ -3291,7 +3292,7 @@ case 345:
error
(
"argument of `asm' is not a constant string"
);
;
error
(
"argument of `asm' is not a constant string"
);
;
break
;}
break
;}
case
346
:
case
346
:
#line 180
1
"c-parse.y"
#line 180
2
"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
,
...
@@ -3299,7 +3300,7 @@ case 346:
...
@@ -3299,7 +3300,7 @@ case 346:
input_filename
,
lineno
);
;
input_filename
,
lineno
);
;
break
;}
break
;}
case
347
:
case
347
:
#line 180
8
"c-parse.y"
#line 180
9
"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
,
...
@@ -3307,7 +3308,7 @@ case 347:
...
@@ -3307,7 +3308,7 @@ case 347:
input_filename
,
lineno
);
;
input_filename
,
lineno
);
;
break
;}
break
;}
case
348
:
case
348
:
#line 181
6
"c-parse.y"
#line 181
7
"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
,
...
@@ -3315,7 +3316,7 @@ case 348:
...
@@ -3315,7 +3316,7 @@ case 348:
input_filename
,
lineno
);
;
input_filename
,
lineno
);
;
break
;}
break
;}
case
349
:
case
349
:
#line 182
2
"c-parse.y"
#line 182
3
"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
);
...
@@ -3328,7 +3329,7 @@ case 349:
...
@@ -3328,7 +3329,7 @@ case 349:
;
;
break
;}
break
;}
case
350
:
case
350
:
#line 183
3
"c-parse.y"
#line 183
4
"c-parse.y"
{
if
(
pedantic
)
{
if
(
pedantic
)
pedwarn
(
"ANSI C forbids `goto *expr;'"
);
pedwarn
(
"ANSI C forbids `goto *expr;'"
);
stmt_count
++
;
stmt_count
++
;
...
@@ -3336,7 +3337,7 @@ case 350:
...
@@ -3336,7 +3337,7 @@ case 350:
expand_computed_goto
(
convert
(
ptr_type_node
,
yyvsp
[
-
1
].
ttype
));
;
expand_computed_goto
(
convert
(
ptr_type_node
,
yyvsp
[
-
1
].
ttype
));
;
break
;}
break
;}
case
353
:
case
353
:
#line 184
8
"c-parse.y"
#line 184
9
"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 */
...
@@ -3359,14 +3360,14 @@ case 353:
...
@@ -3359,14 +3360,14 @@ case 353:
;
;
break
;}
break
;}
case
354
:
case
354
:
#line 18
69
"c-parse.y"
#line 18
70
"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
355
:
case
355
:
#line 190
4
"c-parse.y"
#line 190
5
"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
);
...
@@ -3399,7 +3400,7 @@ case 355:
...
@@ -3399,7 +3400,7 @@ case 355:
position_after_white_space
();
;
position_after_white_space
();
;
break
;}
break
;}
case
356
:
case
356
:
#line 193
5
"c-parse.y"
#line 193
6
"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
...
@@ -3432,7 +3433,7 @@ case 356:
...
@@ -3432,7 +3433,7 @@ case 356:
position_after_white_space
();
;
position_after_white_space
();
;
break
;}
break
;}
case
357
:
case
357
:
#line 196
6
"c-parse.y"
#line 196
7
"c-parse.y"
{
{
tree
duplicate
;
tree
duplicate
;
register
tree
label
register
tree
label
...
@@ -3449,7 +3450,7 @@ case 357:
...
@@ -3449,7 +3450,7 @@ case 357:
position_after_white_space
();
;
position_after_white_space
();
;
break
;}
break
;}
case
358
:
case
358
:
#line 198
1
"c-parse.y"
#line 198
2
"c-parse.y"
{
tree
label
=
define_label
(
input_filename
,
lineno
,
yyvsp
[
-
1
].
ttype
);
{
tree
label
=
define_label
(
input_filename
,
lineno
,
yyvsp
[
-
1
].
ttype
);
stmt_count
++
;
stmt_count
++
;
emit_nop
();
emit_nop
();
...
@@ -3458,52 +3459,52 @@ case 358:
...
@@ -3458,52 +3459,52 @@ case 358:
position_after_white_space
();
;
position_after_white_space
();
;
break
;}
break
;}
case
359
:
case
359
:
#line 199
3
"c-parse.y"
#line 199
4
"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
360
:
case
360
:
#line 199
6
"c-parse.y"
#line 199
7
"c-parse.y"
{
emit_line_note
(
input_filename
,
lineno
);
;
{
emit_line_note
(
input_filename
,
lineno
);
;
break
;}
break
;}
case
361
:
case
361
:
#line 200
1
"c-parse.y"
#line 200
2
"c-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
363
:
case
363
:
#line 200
8
"c-parse.y"
#line 200
9
"c-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
366
:
case
366
:
#line 201
5
"c-parse.y"
#line 201
6
"c-parse.y"
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
367
:
case
367
:
#line 202
0
"c-parse.y"
#line 202
1
"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
368
:
case
368
:
#line 202
5
"c-parse.y"
#line 202
6
"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
369
:
case
369
:
#line 202
7
"c-parse.y"
#line 202
8
"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
370
:
case
370
:
#line 203
3
"c-parse.y"
#line 203
4
"c-parse.y"
{
pushlevel
(
0
);
{
pushlevel
(
0
);
clear_parm_order
();
clear_parm_order
();
declare_parm_level
(
0
);
;
declare_parm_level
(
0
);
;
break
;}
break
;}
case
371
:
case
371
:
#line 203
7
"c-parse.y"
#line 203
8
"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
373
:
case
373
:
#line 204
5
"c-parse.y"
#line 204
6
"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"
);
...
@@ -3513,19 +3514,19 @@ case 373:
...
@@ -3513,19 +3514,19 @@ case 373:
clear_parm_order
();
;
clear_parm_order
();
;
break
;}
break
;}
case
374
:
case
374
:
#line 205
3
"c-parse.y"
#line 205
4
"c-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
375
:
case
375
:
#line 205
5
"c-parse.y"
#line 205
6
"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
376
:
case
376
:
#line 206
1
"c-parse.y"
#line 206
2
"c-parse.y"
{
yyval
.
ttype
=
get_parm_info
(
0
);
;
{
yyval
.
ttype
=
get_parm_info
(
0
);
;
break
;}
break
;}
case
377
:
case
377
:
#line 206
3
"c-parse.y"
#line 206
4
"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.
...
@@ -3537,23 +3538,23 @@ case 377:
...
@@ -3537,23 +3538,23 @@ case 377:
;
;
break
;}
break
;}
case
378
:
case
378
:
#line 207
3
"c-parse.y"
#line 207
4
"c-parse.y"
{
yyval
.
ttype
=
get_parm_info
(
1
);
;
{
yyval
.
ttype
=
get_parm_info
(
1
);
;
break
;}
break
;}
case
379
:
case
379
:
#line 207
5
"c-parse.y"
#line 207
6
"c-parse.y"
{
yyval
.
ttype
=
get_parm_info
(
0
);
;
{
yyval
.
ttype
=
get_parm_info
(
0
);
;
break
;}
break
;}
case
380
:
case
380
:
#line 208
0
"c-parse.y"
#line 208
1
"c-parse.y"
{
push_parm_decl
(
yyvsp
[
0
].
ttype
);
;
{
push_parm_decl
(
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
381
:
case
381
:
#line 208
2
"c-parse.y"
#line 208
3
"c-parse.y"
{
push_parm_decl
(
yyvsp
[
0
].
ttype
);
;
{
push_parm_decl
(
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
382
:
case
382
:
#line 20
89
"c-parse.y"
#line 20
90
"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
,
...
@@ -3564,7 +3565,7 @@ case 382:
...
@@ -3564,7 +3565,7 @@ case 382:
resume_momentary
(
yyvsp
[
-
2
].
itype
);
;
resume_momentary
(
yyvsp
[
-
2
].
itype
);
;
break
;}
break
;}
case
383
:
case
383
:
#line 209
8
"c-parse.y"
#line 209
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
,
...
@@ -3575,7 +3576,7 @@ case 383:
...
@@ -3575,7 +3576,7 @@ case 383:
resume_momentary
(
yyvsp
[
-
2
].
itype
);
;
resume_momentary
(
yyvsp
[
-
2
].
itype
);
;
break
;}
break
;}
case
384
:
case
384
:
#line 210
7
"c-parse.y"
#line 210
8
"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
,
...
@@ -3586,7 +3587,7 @@ case 384:
...
@@ -3586,7 +3587,7 @@ case 384:
resume_momentary
(
yyvsp
[
-
2
].
itype
);
;
resume_momentary
(
yyvsp
[
-
2
].
itype
);
;
break
;}
break
;}
case
385
:
case
385
:
#line 211
6
"c-parse.y"
#line 211
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
,
...
@@ -3597,7 +3598,7 @@ case 385:
...
@@ -3597,7 +3598,7 @@ case 385:
resume_momentary
(
yyvsp
[
-
2
].
itype
);
;
resume_momentary
(
yyvsp
[
-
2
].
itype
);
;
break
;}
break
;}
case
386
:
case
386
:
#line 212
6
"c-parse.y"
#line 212
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
,
...
@@ -3608,19 +3609,19 @@ case 386:
...
@@ -3608,19 +3609,19 @@ case 386:
resume_momentary
(
yyvsp
[
-
2
].
itype
);
;
resume_momentary
(
yyvsp
[
-
2
].
itype
);
;
break
;}
break
;}
case
387
:
case
387
:
#line 214
0
"c-parse.y"
#line 214
1
"c-parse.y"
{
pushlevel
(
0
);
{
pushlevel
(
0
);
clear_parm_order
();
clear_parm_order
();
declare_parm_level
(
1
);
;
declare_parm_level
(
1
);
;
break
;}
break
;}
case
388
:
case
388
:
#line 214
4
"c-parse.y"
#line 214
5
"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
390
:
case
390
:
#line 215
2
"c-parse.y"
#line 215
3
"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
)
...
@@ -3628,23 +3629,23 @@ case 390:
...
@@ -3628,23 +3629,23 @@ case 390:
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
391
:
case
391
:
#line 216
2
"c-parse.y"
#line 216
3
"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
392
:
case
392
:
#line 216
4
"c-parse.y"
#line 216
5
"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
393
:
case
393
:
#line 217
0
"c-parse.y"
#line 217
1
"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
394
:
case
394
:
#line 217
2
"c-parse.y"
#line 217
3
"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
395
:
case
395
:
#line 217
7
"c-parse.y"
#line 217
8
"c-parse.y"
{
yyval
.
itype
=
pedantic
;
{
yyval
.
itype
=
pedantic
;
pedantic
=
0
;
;
pedantic
=
0
;
;
break
;}
break
;}
...
@@ -3846,5 +3847,5 @@ yyerrhandle:
...
@@ -3846,5 +3847,5 @@ yyerrhandle:
yystate
=
yyn
;
yystate
=
yyn
;
goto
yynewstate
;
goto
yynewstate
;
}
}
#line 218
1
"c-parse.y"
#line 218
2
"c-parse.y"
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