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
01656b25
Commit
01656b25
authored
Apr 26, 1999
by
Richard Henderson
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Update.
From-SVN: r26649
parent
5dadc304
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
447 additions
and
427 deletions
+447
-427
gcc/objc/objc-parse.c
+432
-422
gcc/objc/objc-parse.y
+15
-5
No files found.
gcc/objc/objc-parse.c
View file @
01656b25
...
@@ -438,55 +438,55 @@ static const short yyrline[] = { 0,
...
@@ -438,55 +438,55 @@ static const short yyrline[] = { 0,
410
,
414
,
442
,
448
,
451
,
454
,
457
,
459
,
463
,
467
,
410
,
414
,
442
,
448
,
451
,
454
,
457
,
459
,
463
,
467
,
471
,
473
,
476
,
480
,
507
,
509
,
511
,
513
,
515
,
517
,
471
,
473
,
476
,
480
,
507
,
509
,
511
,
513
,
515
,
517
,
519
,
521
,
523
,
525
,
527
,
529
,
531
,
533
,
537
,
539
,
519
,
521
,
523
,
525
,
527
,
529
,
531
,
533
,
537
,
539
,
543
,
545
,
548
,
552
,
554
,
561
,
564
,
5
67
,
573
,
73
3
,
543
,
545
,
548
,
552
,
554
,
561
,
564
,
5
72
,
583
,
74
3
,
7
34
,
736
,
742
,
744
,
758
,
781
,
783
,
785
,
797
,
81
1
,
7
44
,
746
,
752
,
754
,
768
,
791
,
793
,
795
,
807
,
82
1
,
8
13
,
815
,
817
,
819
,
821
,
823
,
828
,
830
,
836
,
83
8
,
8
23
,
825
,
827
,
829
,
831
,
833
,
838
,
840
,
846
,
84
8
,
8
42
,
844
,
845
,
855
,
860
,
862
,
863
,
864
,
871
,
87
7
,
8
52
,
854
,
855
,
865
,
870
,
872
,
873
,
874
,
881
,
88
7
,
8
82
,
885
,
893
,
898
,
900
,
901
,
902
,
909
,
920
,
92
4
,
8
92
,
895
,
903
,
908
,
910
,
911
,
912
,
919
,
930
,
93
4
,
9
30
,
935
,
940
,
945
,
947
,
949
,
958
,
961
,
965
,
96
7
,
9
40
,
945
,
950
,
955
,
957
,
959
,
968
,
971
,
975
,
97
7
,
9
69
,
974
,
978
,
981
,
985
,
988
,
990
,
1002
,
1005
,
100
7
,
9
79
,
984
,
988
,
991
,
995
,
998
,
1000
,
1012
,
1015
,
101
7
,
10
09
,
1013
,
1017
,
1019
,
1022
,
1035
,
1038
,
1042
,
1044
,
105
2
,
10
19
,
1023
,
1027
,
1029
,
1032
,
1045
,
1048
,
1052
,
1054
,
106
2
,
10
53
,
1054
,
1058
,
1060
,
1065
,
1067
,
1069
,
1075
,
1076
,
107
7
,
10
63
,
1064
,
1068
,
1070
,
1075
,
1077
,
1079
,
1085
,
1086
,
108
7
,
10
80
,
1082
,
1085
,
1087
,
1090
,
1093
,
1099
,
1106
,
1108
,
111
5
,
10
90
,
1092
,
1095
,
1097
,
1100
,
1103
,
1109
,
1116
,
1118
,
112
5
,
11
22
,
1125
,
1132
,
1135
,
1139
,
1142
,
1146
,
1151
,
1154
,
115
8
,
11
32
,
1135
,
1142
,
1145
,
1149
,
1152
,
1156
,
1161
,
1164
,
116
8
,
11
61
,
1163
,
1165
,
1167
,
1174
,
1176
,
1177
,
1178
,
1183
,
118
5
,
11
71
,
1173
,
1175
,
1177
,
1184
,
1186
,
1187
,
1188
,
1193
,
119
5
,
1
190
,
1198
,
1203
,
1207
,
1210
,
1212
,
1217
,
1219
,
1220
,
122
3
,
1
200
,
1208
,
1213
,
1217
,
1220
,
1222
,
1227
,
1229
,
1230
,
123
3
,
12
23
,
1226
,
1229
,
1231
,
1233
,
1236
,
1238
,
1241
,
1249
,
126
0
,
12
33
,
1236
,
1239
,
1241
,
1243
,
1246
,
1248
,
1251
,
1259
,
127
0
,
12
68
,
1272
,
1283
,
1291
,
1298
,
1300
,
1305
,
1308
,
1313
,
131
5
,
12
78
,
1282
,
1293
,
1301
,
1308
,
1310
,
1315
,
1318
,
1323
,
132
5
,
13
17
,
1324
,
1326
,
1327
,
1335
,
1341
,
1343
,
1345
,
1352
,
135
4
,
13
27
,
1334
,
1336
,
1337
,
1345
,
1351
,
1353
,
1355
,
1362
,
136
4
,
13
60
,
1366
,
1368
,
1370
,
1372
,
1379
,
1381
,
1384
,
1387
,
139
1
,
13
70
,
1376
,
1378
,
1380
,
1382
,
1389
,
1391
,
1394
,
1397
,
140
1
,
1
394
,
1398
,
1401
,
1405
,
1410
,
1412
,
1416
,
1418
,
1420
,
142
2
,
1
404
,
1408
,
1411
,
1415
,
1420
,
1422
,
1426
,
1428
,
1430
,
143
2
,
14
26
,
1428
,
1431
,
1434
,
1437
,
1440
,
1444
,
1446
,
1449
,
145
1
,
14
36
,
1438
,
1441
,
1444
,
1447
,
1450
,
1454
,
1456
,
1459
,
146
1
,
14
56
,
1459
,
1464
,
1466
,
1468
,
1472
,
1496
,
1503
,
1508
,
151
4
,
14
66
,
1469
,
1474
,
1476
,
1478
,
1482
,
1506
,
1513
,
1518
,
152
4
,
15
19
,
1521
,
1526
,
1528
,
1532
,
1536
,
1540
,
1550
,
1552
,
155
7
,
15
29
,
1531
,
1536
,
1538
,
1542
,
1546
,
1550
,
1560
,
1562
,
156
7
,
15
62
,
1565
,
1569
,
1572
,
1576
,
1579
,
1582
,
1585
,
1589
,
159
2
,
15
72
,
1575
,
1579
,
1582
,
1586
,
1589
,
1592
,
1595
,
1599
,
160
2
,
1
596
,
1600
,
1602
,
1604
,
1606
,
1608
,
1610
,
1612
,
1614
,
162
4
,
1
606
,
1610
,
1612
,
1614
,
1616
,
1618
,
1620
,
1622
,
1624
,
163
4
,
16
32
,
1634
,
1636
,
1640
,
1642
,
1645
,
1648
,
1661
,
1663
,
166
8
,
16
42
,
1644
,
1646
,
1650
,
1652
,
1655
,
1658
,
1671
,
1673
,
167
8
,
16
70
,
1673
,
1687
,
1690
,
1693
,
1695
,
1697
,
1705
,
1713
,
172
4
,
16
80
,
1683
,
1697
,
1700
,
1703
,
1705
,
1707
,
1715
,
1723
,
173
4
,
17
29
,
1732
,
1746
,
1755
,
1759
,
1763
,
1767
,
1773
,
1777
,
178
2
,
17
39
,
1742
,
1756
,
1765
,
1769
,
1773
,
1777
,
1783
,
1787
,
179
2
,
17
85
,
1790
,
1793
,
1794
,
1811
,
1816
,
1819
,
1831
,
1833
,
184
3
,
17
95
,
1800
,
1803
,
1804
,
1821
,
1826
,
1829
,
1841
,
1843
,
185
3
,
18
53
,
1854
,
1862
,
1865
,
1877
,
1881
,
1898
,
1908
,
1917
,
192
2
,
18
63
,
1864
,
1872
,
1875
,
1887
,
1891
,
1908
,
1918
,
1927
,
193
2
,
19
27
,
1932
,
1936
,
1940
,
1951
,
1958
,
1965
,
1972
,
1983
,
198
9
,
19
37
,
1942
,
1946
,
1950
,
1961
,
1968
,
1975
,
1982
,
1993
,
199
9
,
1992
,
1997
,
2020
,
2054
,
2085
,
2116
,
2131
,
2145
,
2149
,
215
3
,
2002
,
2007
,
2030
,
2064
,
2095
,
2126
,
2141
,
2155
,
2159
,
216
3
,
21
56
,
2161
,
2163
,
2166
,
2168
,
2172
,
2177
,
2180
,
2186
,
219
1
,
21
66
,
2171
,
2173
,
2176
,
2178
,
2182
,
2187
,
2190
,
2196
,
220
1
,
2
196
,
2198
,
2207
,
2208
,
2214
,
2216
,
2226
,
2228
,
2232
,
223
5
,
2
206
,
2208
,
2217
,
2218
,
2224
,
2226
,
2236
,
2238
,
2242
,
224
5
,
22
41
,
2251
,
2260
,
2269
,
2279
,
2293
,
2298
,
2303
,
2305
,
231
4
,
22
51
,
2261
,
2270
,
2279
,
2289
,
2303
,
2308
,
2313
,
2315
,
232
4
,
23
17
,
2322
,
2325
,
2329
,
2337
,
2339
,
2340
,
2341
,
2342
,
234
3
,
23
27
,
2332
,
2335
,
2339
,
2347
,
2349
,
2350
,
2351
,
2352
,
235
3
,
23
57
,
2360
,
2364
,
2370
,
2376
,
2383
,
2388
,
2394
,
2401
,
240
7
,
23
67
,
2370
,
2374
,
2380
,
2386
,
2393
,
2398
,
2404
,
2411
,
241
7
,
24
13
,
2418
,
2424
,
2431
,
2437
,
2443
,
2449
,
2457
,
2463
,
246
9
,
24
23
,
2428
,
2434
,
2441
,
2447
,
2453
,
2459
,
2467
,
2473
,
247
9
,
24
77
,
2484
,
2490
,
2499
,
2506
,
2514
,
2519
,
2522
,
2532
,
253
4
,
24
87
,
2494
,
2500
,
2509
,
2516
,
2524
,
2529
,
2532
,
2542
,
254
4
,
25
37
,
2539
,
2540
,
2543
,
2548
,
2549
,
2566
,
2573
,
2579
,
258
3
,
25
47
,
2549
,
2550
,
2553
,
2558
,
2559
,
2576
,
2583
,
2589
,
259
3
,
25
86
,
2587
,
2590
,
2598
,
2604
,
2613
,
2623
,
2630
,
2634
,
263
9
,
25
96
,
2597
,
2600
,
2608
,
2614
,
2623
,
2633
,
2640
,
2644
,
264
9
,
26
48
,
2655
,
2659
,
2669
,
2671
,
2672
,
2674
,
2676
,
2677
,
267
8
,
26
58
,
2665
,
2669
,
2679
,
2681
,
2682
,
2684
,
2686
,
2687
,
268
8
,
26
79
,
2681
,
2683
,
2686
,
2694
,
2701
,
2701
,
2708
,
2714
,
271
6
,
26
89
,
2691
,
2693
,
2696
,
2704
,
2711
,
2711
,
2718
,
2724
,
272
6
,
27
22
,
2727
,
2732
,
2741
,
2743
,
2749
,
2751
,
2754
,
2756
,
275
7
,
27
32
,
2737
,
2742
,
2751
,
2753
,
2759
,
2761
,
2764
,
2766
,
276
7
,
27
58
,
2761
,
2767
,
2769
,
2773
,
2776
,
2783
,
2789
,
2794
,
280
1
,
27
68
,
2771
,
2777
,
2779
,
2783
,
2786
,
2793
,
2799
,
2804
,
281
1
,
28
06
,
2811
,
2816
,
2823
,
2827
,
2830
,
2836
,
2838
,
2839
,
284
0
,
28
16
,
2821
,
2826
,
2833
,
2837
,
2840
,
2846
,
2848
,
2849
,
285
0
,
28
43
,
2845
,
2846
,
2847
,
2848
,
2849
,
2850
,
2851
,
2852
,
285
3
,
28
53
,
2855
,
2856
,
2857
,
2858
,
2859
,
2860
,
2861
,
2862
,
286
3
,
28
54
,
2855
,
2856
,
2857
,
2858
,
2859
,
2860
,
2861
,
2862
,
286
3
,
28
64
,
2865
,
2866
,
2867
,
2868
,
2869
,
2870
,
2871
,
2872
,
287
3
,
28
63
,
2866
,
2872
,
2877
,
2882
,
2888
,
2890
,
2893
,
2895
,
290
2
,
28
73
,
2876
,
2882
,
2887
,
2892
,
2898
,
2900
,
2903
,
2905
,
291
2
,
29
14
,
2919
,
2925
,
2927
,
2933
,
2937
,
2938
,
2944
,
2946
,
294
9
,
29
24
,
2929
,
2935
,
2937
,
2943
,
2947
,
2948
,
2954
,
2956
,
295
9
,
29
51
,
2957
,
2962
,
2968
,
2975
,
298
4
29
61
,
2967
,
2972
,
2978
,
2985
,
299
4
};
};
#endif
#endif
...
@@ -2559,17 +2559,27 @@ case 86:
...
@@ -2559,17 +2559,27 @@ case 86:
break
;}
break
;}
case
87
:
case
87
:
#line 565 "objc-parse.y"
#line 565 "objc-parse.y"
{
yyval
.
ttype
=
build_modify_expr
(
yyvsp
[
-
2
].
ttype
,
NOP_EXPR
,
yyvsp
[
0
].
ttype
);
{
char
class
;
C_SET_EXP_ORIGINAL_CODE
(
yyval
.
ttype
,
MODIFY_EXPR
);
;
yyval
.
ttype
=
build_modify_expr
(
yyvsp
[
-
2
].
ttype
,
NOP_EXPR
,
yyvsp
[
0
].
ttype
);
class
=
TREE_CODE_CLASS
(
TREE_CODE
(
yyval
.
ttype
));
if
(
class
==
'e'
||
class
==
'1'
||
class
==
'2'
||
class
==
'<'
)
C_SET_EXP_ORIGINAL_CODE
(
yyval
.
ttype
,
MODIFY_EXPR
);
;
break
;}
break
;}
case
88
:
case
88
:
#line 568 "objc-parse.y"
#line 573 "objc-parse.y"
{
yyval
.
ttype
=
build_modify_expr
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
-
1
].
code
,
yyvsp
[
0
].
ttype
);
{
char
class
;
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
);
;
class
=
TREE_CODE_CLASS
(
TREE_CODE
(
yyval
.
ttype
));
if
(
class
==
'e'
||
class
==
'1'
||
class
==
'2'
||
class
==
'<'
)
C_SET_EXP_ORIGINAL_CODE
(
yyval
.
ttype
,
ERROR_MARK
);
;
break
;}
break
;}
case
89
:
case
89
:
#line 5
7
5 "objc-parse.y"
#line 5
8
5 "objc-parse.y"
{
{
yyval
.
ttype
=
lastiddecl
;
yyval
.
ttype
=
lastiddecl
;
if
(
!
yyval
.
ttype
||
yyval
.
ttype
==
error_mark_node
)
if
(
!
yyval
.
ttype
||
yyval
.
ttype
==
error_mark_node
)
...
@@ -2730,11 +2740,11 @@ case 89:
...
@@ -2730,11 +2740,11 @@ case 89:
;
;
break
;}
break
;}
case
91
:
case
91
:
#line 7
3
5 "objc-parse.y"
#line 7
4
5 "objc-parse.y"
{
yyval
.
ttype
=
combine_strings
(
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
combine_strings
(
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
92
:
case
92
:
#line 7
3
7 "objc-parse.y"
#line 7
4
7 "objc-parse.y"
{
char
class
=
TREE_CODE_CLASS
(
TREE_CODE
(
yyvsp
[
-
1
].
ttype
));
{
char
class
=
TREE_CODE_CLASS
(
TREE_CODE
(
yyvsp
[
-
1
].
ttype
));
if
(
class
==
'e'
||
class
==
'1'
if
(
class
==
'e'
||
class
==
'1'
||
class
==
'2'
||
class
==
'<'
)
||
class
==
'2'
||
class
==
'<'
)
...
@@ -2742,11 +2752,11 @@ case 92:
...
@@ -2742,11 +2752,11 @@ case 92:
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
;
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
;
break
;}
break
;}
case
93
:
case
93
:
#line 7
4
3 "objc-parse.y"
#line 7
5
3 "objc-parse.y"
{
yyval
.
ttype
=
error_mark_node
;
;
{
yyval
.
ttype
=
error_mark_node
;
;
break
;}
break
;}
case
94
:
case
94
:
#line 7
4
5 "objc-parse.y"
#line 7
5
5 "objc-parse.y"
{
if
(
current_function_decl
==
0
)
{
if
(
current_function_decl
==
0
)
{
{
error
(
"braced-group within expression allowed only inside a function"
);
error
(
"braced-group within expression allowed only inside a function"
);
...
@@ -2762,7 +2772,7 @@ case 94:
...
@@ -2762,7 +2772,7 @@ case 94:
yyval
.
ttype
=
expand_start_stmt_expr
();
;
yyval
.
ttype
=
expand_start_stmt_expr
();
;
break
;}
break
;}
case
95
:
case
95
:
#line 7
5
9 "objc-parse.y"
#line 7
6
9 "objc-parse.y"
{
tree
rtl_exp
;
{
tree
rtl_exp
;
if
(
pedantic
)
if
(
pedantic
)
pedwarn
(
"ANSI C forbids braced-groups within expressions"
);
pedwarn
(
"ANSI C forbids braced-groups within expressions"
);
...
@@ -2787,15 +2797,15 @@ case 95:
...
@@ -2787,15 +2797,15 @@ case 95:
;
;
break
;}
break
;}
case
96
:
case
96
:
#line 7
8
2 "objc-parse.y"
#line 7
9
2 "objc-parse.y"
{
yyval
.
ttype
=
build_function_call
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
build_function_call
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
97
:
case
97
:
#line 7
8
4 "objc-parse.y"
#line 7
9
4 "objc-parse.y"
{
yyval
.
ttype
=
build_array_ref
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
build_array_ref
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
98
:
case
98
:
#line 7
8
6 "objc-parse.y"
#line 7
9
6 "objc-parse.y"
{
{
if
(
doing_objc_thang
)
if
(
doing_objc_thang
)
{
{
...
@@ -2809,7 +2819,7 @@ case 98:
...
@@ -2809,7 +2819,7 @@ case 98:
;
;
break
;}
break
;}
case
99
:
case
99
:
#line
79
8 "objc-parse.y"
#line
80
8 "objc-parse.y"
{
{
tree
expr
=
build_indirect_ref
(
yyvsp
[
-
2
].
ttype
,
"->"
);
tree
expr
=
build_indirect_ref
(
yyvsp
[
-
2
].
ttype
,
"->"
);
...
@@ -2825,80 +2835,80 @@ case 99:
...
@@ -2825,80 +2835,80 @@ case 99:
;
;
break
;}
break
;}
case
100
:
case
100
:
#line 8
1
2 "objc-parse.y"
#line 8
2
2 "objc-parse.y"
{
yyval
.
ttype
=
build_unary_op
(
POSTINCREMENT_EXPR
,
yyvsp
[
-
1
].
ttype
,
0
);
;
{
yyval
.
ttype
=
build_unary_op
(
POSTINCREMENT_EXPR
,
yyvsp
[
-
1
].
ttype
,
0
);
;
break
;}
break
;}
case
101
:
case
101
:
#line 8
1
4 "objc-parse.y"
#line 8
2
4 "objc-parse.y"
{
yyval
.
ttype
=
build_unary_op
(
POSTDECREMENT_EXPR
,
yyvsp
[
-
1
].
ttype
,
0
);
;
{
yyval
.
ttype
=
build_unary_op
(
POSTDECREMENT_EXPR
,
yyvsp
[
-
1
].
ttype
,
0
);
;
break
;}
break
;}
case
102
:
case
102
:
#line 8
1
6 "objc-parse.y"
#line 8
2
6 "objc-parse.y"
{
yyval
.
ttype
=
build_message_expr
(
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
build_message_expr
(
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
103
:
case
103
:
#line 8
1
8 "objc-parse.y"
#line 8
2
8 "objc-parse.y"
{
yyval
.
ttype
=
build_selector_expr
(
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
build_selector_expr
(
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
104
:
case
104
:
#line 8
2
0 "objc-parse.y"
#line 8
3
0 "objc-parse.y"
{
yyval
.
ttype
=
build_protocol_expr
(
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
build_protocol_expr
(
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
105
:
case
105
:
#line 8
2
2 "objc-parse.y"
#line 8
3
2 "objc-parse.y"
{
yyval
.
ttype
=
build_encode_expr
(
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
build_encode_expr
(
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
106
:
case
106
:
#line 8
2
4 "objc-parse.y"
#line 8
3
4 "objc-parse.y"
{
yyval
.
ttype
=
build_objc_string_object
(
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
build_objc_string_object
(
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
108
:
case
108
:
#line 8
3
1 "objc-parse.y"
#line 8
4
1 "objc-parse.y"
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
110
:
case
110
:
#line 8
3
9 "objc-parse.y"
#line 8
4
9 "objc-parse.y"
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
113
:
case
113
:
#line 8
4
7 "objc-parse.y"
#line 8
5
7 "objc-parse.y"
{
c_mark_varargs
();
{
c_mark_varargs
();
if
(
pedantic
)
if
(
pedantic
)
pedwarn
(
"ANSI C does not permit use of `varargs.h'"
);
;
pedwarn
(
"ANSI C does not permit use of `varargs.h'"
);
;
break
;}
break
;}
case
114
:
case
114
:
#line 8
5
7 "objc-parse.y"
#line 8
6
7 "objc-parse.y"
{
;
{
;
break
;}
break
;}
case
119
:
case
119
:
#line 8
7
3 "objc-parse.y"
#line 8
8
3 "objc-parse.y"
{
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
{
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
resume_momentary
(
yyvsp
[
-
2
].
itype
);
;
resume_momentary
(
yyvsp
[
-
2
].
itype
);
;
break
;}
break
;}
case
120
:
case
120
:
#line 8
7
8 "objc-parse.y"
#line 8
8
8 "objc-parse.y"
{
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
{
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
resume_momentary
(
yyvsp
[
-
2
].
itype
);
;
resume_momentary
(
yyvsp
[
-
2
].
itype
);
;
break
;}
break
;}
case
121
:
case
121
:
#line 8
8
3 "objc-parse.y"
#line 8
9
3 "objc-parse.y"
{
shadow_tag_warned
(
yyvsp
[
-
1
].
ttype
,
1
);
{
shadow_tag_warned
(
yyvsp
[
-
1
].
ttype
,
1
);
pedwarn
(
"empty declaration"
);
;
pedwarn
(
"empty declaration"
);
;
break
;}
break
;}
case
122
:
case
122
:
#line 8
8
6 "objc-parse.y"
#line 8
9
6 "objc-parse.y"
{
pedwarn
(
"empty declaration"
);
;
{
pedwarn
(
"empty declaration"
);
;
break
;}
break
;}
case
123
:
case
123
:
#line
89
5 "objc-parse.y"
#line
90
5 "objc-parse.y"
{
;
{
;
break
;}
break
;}
case
128
:
case
128
:
#line 9
1
0 "objc-parse.y"
#line 9
2
0 "objc-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
,
...
@@ -2908,131 +2918,131 @@ case 128:
...
@@ -2908,131 +2918,131 @@ case 128:
&
current_declspecs
,
&
prefix_attributes
);
;
&
current_declspecs
,
&
prefix_attributes
);
;
break
;}
break
;}
case
129
:
case
129
:
#line 9
2
1 "objc-parse.y"
#line 9
3
1 "objc-parse.y"
{
prefix_attributes
=
chainon
(
prefix_attributes
,
yyvsp
[
0
].
ttype
);
;
{
prefix_attributes
=
chainon
(
prefix_attributes
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
130
:
case
130
:
#line 9
2
6 "objc-parse.y"
#line 9
3
6 "objc-parse.y"
{
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
{
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
resume_momentary
(
yyvsp
[
-
2
].
itype
);
;
resume_momentary
(
yyvsp
[
-
2
].
itype
);
;
break
;}
break
;}
case
131
:
case
131
:
#line 9
3
1 "objc-parse.y"
#line 9
4
1 "objc-parse.y"
{
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
{
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
resume_momentary
(
yyvsp
[
-
2
].
itype
);
;
resume_momentary
(
yyvsp
[
-
2
].
itype
);
;
break
;}
break
;}
case
132
:
case
132
:
#line 9
3
6 "objc-parse.y"
#line 9
4
6 "objc-parse.y"
{
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
{
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
resume_momentary
(
yyvsp
[
-
1
].
itype
);
;
resume_momentary
(
yyvsp
[
-
1
].
itype
);
;
break
;}
break
;}
case
133
:
case
133
:
#line 9
4
1 "objc-parse.y"
#line 9
5
1 "objc-parse.y"
{
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
{
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
resume_momentary
(
yyvsp
[
-
1
].
itype
);
;
resume_momentary
(
yyvsp
[
-
1
].
itype
);
;
break
;}
break
;}
case
134
:
case
134
:
#line 9
4
6 "objc-parse.y"
#line 9
5
6 "objc-parse.y"
{
shadow_tag
(
yyvsp
[
-
1
].
ttype
);
;
{
shadow_tag
(
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
135
:
case
135
:
#line 9
4
8 "objc-parse.y"
#line 9
5
8 "objc-parse.y"
{
pedwarn
(
"empty declaration"
);
;
{
pedwarn
(
"empty declaration"
);
;
break
;}
break
;}
case
136
:
case
136
:
#line 9
5
0 "objc-parse.y"
#line 9
6
0 "objc-parse.y"
{
pedantic
=
yyvsp
[
-
1
].
itype
;
;
{
pedantic
=
yyvsp
[
-
1
].
itype
;
;
break
;}
break
;}
case
137
:
case
137
:
#line 9
6
0 "objc-parse.y"
#line 9
7
0 "objc-parse.y"
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
138
:
case
138
:
#line 9
6
2 "objc-parse.y"
#line 9
7
2 "objc-parse.y"
{
yyval
.
ttype
=
chainon
(
yyvsp
[
0
].
ttype
,
tree_cons
(
NULL_TREE
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
-
2
].
ttype
));
;
{
yyval
.
ttype
=
chainon
(
yyvsp
[
0
].
ttype
,
tree_cons
(
NULL_TREE
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
-
2
].
ttype
));
;
break
;}
break
;}
case
139
:
case
139
:
#line 9
6
6 "objc-parse.y"
#line 9
7
6 "objc-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
140
:
case
140
:
#line 9
6
8 "objc-parse.y"
#line 9
7
8 "objc-parse.y"
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
141
:
case
141
:
#line 9
7
0 "objc-parse.y"
#line 9
8
0 "objc-parse.y"
{
if
(
extra_warnings
)
{
if
(
extra_warnings
)
warning
(
"`%s' is not at beginning of declaration"
,
warning
(
"`%s' is not at beginning of declaration"
,
IDENTIFIER_POINTER
(
yyvsp
[
0
].
ttype
));
IDENTIFIER_POINTER
(
yyvsp
[
0
].
ttype
));
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
142
:
case
142
:
#line 9
7
5 "objc-parse.y"
#line 9
8
5 "objc-parse.y"
{
yyval
.
ttype
=
tree_cons
(
yyvsp
[
0
].
ttype
,
NULL_TREE
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
tree_cons
(
yyvsp
[
0
].
ttype
,
NULL_TREE
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
143
:
case
143
:
#line 9
8
0 "objc-parse.y"
#line 9
9
0 "objc-parse.y"
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
144
:
case
144
:
#line 9
8
2 "objc-parse.y"
#line 9
9
2 "objc-parse.y"
{
yyval
.
ttype
=
chainon
(
yyvsp
[
0
].
ttype
,
tree_cons
(
NULL_TREE
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
-
2
].
ttype
));
;
{
yyval
.
ttype
=
chainon
(
yyvsp
[
0
].
ttype
,
tree_cons
(
NULL_TREE
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
-
2
].
ttype
));
;
break
;}
break
;}
case
145
:
case
145
:
#line 9
8
7 "objc-parse.y"
#line 9
9
7 "objc-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
146
:
case
146
:
#line 9
8
9 "objc-parse.y"
#line 9
9
9 "objc-parse.y"
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
147
:
case
147
:
#line
99
1 "objc-parse.y"
#line
100
1 "objc-parse.y"
{
if
(
extra_warnings
)
{
if
(
extra_warnings
)
warning
(
"`%s' is not at beginning of declaration"
,
warning
(
"`%s' is not at beginning of declaration"
,
IDENTIFIER_POINTER
(
yyvsp
[
0
].
ttype
));
IDENTIFIER_POINTER
(
yyvsp
[
0
].
ttype
));
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
148
:
case
148
:
#line 10
0
4 "objc-parse.y"
#line 10
1
4 "objc-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
149
:
case
149
:
#line 10
0
6 "objc-parse.y"
#line 10
1
6 "objc-parse.y"
{
yyval
.
ttype
=
tree_cons
(
yyvsp
[
0
].
ttype
,
NULL_TREE
,
NULL_TREE
);
;
{
yyval
.
ttype
=
tree_cons
(
yyvsp
[
0
].
ttype
,
NULL_TREE
,
NULL_TREE
);
;
break
;}
break
;}
case
150
:
case
150
:
#line 10
0
8 "objc-parse.y"
#line 10
1
8 "objc-parse.y"
{
yyval
.
ttype
=
chainon
(
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
chainon
(
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
151
:
case
151
:
#line 10
1
0 "objc-parse.y"
#line 10
2
0 "objc-parse.y"
{
yyval
.
ttype
=
tree_cons
(
yyvsp
[
0
].
ttype
,
NULL_TREE
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
tree_cons
(
yyvsp
[
0
].
ttype
,
NULL_TREE
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
152
:
case
152
:
#line 10
1
5 "objc-parse.y"
#line 10
2
5 "objc-parse.y"
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
NULL_TREE
);
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
NULL_TREE
);
TREE_STATIC
(
yyval
.
ttype
)
=
1
;
;
TREE_STATIC
(
yyval
.
ttype
)
=
1
;
;
break
;}
break
;}
case
153
:
case
153
:
#line 10
1
8 "objc-parse.y"
#line 10
2
8 "objc-parse.y"
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
break
;}
break
;}
case
154
:
case
154
:
#line 10
2
0 "objc-parse.y"
#line 10
3
0 "objc-parse.y"
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ttype
);
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ttype
);
TREE_STATIC
(
yyval
.
ttype
)
=
1
;
;
TREE_STATIC
(
yyval
.
ttype
)
=
1
;
;
break
;}
break
;}
case
155
:
case
155
:
#line 10
2
3 "objc-parse.y"
#line 10
3
3 "objc-parse.y"
{
if
(
extra_warnings
&&
TREE_STATIC
(
yyvsp
[
-
1
].
ttype
))
{
if
(
extra_warnings
&&
TREE_STATIC
(
yyvsp
[
-
1
].
ttype
))
warning
(
"`%s' is not at beginning of declaration"
,
warning
(
"`%s' is not at beginning of declaration"
,
IDENTIFIER_POINTER
(
yyvsp
[
0
].
ttype
));
IDENTIFIER_POINTER
(
yyvsp
[
0
].
ttype
));
...
@@ -3040,150 +3050,150 @@ case 155:
...
@@ -3040,150 +3050,150 @@ case 155:
TREE_STATIC
(
yyval
.
ttype
)
=
TREE_STATIC
(
yyvsp
[
-
1
].
ttype
);
;
TREE_STATIC
(
yyval
.
ttype
)
=
TREE_STATIC
(
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
156
:
case
156
:
#line 10
3
7 "objc-parse.y"
#line 10
4
7 "objc-parse.y"
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
157
:
case
157
:
#line 10
3
9 "objc-parse.y"
#line 10
4
9 "objc-parse.y"
{
yyval
.
ttype
=
chainon
(
yyvsp
[
0
].
ttype
,
tree_cons
(
NULL_TREE
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
-
2
].
ttype
));
;
{
yyval
.
ttype
=
chainon
(
yyvsp
[
0
].
ttype
,
tree_cons
(
NULL_TREE
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
-
2
].
ttype
));
;
break
;}
break
;}
case
158
:
case
158
:
#line 10
4
3 "objc-parse.y"
#line 10
5
3 "objc-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
159
:
case
159
:
#line 10
4
5 "objc-parse.y"
#line 10
5
5 "objc-parse.y"
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
162
:
case
162
:
#line 10
5
5 "objc-parse.y"
#line 10
6
5 "objc-parse.y"
{
/* For a typedef name, record the meaning, not the name.
{
/* For a typedef name, record the meaning, not the name.
In case of `foo foo, bar;'. */
In case of `foo foo, bar;'. */
yyval
.
ttype
=
lookup_name
(
yyvsp
[
0
].
ttype
);
;
yyval
.
ttype
=
lookup_name
(
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
163
:
case
163
:
#line 10
5
9 "objc-parse.y"
#line 10
6
9 "objc-parse.y"
{
yyval
.
ttype
=
get_static_reference
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
get_static_reference
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
164
:
case
164
:
#line 10
6
1 "objc-parse.y"
#line 10
7
1 "objc-parse.y"
{
yyval
.
ttype
=
get_object_reference
(
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
get_object_reference
(
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
165
:
case
165
:
#line 10
6
6 "objc-parse.y"
#line 10
7
6 "objc-parse.y"
{
yyval
.
ttype
=
get_object_reference
(
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
get_object_reference
(
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
166
:
case
166
:
#line 10
6
8 "objc-parse.y"
#line 10
7
8 "objc-parse.y"
{
yyval
.
ttype
=
TREE_TYPE
(
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
TREE_TYPE
(
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
167
:
case
167
:
#line 10
7
0 "objc-parse.y"
#line 10
8
0 "objc-parse.y"
{
yyval
.
ttype
=
groktypename
(
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
groktypename
(
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
175
:
case
175
:
#line 1
09
2 "objc-parse.y"
#line 1
10
2 "objc-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
176
:
case
176
:
#line 1
09
4 "objc-parse.y"
#line 1
10
4 "objc-parse.y"
{
if
(
TREE_CHAIN
(
yyvsp
[
-
1
].
ttype
))
yyvsp
[
-
1
].
ttype
=
combine_strings
(
yyvsp
[
-
1
].
ttype
);
{
if
(
TREE_CHAIN
(
yyvsp
[
-
1
].
ttype
))
yyvsp
[
-
1
].
ttype
=
combine_strings
(
yyvsp
[
-
1
].
ttype
);
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
;
;
break
;}
break
;}
case
177
:
case
177
:
#line 11
0
1 "objc-parse.y"
#line 11
1
1 "objc-parse.y"
{
yyval
.
ttype
=
start_decl
(
yyvsp
[
-
3
].
ttype
,
current_declspecs
,
1
,
{
yyval
.
ttype
=
start_decl
(
yyvsp
[
-
3
].
ttype
,
current_declspecs
,
1
,
yyvsp
[
-
1
].
ttype
,
prefix_attributes
);
yyvsp
[
-
1
].
ttype
,
prefix_attributes
);
start_init
(
yyval
.
ttype
,
yyvsp
[
-
2
].
ttype
,
global_bindings_p
());
;
start_init
(
yyval
.
ttype
,
yyvsp
[
-
2
].
ttype
,
global_bindings_p
());
;
break
;}
break
;}
case
178
:
case
178
:
#line 11
0
6 "objc-parse.y"
#line 11
1
6 "objc-parse.y"
{
finish_init
();
{
finish_init
();
finish_decl
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
4
].
ttype
);
;
finish_decl
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
4
].
ttype
);
;
break
;}
break
;}
case
179
:
case
179
:
#line 11
0
9 "objc-parse.y"
#line 11
1
9 "objc-parse.y"
{
tree
d
=
start_decl
(
yyvsp
[
-
2
].
ttype
,
current_declspecs
,
0
,
{
tree
d
=
start_decl
(
yyvsp
[
-
2
].
ttype
,
current_declspecs
,
0
,
yyvsp
[
0
].
ttype
,
prefix_attributes
);
yyvsp
[
0
].
ttype
,
prefix_attributes
);
finish_decl
(
d
,
NULL_TREE
,
yyvsp
[
-
1
].
ttype
);
finish_decl
(
d
,
NULL_TREE
,
yyvsp
[
-
1
].
ttype
);
;
;
break
;}
break
;}
case
180
:
case
180
:
#line 11
1
7 "objc-parse.y"
#line 11
2
7 "objc-parse.y"
{
yyval
.
ttype
=
start_decl
(
yyvsp
[
-
3
].
ttype
,
current_declspecs
,
1
,
{
yyval
.
ttype
=
start_decl
(
yyvsp
[
-
3
].
ttype
,
current_declspecs
,
1
,
yyvsp
[
-
1
].
ttype
,
prefix_attributes
);
yyvsp
[
-
1
].
ttype
,
prefix_attributes
);
start_init
(
yyval
.
ttype
,
yyvsp
[
-
2
].
ttype
,
global_bindings_p
());
;
start_init
(
yyval
.
ttype
,
yyvsp
[
-
2
].
ttype
,
global_bindings_p
());
;
break
;}
break
;}
case
181
:
case
181
:
#line 11
2
2 "objc-parse.y"
#line 11
3
2 "objc-parse.y"
{
finish_init
();
{
finish_init
();
decl_attributes
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
-
3
].
ttype
,
prefix_attributes
);
decl_attributes
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
-
3
].
ttype
,
prefix_attributes
);
finish_decl
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
4
].
ttype
);
;
finish_decl
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
4
].
ttype
);
;
break
;}
break
;}
case
182
:
case
182
:
#line 11
2
6 "objc-parse.y"
#line 11
3
6 "objc-parse.y"
{
tree
d
=
start_decl
(
yyvsp
[
-
2
].
ttype
,
current_declspecs
,
0
,
{
tree
d
=
start_decl
(
yyvsp
[
-
2
].
ttype
,
current_declspecs
,
0
,
yyvsp
[
0
].
ttype
,
prefix_attributes
);
yyvsp
[
0
].
ttype
,
prefix_attributes
);
finish_decl
(
d
,
NULL_TREE
,
yyvsp
[
-
1
].
ttype
);
;
finish_decl
(
d
,
NULL_TREE
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
183
:
case
183
:
#line 11
3
4 "objc-parse.y"
#line 11
4
4 "objc-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
184
:
case
184
:
#line 11
3
6 "objc-parse.y"
#line 11
4
6 "objc-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
185
:
case
185
:
#line 11
4
1 "objc-parse.y"
#line 11
5
1 "objc-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
186
:
case
186
:
#line 11
4
3 "objc-parse.y"
#line 11
5
3 "objc-parse.y"
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
187
:
case
187
:
#line 11
4
8 "objc-parse.y"
#line 11
5
8 "objc-parse.y"
{
yyval
.
ttype
=
yyvsp
[
-
2
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
-
2
].
ttype
;
;
break
;}
break
;}
case
188
:
case
188
:
#line 11
5
3 "objc-parse.y"
#line 11
6
3 "objc-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
189
:
case
189
:
#line 11
5
5 "objc-parse.y"
#line 11
6
5 "objc-parse.y"
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
190
:
case
190
:
#line 11
6
0 "objc-parse.y"
#line 11
7
0 "objc-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
191
:
case
191
:
#line 11
6
2 "objc-parse.y"
#line 11
7
2 "objc-parse.y"
{
yyval
.
ttype
=
build_tree_list
(
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
{
yyval
.
ttype
=
build_tree_list
(
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
break
;}
break
;}
case
192
:
case
192
:
#line 11
6
4 "objc-parse.y"
#line 11
7
4 "objc-parse.y"
{
yyval
.
ttype
=
build_tree_list
(
yyvsp
[
-
3
].
ttype
,
build_tree_list
(
NULL_TREE
,
yyvsp
[
-
1
].
ttype
));
;
{
yyval
.
ttype
=
build_tree_list
(
yyvsp
[
-
3
].
ttype
,
build_tree_list
(
NULL_TREE
,
yyvsp
[
-
1
].
ttype
));
;
break
;}
break
;}
case
193
:
case
193
:
#line 11
6
6 "objc-parse.y"
#line 11
7
6 "objc-parse.y"
{
yyval
.
ttype
=
build_tree_list
(
yyvsp
[
-
5
].
ttype
,
tree_cons
(
NULL_TREE
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
));
;
{
yyval
.
ttype
=
build_tree_list
(
yyvsp
[
-
5
].
ttype
,
tree_cons
(
NULL_TREE
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
));
;
break
;}
break
;}
case
194
:
case
194
:
#line 11
6
8 "objc-parse.y"
#line 11
7
8 "objc-parse.y"
{
yyval
.
ttype
=
build_tree_list
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
build_tree_list
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
200
:
case
200
:
#line 11
8
6 "objc-parse.y"
#line 11
9
6 "objc-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
201
:
case
201
:
#line 1
19
1 "objc-parse.y"
#line 1
20
1 "objc-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
))
...
@@ -3192,36 +3202,36 @@ case 201:
...
@@ -3192,36 +3202,36 @@ case 201:
pop_momentary_nofree
();
;
pop_momentary_nofree
();
;
break
;}
break
;}
case
202
:
case
202
:
#line 1
19
9 "objc-parse.y"
#line 1
20
9 "objc-parse.y"
{
yyval
.
ttype
=
error_mark_node
;
;
{
yyval
.
ttype
=
error_mark_node
;
;
break
;}
break
;}
case
203
:
case
203
:
#line 12
0
5 "objc-parse.y"
#line 12
1
5 "objc-parse.y"
{
if
(
pedantic
)
{
if
(
pedantic
)
pedwarn
(
"ANSI C forbids empty initializer braces"
);
;
pedwarn
(
"ANSI C forbids empty initializer braces"
);
;
break
;}
break
;}
case
209
:
case
209
:
#line 12
2
1 "objc-parse.y"
#line 12
3
1 "objc-parse.y"
{
set_init_label
(
yyvsp
[
-
1
].
ttype
);
;
{
set_init_label
(
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
212
:
case
212
:
#line 12
2
8 "objc-parse.y"
#line 12
3
8 "objc-parse.y"
{
push_init_level
(
0
);
;
{
push_init_level
(
0
);
;
break
;}
break
;}
case
213
:
case
213
:
#line 12
3
0 "objc-parse.y"
#line 12
4
0 "objc-parse.y"
{
process_init_element
(
pop_init_level
(
0
));
;
{
process_init_element
(
pop_init_level
(
0
));
;
break
;}
break
;}
case
214
:
case
214
:
#line 12
3
2 "objc-parse.y"
#line 12
4
2 "objc-parse.y"
{
process_init_element
(
yyvsp
[
0
].
ttype
);
;
{
process_init_element
(
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
218
:
case
218
:
#line 12
4
3 "objc-parse.y"
#line 12
5
3 "objc-parse.y"
{
set_init_label
(
yyvsp
[
0
].
ttype
);
;
{
set_init_label
(
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
219
:
case
219
:
#line 12
5
1 "objc-parse.y"
#line 12
6
1 "objc-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
))
...
@@ -3232,16 +3242,16 @@ case 219:
...
@@ -3232,16 +3242,16 @@ case 219:
reinit_parse_for_function
();
;
reinit_parse_for_function
();
;
break
;}
break
;}
case
220
:
case
220
:
#line 12
6
0 "objc-parse.y"
#line 12
7
0 "objc-parse.y"
{
store_parm_decls
();
;
{
store_parm_decls
();
;
break
;}
break
;}
case
221
:
case
221
:
#line 12
6
8 "objc-parse.y"
#line 12
7
8 "objc-parse.y"
{
finish_function
(
1
);
{
finish_function
(
1
);
pop_c_function_context
();
;
pop_c_function_context
();
;
break
;}
break
;}
case
222
:
case
222
:
#line 12
7
4 "objc-parse.y"
#line 12
8
4 "objc-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
))
...
@@ -3252,197 +3262,197 @@ case 222:
...
@@ -3252,197 +3262,197 @@ case 222:
reinit_parse_for_function
();
;
reinit_parse_for_function
();
;
break
;}
break
;}
case
223
:
case
223
:
#line 12
8
3 "objc-parse.y"
#line 12
9
3 "objc-parse.y"
{
store_parm_decls
();
;
{
store_parm_decls
();
;
break
;}
break
;}
case
224
:
case
224
:
#line 1
29
1 "objc-parse.y"
#line 1
30
1 "objc-parse.y"
{
finish_function
(
1
);
{
finish_function
(
1
);
pop_c_function_context
();
;
pop_c_function_context
();
;
break
;}
break
;}
case
227
:
case
227
:
#line 13
0
7 "objc-parse.y"
#line 13
1
7 "objc-parse.y"
{
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
;
break
;}
break
;}
case
228
:
case
228
:
#line 13
0
9 "objc-parse.y"
#line 13
1
9 "objc-parse.y"
{
yyval
.
ttype
=
build_nt
(
CALL_EXPR
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
{
yyval
.
ttype
=
build_nt
(
CALL_EXPR
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
break
;}
break
;}
case
229
:
case
229
:
#line 13
1
4 "objc-parse.y"
#line 13
2
4 "objc-parse.y"
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
230
:
case
230
:
#line 13
1
6 "objc-parse.y"
#line 13
2
6 "objc-parse.y"
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
yyvsp
[
-
2
].
ttype
,
NULL_TREE
);
;
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
yyvsp
[
-
2
].
ttype
,
NULL_TREE
);
;
break
;}
break
;}
case
231
:
case
231
:
#line 13
1
8 "objc-parse.y"
#line 13
2
8 "objc-parse.y"
{
yyval
.
ttype
=
make_pointer_declarator
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
make_pointer_declarator
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
232
:
case
232
:
#line 13
2
5 "objc-parse.y"
#line 13
3
5 "objc-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
235
:
case
235
:
#line 13
3
7 "objc-parse.y"
#line 13
4
7 "objc-parse.y"
{
yyval
.
ttype
=
build_nt
(
CALL_EXPR
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
{
yyval
.
ttype
=
build_nt
(
CALL_EXPR
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
break
;}
break
;}
case
236
:
case
236
:
#line 13
4
2 "objc-parse.y"
#line 13
5
2 "objc-parse.y"
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
237
:
case
237
:
#line 13
4
4 "objc-parse.y"
#line 13
5
4 "objc-parse.y"
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
yyvsp
[
-
2
].
ttype
,
NULL_TREE
);
;
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
yyvsp
[
-
2
].
ttype
,
NULL_TREE
);
;
break
;}
break
;}
case
238
:
case
238
:
#line 13
4
6 "objc-parse.y"
#line 13
5
6 "objc-parse.y"
{
yyval
.
ttype
=
make_pointer_declarator
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
make_pointer_declarator
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
239
:
case
239
:
#line 13
5
3 "objc-parse.y"
#line 13
6
3 "objc-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
241
:
case
241
:
#line 13
6
2 "objc-parse.y"
#line 13
7
2 "objc-parse.y"
{
yyval
.
ttype
=
build_nt
(
CALL_EXPR
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
{
yyval
.
ttype
=
build_nt
(
CALL_EXPR
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
break
;}
break
;}
case
242
:
case
242
:
#line 13
6
7 "objc-parse.y"
#line 13
7
7 "objc-parse.y"
{
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
;
break
;}
break
;}
case
243
:
case
243
:
#line 13
6
9 "objc-parse.y"
#line 13
7
9 "objc-parse.y"
{
yyval
.
ttype
=
make_pointer_declarator
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
make_pointer_declarator
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
244
:
case
244
:
#line 13
7
1 "objc-parse.y"
#line 13
8
1 "objc-parse.y"
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
245
:
case
245
:
#line 13
7
3 "objc-parse.y"
#line 13
8
3 "objc-parse.y"
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
yyvsp
[
-
2
].
ttype
,
NULL_TREE
);
;
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
yyvsp
[
-
2
].
ttype
,
NULL_TREE
);
;
break
;}
break
;}
case
246
:
case
246
:
#line 13
8
0 "objc-parse.y"
#line 13
9
0 "objc-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
248
:
case
248
:
#line 13
8
6 "objc-parse.y"
#line 13
9
6 "objc-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
249
:
case
249
:
#line 13
8
8 "objc-parse.y"
#line 13
9
8 "objc-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
250
:
case
250
:
#line 1
39
3 "objc-parse.y"
#line 1
40
3 "objc-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
251
:
case
251
:
#line 1
39
5 "objc-parse.y"
#line 1
40
5 "objc-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
252
:
case
252
:
#line 14
0
0 "objc-parse.y"
#line 14
1
0 "objc-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
253
:
case
253
:
#line 14
0
2 "objc-parse.y"
#line 14
1
2 "objc-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
254
:
case
254
:
#line 14
0
7 "objc-parse.y"
#line 14
1
7 "objc-parse.y"
{
yyval
.
ttype
=
start_struct
(
RECORD_TYPE
,
yyvsp
[
-
1
].
ttype
);
{
yyval
.
ttype
=
start_struct
(
RECORD_TYPE
,
yyvsp
[
-
1
].
ttype
);
/* Start scope of tag before parsing components. */
/* Start scope of tag before parsing components. */
;
;
break
;}
break
;}
case
255
:
case
255
:
#line 14
1
1 "objc-parse.y"
#line 14
2
1 "objc-parse.y"
{
yyval
.
ttype
=
finish_struct
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
2
].
ttype
,
chainon
(
yyvsp
[
-
6
].
ttype
,
yyvsp
[
0
].
ttype
));
;
{
yyval
.
ttype
=
finish_struct
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
2
].
ttype
,
chainon
(
yyvsp
[
-
6
].
ttype
,
yyvsp
[
0
].
ttype
));
;
break
;}
break
;}
case
256
:
case
256
:
#line 14
1
3 "objc-parse.y"
#line 14
2
3 "objc-parse.y"
{
yyval
.
ttype
=
finish_struct
(
start_struct
(
RECORD_TYPE
,
NULL_TREE
),
{
yyval
.
ttype
=
finish_struct
(
start_struct
(
RECORD_TYPE
,
NULL_TREE
),
yyvsp
[
-
2
].
ttype
,
chainon
(
yyvsp
[
-
4
].
ttype
,
yyvsp
[
0
].
ttype
));
yyvsp
[
-
2
].
ttype
,
chainon
(
yyvsp
[
-
4
].
ttype
,
yyvsp
[
0
].
ttype
));
;
;
break
;}
break
;}
case
257
:
case
257
:
#line 14
1
7 "objc-parse.y"
#line 14
2
7 "objc-parse.y"
{
yyval
.
ttype
=
xref_tag
(
RECORD_TYPE
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
xref_tag
(
RECORD_TYPE
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
258
:
case
258
:
#line 14
1
9 "objc-parse.y"
#line 14
2
9 "objc-parse.y"
{
yyval
.
ttype
=
start_struct
(
UNION_TYPE
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
start_struct
(
UNION_TYPE
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
259
:
case
259
:
#line 14
2
1 "objc-parse.y"
#line 14
3
1 "objc-parse.y"
{
yyval
.
ttype
=
finish_struct
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
2
].
ttype
,
chainon
(
yyvsp
[
-
6
].
ttype
,
yyvsp
[
0
].
ttype
));
;
{
yyval
.
ttype
=
finish_struct
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
2
].
ttype
,
chainon
(
yyvsp
[
-
6
].
ttype
,
yyvsp
[
0
].
ttype
));
;
break
;}
break
;}
case
260
:
case
260
:
#line 14
2
3 "objc-parse.y"
#line 14
3
3 "objc-parse.y"
{
yyval
.
ttype
=
finish_struct
(
start_struct
(
UNION_TYPE
,
NULL_TREE
),
{
yyval
.
ttype
=
finish_struct
(
start_struct
(
UNION_TYPE
,
NULL_TREE
),
yyvsp
[
-
2
].
ttype
,
chainon
(
yyvsp
[
-
4
].
ttype
,
yyvsp
[
0
].
ttype
));
yyvsp
[
-
2
].
ttype
,
chainon
(
yyvsp
[
-
4
].
ttype
,
yyvsp
[
0
].
ttype
));
;
;
break
;}
break
;}
case
261
:
case
261
:
#line 14
2
7 "objc-parse.y"
#line 14
3
7 "objc-parse.y"
{
yyval
.
ttype
=
xref_tag
(
UNION_TYPE
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
xref_tag
(
UNION_TYPE
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
262
:
case
262
:
#line 14
2
9 "objc-parse.y"
#line 14
3
9 "objc-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
263
:
case
263
:
#line 14
3
2 "objc-parse.y"
#line 14
4
2 "objc-parse.y"
{
yyval
.
ttype
=
finish_enum
(
yyvsp
[
-
4
].
ttype
,
nreverse
(
yyvsp
[
-
3
].
ttype
),
chainon
(
yyvsp
[
-
7
].
ttype
,
yyvsp
[
0
].
ttype
));
{
yyval
.
ttype
=
finish_enum
(
yyvsp
[
-
4
].
ttype
,
nreverse
(
yyvsp
[
-
3
].
ttype
),
chainon
(
yyvsp
[
-
7
].
ttype
,
yyvsp
[
0
].
ttype
));
resume_momentary
(
yyvsp
[
-
5
].
itype
);
;
resume_momentary
(
yyvsp
[
-
5
].
itype
);
;
break
;}
break
;}
case
264
:
case
264
:
#line 14
3
5 "objc-parse.y"
#line 14
4
5 "objc-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
265
:
case
265
:
#line 14
3
8 "objc-parse.y"
#line 14
4
8 "objc-parse.y"
{
yyval
.
ttype
=
finish_enum
(
yyvsp
[
-
4
].
ttype
,
nreverse
(
yyvsp
[
-
3
].
ttype
),
chainon
(
yyvsp
[
-
6
].
ttype
,
yyvsp
[
0
].
ttype
));
{
yyval
.
ttype
=
finish_enum
(
yyvsp
[
-
4
].
ttype
,
nreverse
(
yyvsp
[
-
3
].
ttype
),
chainon
(
yyvsp
[
-
6
].
ttype
,
yyvsp
[
0
].
ttype
));
resume_momentary
(
yyvsp
[
-
5
].
itype
);
;
resume_momentary
(
yyvsp
[
-
5
].
itype
);
;
break
;}
break
;}
case
266
:
case
266
:
#line 14
4
1 "objc-parse.y"
#line 14
5
1 "objc-parse.y"
{
yyval
.
ttype
=
xref_tag
(
ENUMERAL_TYPE
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
xref_tag
(
ENUMERAL_TYPE
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
270
:
case
270
:
#line 14
5
2 "objc-parse.y"
#line 14
6
2 "objc-parse.y"
{
if
(
pedantic
&&
!
flag_isoc9x
)
{
if
(
pedantic
&&
!
flag_isoc9x
)
pedwarn
(
"comma at end of enumerator list"
);
;
pedwarn
(
"comma at end of enumerator list"
);
;
break
;}
break
;}
case
271
:
case
271
:
#line 14
5
8 "objc-parse.y"
#line 14
6
8 "objc-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
272
:
case
272
:
#line 14
6
0 "objc-parse.y"
#line 14
7
0 "objc-parse.y"
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
pedwarn
(
"no semicolon at end of struct or union"
);
;
pedwarn
(
"no semicolon at end of struct or union"
);
;
break
;}
break
;}
case
273
:
case
273
:
#line 14
6
5 "objc-parse.y"
#line 14
7
5 "objc-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
274
:
case
274
:
#line 14
6
7 "objc-parse.y"
#line 14
7
7 "objc-parse.y"
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
275
:
case
275
:
#line 14
6
9 "objc-parse.y"
#line 14
7
9 "objc-parse.y"
{
if
(
pedantic
)
{
if
(
pedantic
)
pedwarn
(
"extra semicolon in struct or union specified"
);
;
pedwarn
(
"extra semicolon in struct or union specified"
);
;
break
;}
break
;}
case
276
:
case
276
:
#line 14
7
3 "objc-parse.y"
#line 14
8
3 "objc-parse.y"
{
{
tree
interface
=
lookup_interface
(
yyvsp
[
-
1
].
ttype
);
tree
interface
=
lookup_interface
(
yyvsp
[
-
1
].
ttype
);
...
@@ -3457,7 +3467,7 @@ case 276:
...
@@ -3457,7 +3467,7 @@ case 276:
;
;
break
;}
break
;}
case
277
:
case
277
:
#line 1
49
8 "objc-parse.y"
#line 1
50
8 "objc-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
...
@@ -3465,14 +3475,14 @@ case 277:
...
@@ -3465,14 +3475,14 @@ case 277:
resume_momentary
(
yyvsp
[
-
1
].
itype
);
;
resume_momentary
(
yyvsp
[
-
1
].
itype
);
;
break
;}
break
;}
case
278
:
case
278
:
#line 15
0
4 "objc-parse.y"
#line 15
1
4 "objc-parse.y"
{
if
(
pedantic
)
{
if
(
pedantic
)
pedwarn
(
"ANSI C forbids member declarations with no members"
);
pedwarn
(
"ANSI C forbids member declarations with no members"
);
shadow_tag
(
yyvsp
[
0
].
ttype
);
shadow_tag
(
yyvsp
[
0
].
ttype
);
yyval
.
ttype
=
NULL_TREE
;
;
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
279
:
case
279
:
#line 15
0
9 "objc-parse.y"
#line 15
1
9 "objc-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
...
@@ -3480,140 +3490,140 @@ case 279:
...
@@ -3480,140 +3490,140 @@ case 279:
resume_momentary
(
yyvsp
[
-
1
].
itype
);
;
resume_momentary
(
yyvsp
[
-
1
].
itype
);
;
break
;}
break
;}
case
280
:
case
280
:
#line 15
1
5 "objc-parse.y"
#line 15
2
5 "objc-parse.y"
{
if
(
pedantic
)
{
if
(
pedantic
)
pedwarn
(
"ANSI C forbids member declarations with no members"
);
pedwarn
(
"ANSI C forbids member declarations with no members"
);
shadow_tag
(
yyvsp
[
0
].
ttype
);
shadow_tag
(
yyvsp
[
0
].
ttype
);
yyval
.
ttype
=
NULL_TREE
;
;
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
281
:
case
281
:
#line 15
2
0 "objc-parse.y"
#line 15
3
0 "objc-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
282
:
case
282
:
#line 15
2
2 "objc-parse.y"
#line 15
3
2 "objc-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
pedantic
=
yyvsp
[
-
1
].
itype
;
;
pedantic
=
yyvsp
[
-
1
].
itype
;
;
break
;}
break
;}
case
284
:
case
284
:
#line 15
2
9 "objc-parse.y"
#line 15
3
9 "objc-parse.y"
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
285
:
case
285
:
#line 15
3
4 "objc-parse.y"
#line 15
4
4 "objc-parse.y"
{
yyval
.
ttype
=
grokfield
(
yyvsp
[
-
3
].
filename
,
yyvsp
[
-
2
].
lineno
,
yyvsp
[
-
1
].
ttype
,
current_declspecs
,
NULL_TREE
);
{
yyval
.
ttype
=
grokfield
(
yyvsp
[
-
3
].
filename
,
yyvsp
[
-
2
].
lineno
,
yyvsp
[
-
1
].
ttype
,
current_declspecs
,
NULL_TREE
);
decl_attributes
(
yyval
.
ttype
,
yyvsp
[
0
].
ttype
,
prefix_attributes
);
;
decl_attributes
(
yyval
.
ttype
,
yyvsp
[
0
].
ttype
,
prefix_attributes
);
;
break
;}
break
;}
case
286
:
case
286
:
#line 15
3
8 "objc-parse.y"
#line 15
4
8 "objc-parse.y"
{
yyval
.
ttype
=
grokfield
(
yyvsp
[
-
5
].
filename
,
yyvsp
[
-
4
].
lineno
,
yyvsp
[
-
3
].
ttype
,
current_declspecs
,
yyvsp
[
-
1
].
ttype
);
{
yyval
.
ttype
=
grokfield
(
yyvsp
[
-
5
].
filename
,
yyvsp
[
-
4
].
lineno
,
yyvsp
[
-
3
].
ttype
,
current_declspecs
,
yyvsp
[
-
1
].
ttype
);
decl_attributes
(
yyval
.
ttype
,
yyvsp
[
0
].
ttype
,
prefix_attributes
);
;
decl_attributes
(
yyval
.
ttype
,
yyvsp
[
0
].
ttype
,
prefix_attributes
);
;
break
;}
break
;}
case
287
:
case
287
:
#line 15
4
1 "objc-parse.y"
#line 15
5
1 "objc-parse.y"
{
yyval
.
ttype
=
grokfield
(
yyvsp
[
-
4
].
filename
,
yyvsp
[
-
3
].
lineno
,
NULL_TREE
,
current_declspecs
,
yyvsp
[
-
1
].
ttype
);
{
yyval
.
ttype
=
grokfield
(
yyvsp
[
-
4
].
filename
,
yyvsp
[
-
3
].
lineno
,
NULL_TREE
,
current_declspecs
,
yyvsp
[
-
1
].
ttype
);
decl_attributes
(
yyval
.
ttype
,
yyvsp
[
0
].
ttype
,
prefix_attributes
);
;
decl_attributes
(
yyval
.
ttype
,
yyvsp
[
0
].
ttype
,
prefix_attributes
);
;
break
;}
break
;}
case
289
:
case
289
:
#line 15
5
3 "objc-parse.y"
#line 15
6
3 "objc-parse.y"
{
if
(
yyvsp
[
-
2
].
ttype
==
error_mark_node
)
{
if
(
yyvsp
[
-
2
].
ttype
==
error_mark_node
)
yyval
.
ttype
=
yyvsp
[
-
2
].
ttype
;
yyval
.
ttype
=
yyvsp
[
-
2
].
ttype
;
else
else
yyval
.
ttype
=
chainon
(
yyvsp
[
0
].
ttype
,
yyvsp
[
-
2
].
ttype
);
;
yyval
.
ttype
=
chainon
(
yyvsp
[
0
].
ttype
,
yyvsp
[
-
2
].
ttype
);
;
break
;}
break
;}
case
290
:
case
290
:
#line 15
5
8 "objc-parse.y"
#line 15
6
8 "objc-parse.y"
{
yyval
.
ttype
=
error_mark_node
;
;
{
yyval
.
ttype
=
error_mark_node
;
;
break
;}
break
;}
case
291
:
case
291
:
#line 15
6
4 "objc-parse.y"
#line 15
7
4 "objc-parse.y"
{
yyval
.
ttype
=
build_enumerator
(
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
{
yyval
.
ttype
=
build_enumerator
(
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
break
;}
break
;}
case
292
:
case
292
:
#line 15
6
6 "objc-parse.y"
#line 15
7
6 "objc-parse.y"
{
yyval
.
ttype
=
build_enumerator
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
build_enumerator
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
293
:
case
293
:
#line 15
7
1 "objc-parse.y"
#line 15
8
1 "objc-parse.y"
{
yyval
.
ttype
=
build_tree_list
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
build_tree_list
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
294
:
case
294
:
#line 15
7
3 "objc-parse.y"
#line 15
8
3 "objc-parse.y"
{
yyval
.
ttype
=
build_tree_list
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
build_tree_list
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
295
:
case
295
:
#line 15
7
8 "objc-parse.y"
#line 15
8
8 "objc-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
297
:
case
297
:
#line 15
8
4 "objc-parse.y"
#line 15
9
4 "objc-parse.y"
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
break
;}
break
;}
case
298
:
case
298
:
#line 15
8
6 "objc-parse.y"
#line 15
9
6 "objc-parse.y"
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
299
:
case
299
:
#line 1
59
1 "objc-parse.y"
#line 1
60
1 "objc-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
300
:
case
300
:
#line 1
59
3 "objc-parse.y"
#line 1
60
3 "objc-parse.y"
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
301
:
case
301
:
#line 1
59
8 "objc-parse.y"
#line 1
60
8 "objc-parse.y"
{
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
;
break
;}
break
;}
case
302
:
case
302
:
#line 16
0
1 "objc-parse.y"
#line 16
1
1 "objc-parse.y"
{
yyval
.
ttype
=
make_pointer_declarator
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
make_pointer_declarator
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
303
:
case
303
:
#line 16
0
3 "objc-parse.y"
#line 16
1
3 "objc-parse.y"
{
yyval
.
ttype
=
make_pointer_declarator
(
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
{
yyval
.
ttype
=
make_pointer_declarator
(
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
break
;}
break
;}
case
304
:
case
304
:
#line 16
0
5 "objc-parse.y"
#line 16
1
5 "objc-parse.y"
{
yyval
.
ttype
=
build_nt
(
CALL_EXPR
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
{
yyval
.
ttype
=
build_nt
(
CALL_EXPR
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
break
;}
break
;}
case
305
:
case
305
:
#line 16
0
7 "objc-parse.y"
#line 16
1
7 "objc-parse.y"
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
306
:
case
306
:
#line 16
0
9 "objc-parse.y"
#line 16
1
9 "objc-parse.y"
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
yyvsp
[
-
2
].
ttype
,
NULL_TREE
);
;
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
yyvsp
[
-
2
].
ttype
,
NULL_TREE
);
;
break
;}
break
;}
case
307
:
case
307
:
#line 16
1
1 "objc-parse.y"
#line 16
2
1 "objc-parse.y"
{
yyval
.
ttype
=
build_nt
(
CALL_EXPR
,
NULL_TREE
,
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
{
yyval
.
ttype
=
build_nt
(
CALL_EXPR
,
NULL_TREE
,
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
break
;}
break
;}
case
308
:
case
308
:
#line 16
1
3 "objc-parse.y"
#line 16
2
3 "objc-parse.y"
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
NULL_TREE
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
NULL_TREE
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
309
:
case
309
:
#line 16
1
5 "objc-parse.y"
#line 16
2
5 "objc-parse.y"
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
NULL_TREE
,
NULL_TREE
);
;
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
NULL_TREE
,
NULL_TREE
);
;
break
;}
break
;}
case
310
:
case
310
:
#line 16
2
6 "objc-parse.y"
#line 16
3
6 "objc-parse.y"
{
{
if
(
pedantic
&&
yyvsp
[
0
].
ends_in_label
)
if
(
pedantic
&&
yyvsp
[
0
].
ends_in_label
)
pedwarn
(
"ANSI C forbids label at end of compound statement"
);
pedwarn
(
"ANSI C forbids label at end of compound statement"
);
;
;
break
;}
break
;}
case
312
:
case
312
:
#line 16
3
5 "objc-parse.y"
#line 16
4
5 "objc-parse.y"
{
yyval
.
ends_in_label
=
yyvsp
[
0
].
ends_in_label
;
;
{
yyval
.
ends_in_label
=
yyvsp
[
0
].
ends_in_label
;
;
break
;}
break
;}
case
313
:
case
313
:
#line 16
3
7 "objc-parse.y"
#line 16
4
7 "objc-parse.y"
{
yyval
.
ends_in_label
=
0
;
;
{
yyval
.
ends_in_label
=
0
;
;
break
;}
break
;}
case
317
:
case
317
:
#line 16
4
9 "objc-parse.y"
#line 16
5
9 "objc-parse.y"
{
emit_line_note
(
input_filename
,
lineno
);
{
emit_line_note
(
input_filename
,
lineno
);
pushlevel
(
0
);
pushlevel
(
0
);
clear_last_expr
();
clear_last_expr
();
...
@@ -3624,12 +3634,12 @@ case 317:
...
@@ -3624,12 +3634,12 @@ case 317:
;
;
break
;}
break
;}
case
319
:
case
319
:
#line 16
6
4 "objc-parse.y"
#line 16
7
4 "objc-parse.y"
{
if
(
pedantic
)
{
if
(
pedantic
)
pedwarn
(
"ANSI C forbids label declarations"
);
;
pedwarn
(
"ANSI C forbids label declarations"
);
;
break
;}
break
;}
case
322
:
case
322
:
#line 16
7
5 "objc-parse.y"
#line 16
8
5 "objc-parse.y"
{
tree
link
;
{
tree
link
;
for
(
link
=
yyvsp
[
-
1
].
ttype
;
link
;
link
=
TREE_CHAIN
(
link
))
for
(
link
=
yyvsp
[
-
1
].
ttype
;
link
;
link
=
TREE_CHAIN
(
link
))
{
{
...
@@ -3640,19 +3650,19 @@ case 322:
...
@@ -3640,19 +3650,19 @@ case 322:
;
;
break
;}
break
;}
case
323
:
case
323
:
#line 16
8
9 "objc-parse.y"
#line 16
9
9 "objc-parse.y"
{;
{;
break
;}
break
;}
case
325
:
case
325
:
#line 1
69
3 "objc-parse.y"
#line 1
70
3 "objc-parse.y"
{
compstmt_count
++
;
;
{
compstmt_count
++
;
;
break
;}
break
;}
case
326
:
case
326
:
#line 1
69
6 "objc-parse.y"
#line 1
70
6 "objc-parse.y"
{
yyval
.
ttype
=
convert
(
void_type_node
,
integer_zero_node
);
;
{
yyval
.
ttype
=
convert
(
void_type_node
,
integer_zero_node
);
;
break
;}
break
;}
case
327
:
case
327
:
#line 1
69
8 "objc-parse.y"
#line 1
70
8 "objc-parse.y"
{
emit_line_note
(
input_filename
,
lineno
);
{
emit_line_note
(
input_filename
,
lineno
);
expand_end_bindings
(
getdecls
(),
1
,
0
);
expand_end_bindings
(
getdecls
(),
1
,
0
);
yyval
.
ttype
=
poplevel
(
1
,
1
,
0
);
yyval
.
ttype
=
poplevel
(
1
,
1
,
0
);
...
@@ -3662,7 +3672,7 @@ case 327:
...
@@ -3662,7 +3672,7 @@ case 327:
pop_momentary
();
;
pop_momentary
();
;
break
;}
break
;}
case
328
:
case
328
:
#line 17
0
6 "objc-parse.y"
#line 17
1
6 "objc-parse.y"
{
emit_line_note
(
input_filename
,
lineno
);
{
emit_line_note
(
input_filename
,
lineno
);
expand_end_bindings
(
getdecls
(),
kept_level_p
(),
0
);
expand_end_bindings
(
getdecls
(),
kept_level_p
(),
0
);
yyval
.
ttype
=
poplevel
(
kept_level_p
(),
0
,
0
);
yyval
.
ttype
=
poplevel
(
kept_level_p
(),
0
,
0
);
...
@@ -3672,7 +3682,7 @@ case 328:
...
@@ -3672,7 +3682,7 @@ case 328:
pop_momentary
();
;
pop_momentary
();
;
break
;}
break
;}
case
329
:
case
329
:
#line 17
1
4 "objc-parse.y"
#line 17
2
4 "objc-parse.y"
{
emit_line_note
(
input_filename
,
lineno
);
{
emit_line_note
(
input_filename
,
lineno
);
expand_end_bindings
(
getdecls
(),
kept_level_p
(),
0
);
expand_end_bindings
(
getdecls
(),
kept_level_p
(),
0
);
yyval
.
ttype
=
poplevel
(
kept_level_p
(),
0
,
0
);
yyval
.
ttype
=
poplevel
(
kept_level_p
(),
0
,
0
);
...
@@ -3682,7 +3692,7 @@ case 329:
...
@@ -3682,7 +3692,7 @@ case 329:
pop_momentary
();
;
pop_momentary
();
;
break
;}
break
;}
case
332
:
case
332
:
#line 17
3
4 "objc-parse.y"
#line 17
4
4 "objc-parse.y"
{
emit_line_note
(
yyvsp
[
-
5
].
filename
,
yyvsp
[
-
4
].
lineno
);
{
emit_line_note
(
yyvsp
[
-
5
].
filename
,
yyvsp
[
-
4
].
lineno
);
c_expand_start_cond
(
truthvalue_conversion
(
yyvsp
[
-
1
].
ttype
),
0
,
c_expand_start_cond
(
truthvalue_conversion
(
yyvsp
[
-
1
].
ttype
),
0
,
compstmt_count
);
compstmt_count
);
...
@@ -3692,7 +3702,7 @@ case 332:
...
@@ -3692,7 +3702,7 @@ case 332:
position_after_white_space
();
;
position_after_white_space
();
;
break
;}
break
;}
case
333
:
case
333
:
#line 17
4
8 "objc-parse.y"
#line 17
5
8 "objc-parse.y"
{
stmt_count
++
;
{
stmt_count
++
;
compstmt_count
++
;
compstmt_count
++
;
emit_line_note
(
yyvsp
[
-
2
].
filename
,
yyvsp
[
-
1
].
lineno
);
emit_line_note
(
yyvsp
[
-
2
].
filename
,
yyvsp
[
-
1
].
lineno
);
...
@@ -3702,43 +3712,43 @@ case 333:
...
@@ -3702,43 +3712,43 @@ case 333:
position_after_white_space
();
;
position_after_white_space
();
;
break
;}
break
;}
case
334
:
case
334
:
#line 17
5
6 "objc-parse.y"
#line 17
6
6 "objc-parse.y"
{
expand_loop_continue_here
();
;
{
expand_loop_continue_here
();
;
break
;}
break
;}
case
335
:
case
335
:
#line 17
6
0 "objc-parse.y"
#line 17
7
0 "objc-parse.y"
{
yyval
.
filename
=
input_filename
;
;
{
yyval
.
filename
=
input_filename
;
;
break
;}
break
;}
case
336
:
case
336
:
#line 17
6
4 "objc-parse.y"
#line 17
7
4 "objc-parse.y"
{
yyval
.
lineno
=
lineno
;
;
{
yyval
.
lineno
=
lineno
;
;
break
;}
break
;}
case
337
:
case
337
:
#line 17
6
9 "objc-parse.y"
#line 17
7
9 "objc-parse.y"
{
;
{
;
break
;}
break
;}
case
338
:
case
338
:
#line 17
7
4 "objc-parse.y"
#line 17
8
4 "objc-parse.y"
{
;
{
;
break
;}
break
;}
case
339
:
case
339
:
#line 17
7
9 "objc-parse.y"
#line 17
8
9 "objc-parse.y"
{
yyval
.
ends_in_label
=
yyvsp
[
0
].
ends_in_label
;
;
{
yyval
.
ends_in_label
=
yyvsp
[
0
].
ends_in_label
;
;
break
;}
break
;}
case
340
:
case
340
:
#line 17
8
4 "objc-parse.y"
#line 17
9
4 "objc-parse.y"
{
yyval
.
ends_in_label
=
0
;
;
{
yyval
.
ends_in_label
=
0
;
;
break
;}
break
;}
case
341
:
case
341
:
#line 17
8
6 "objc-parse.y"
#line 17
9
6 "objc-parse.y"
{
yyval
.
ends_in_label
=
1
;
;
{
yyval
.
ends_in_label
=
1
;
;
break
;}
break
;}
case
342
:
case
342
:
#line 1
79
2 "objc-parse.y"
#line 1
80
2 "objc-parse.y"
{
stmt_count
++
;
;
{
stmt_count
++
;
;
break
;}
break
;}
case
344
:
case
344
:
#line 1
79
5 "objc-parse.y"
#line 1
80
5 "objc-parse.y"
{
stmt_count
++
;
{
stmt_count
++
;
emit_line_note
(
yyvsp
[
-
3
].
filename
,
yyvsp
[
-
2
].
lineno
);
emit_line_note
(
yyvsp
[
-
3
].
filename
,
yyvsp
[
-
2
].
lineno
);
/* 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
...
@@ -3757,19 +3767,19 @@ case 344:
...
@@ -3757,19 +3767,19 @@ case 344:
clear_momentary
();
;
clear_momentary
();
;
break
;}
break
;}
case
345
:
case
345
:
#line 18
1
2 "objc-parse.y"
#line 18
2
2 "objc-parse.y"
{
c_expand_start_else
();
{
c_expand_start_else
();
yyvsp
[
-
1
].
itype
=
stmt_count
;
yyvsp
[
-
1
].
itype
=
stmt_count
;
position_after_white_space
();
;
position_after_white_space
();
;
break
;}
break
;}
case
346
:
case
346
:
#line 18
1
6 "objc-parse.y"
#line 18
2
6 "objc-parse.y"
{
c_expand_end_cond
();
{
c_expand_end_cond
();
if
(
extra_warnings
&&
stmt_count
==
yyvsp
[
-
3
].
itype
)
if
(
extra_warnings
&&
stmt_count
==
yyvsp
[
-
3
].
itype
)
warning
(
"empty body in an else-statement"
);
;
warning
(
"empty body in an else-statement"
);
;
break
;}
break
;}
case
347
:
case
347
:
#line 18
2
0 "objc-parse.y"
#line 18
3
0 "objc-parse.y"
{
c_expand_end_cond
();
{
c_expand_end_cond
();
/* This warning is here instead of in simple_if, because we
/* This warning is here instead of in simple_if, because we
do not want a warning if an empty if is followed by an
do not want a warning if an empty if is followed by an
...
@@ -3780,11 +3790,11 @@ case 347:
...
@@ -3780,11 +3790,11 @@ case 347:
"empty body in an if-statement"
);
;
"empty body in an if-statement"
);
;
break
;}
break
;}
case
348
:
case
348
:
#line 18
3
2 "objc-parse.y"
#line 18
4
2 "objc-parse.y"
{
c_expand_end_cond
();
;
{
c_expand_end_cond
();
;
break
;}
break
;}
case
349
:
case
349
:
#line 18
3
4 "objc-parse.y"
#line 18
4
4 "objc-parse.y"
{
stmt_count
++
;
{
stmt_count
++
;
emit_line_note
(
yyvsp
[
-
2
].
filename
,
yyvsp
[
-
1
].
lineno
);
emit_line_note
(
yyvsp
[
-
2
].
filename
,
yyvsp
[
-
1
].
lineno
);
/* The emit_nop used to come before emit_line_note,
/* The emit_nop used to come before emit_line_note,
...
@@ -3796,7 +3806,7 @@ case 349:
...
@@ -3796,7 +3806,7 @@ case 349:
emit_nop
();
;
emit_nop
();
;
break
;}
break
;}
case
350
:
case
350
:
#line 18
4
4 "objc-parse.y"
#line 18
5
4 "objc-parse.y"
{
/* Don't start the loop till we have succeeded
{
/* Don't start the loop till we have succeeded
in parsing the end test. This is to make sure
in parsing the end test. This is to make sure
that we end every loop we start. */
that we end every loop we start. */
...
@@ -3807,11 +3817,11 @@ case 350:
...
@@ -3807,11 +3817,11 @@ case 350:
position_after_white_space
();
;
position_after_white_space
();
;
break
;}
break
;}
case
351
:
case
351
:
#line 18
5
3 "objc-parse.y"
#line 18
6
3 "objc-parse.y"
{
expand_end_loop
();
;
{
expand_end_loop
();
;
break
;}
break
;}
case
352
:
case
352
:
#line 18
5
6 "objc-parse.y"
#line 18
6
6 "objc-parse.y"
{
emit_line_note
(
input_filename
,
lineno
);
{
emit_line_note
(
input_filename
,
lineno
);
expand_exit_loop_if_false
(
NULL_PTR
,
expand_exit_loop_if_false
(
NULL_PTR
,
truthvalue_conversion
(
yyvsp
[
-
2
].
ttype
));
truthvalue_conversion
(
yyvsp
[
-
2
].
ttype
));
...
@@ -3819,12 +3829,12 @@ case 352:
...
@@ -3819,12 +3829,12 @@ case 352:
clear_momentary
();
;
clear_momentary
();
;
break
;}
break
;}
case
353
:
case
353
:
#line 18
6
3 "objc-parse.y"
#line 18
7
3 "objc-parse.y"
{
expand_end_loop
();
{
expand_end_loop
();
clear_momentary
();
;
clear_momentary
();
;
break
;}
break
;}
case
354
:
case
354
:
#line 18
6
7 "objc-parse.y"
#line 18
7
7 "objc-parse.y"
{
stmt_count
++
;
{
stmt_count
++
;
emit_line_note
(
yyvsp
[
-
5
].
filename
,
yyvsp
[
-
4
].
lineno
);
emit_line_note
(
yyvsp
[
-
5
].
filename
,
yyvsp
[
-
4
].
lineno
);
/* See comment in `while' alternative, above. */
/* See comment in `while' alternative, above. */
...
@@ -3837,12 +3847,12 @@ case 354:
...
@@ -3837,12 +3847,12 @@ case 354:
;
;
break
;}
break
;}
case
355
:
case
355
:
#line 18
7
9 "objc-parse.y"
#line 18
8
9 "objc-parse.y"
{
yyvsp
[
0
].
lineno
=
lineno
;
{
yyvsp
[
0
].
lineno
=
lineno
;
yyval
.
filename
=
input_filename
;
;
yyval
.
filename
=
input_filename
;
;
break
;}
break
;}
case
356
:
case
356
:
#line 18
8
2 "objc-parse.y"
#line 18
9
2 "objc-parse.y"
{
{
/* Start the loop. Doing this after parsing
/* Start the loop. Doing this after parsing
all the expressions ensures we will end the loop. */
all the expressions ensures we will end the loop. */
...
@@ -3860,7 +3870,7 @@ case 356:
...
@@ -3860,7 +3870,7 @@ case 356:
position_after_white_space
();
;
position_after_white_space
();
;
break
;}
break
;}
case
357
:
case
357
:
#line 1
89
8 "objc-parse.y"
#line 1
90
8 "objc-parse.y"
{
/* Emit the increment expression, with a line number. */
{
/* Emit the increment expression, with a line number. */
emit_line_note
(
yyvsp
[
-
4
].
filename
,
yyvsp
[
-
5
].
lineno
);
emit_line_note
(
yyvsp
[
-
4
].
filename
,
yyvsp
[
-
5
].
lineno
);
expand_loop_continue_here
();
expand_loop_continue_here
();
...
@@ -3873,7 +3883,7 @@ case 357:
...
@@ -3873,7 +3883,7 @@ case 357:
expand_end_loop
();
;
expand_end_loop
();
;
break
;}
break
;}
case
358
:
case
358
:
#line 19
0
9 "objc-parse.y"
#line 19
1
9 "objc-parse.y"
{
stmt_count
++
;
{
stmt_count
++
;
emit_line_note
(
yyvsp
[
-
5
].
filename
,
yyvsp
[
-
4
].
lineno
);
emit_line_note
(
yyvsp
[
-
5
].
filename
,
yyvsp
[
-
4
].
lineno
);
c_expand_start_case
(
yyvsp
[
-
1
].
ttype
);
c_expand_start_case
(
yyvsp
[
-
1
].
ttype
);
...
@@ -3883,7 +3893,7 @@ case 358:
...
@@ -3883,7 +3893,7 @@ case 358:
position_after_white_space
();
;
position_after_white_space
();
;
break
;}
break
;}
case
359
:
case
359
:
#line 19
1
7 "objc-parse.y"
#line 19
2
7 "objc-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
();
...
@@ -3891,33 +3901,33 @@ case 359:
...
@@ -3891,33 +3901,33 @@ case 359:
pop_momentary
();
;
pop_momentary
();
;
break
;}
break
;}
case
360
:
case
360
:
#line 19
2
3 "objc-parse.y"
#line 19
3
3 "objc-parse.y"
{
stmt_count
++
;
{
stmt_count
++
;
emit_line_note
(
yyvsp
[
-
3
].
filename
,
yyvsp
[
-
2
].
lineno
);
emit_line_note
(
yyvsp
[
-
3
].
filename
,
yyvsp
[
-
2
].
lineno
);
if
(
!
expand_exit_something
())
if
(
!
expand_exit_something
())
error
(
"break statement not within loop or switch"
);
;
error
(
"break statement not within loop or switch"
);
;
break
;}
break
;}
case
361
:
case
361
:
#line 19
2
8 "objc-parse.y"
#line 19
3
8 "objc-parse.y"
{
stmt_count
++
;
{
stmt_count
++
;
emit_line_note
(
yyvsp
[
-
3
].
filename
,
yyvsp
[
-
2
].
lineno
);
emit_line_note
(
yyvsp
[
-
3
].
filename
,
yyvsp
[
-
2
].
lineno
);
if
(
!
expand_continue_loop
(
NULL_PTR
))
if
(
!
expand_continue_loop
(
NULL_PTR
))
error
(
"continue statement not within a loop"
);
;
error
(
"continue statement not within a loop"
);
;
break
;}
break
;}
case
362
:
case
362
:
#line 19
3
3 "objc-parse.y"
#line 19
4
3 "objc-parse.y"
{
stmt_count
++
;
{
stmt_count
++
;
emit_line_note
(
yyvsp
[
-
3
].
filename
,
yyvsp
[
-
2
].
lineno
);
emit_line_note
(
yyvsp
[
-
3
].
filename
,
yyvsp
[
-
2
].
lineno
);
c_expand_return
(
NULL_TREE
);
;
c_expand_return
(
NULL_TREE
);
;
break
;}
break
;}
case
363
:
case
363
:
#line 19
3
7 "objc-parse.y"
#line 19
4
7 "objc-parse.y"
{
stmt_count
++
;
{
stmt_count
++
;
emit_line_note
(
yyvsp
[
-
4
].
filename
,
yyvsp
[
-
3
].
lineno
);
emit_line_note
(
yyvsp
[
-
4
].
filename
,
yyvsp
[
-
3
].
lineno
);
c_expand_return
(
yyvsp
[
-
1
].
ttype
);
;
c_expand_return
(
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
364
:
case
364
:
#line 19
4
1 "objc-parse.y"
#line 19
5
1 "objc-parse.y"
{
stmt_count
++
;
{
stmt_count
++
;
emit_line_note
(
yyvsp
[
-
7
].
filename
,
yyvsp
[
-
6
].
lineno
);
emit_line_note
(
yyvsp
[
-
7
].
filename
,
yyvsp
[
-
6
].
lineno
);
STRIP_NOPS
(
yyvsp
[
-
2
].
ttype
);
STRIP_NOPS
(
yyvsp
[
-
2
].
ttype
);
...
@@ -3929,7 +3939,7 @@ case 364:
...
@@ -3929,7 +3939,7 @@ case 364:
error
(
"argument of `asm' is not a constant string"
);
;
error
(
"argument of `asm' is not a constant string"
);
;
break
;}
break
;}
case
365
:
case
365
:
#line 19
5
2 "objc-parse.y"
#line 19
6
2 "objc-parse.y"
{
stmt_count
++
;
{
stmt_count
++
;
emit_line_note
(
yyvsp
[
-
9
].
filename
,
yyvsp
[
-
8
].
lineno
);
emit_line_note
(
yyvsp
[
-
9
].
filename
,
yyvsp
[
-
8
].
lineno
);
c_expand_asm_operands
(
yyvsp
[
-
4
].
ttype
,
yyvsp
[
-
2
].
ttype
,
NULL_TREE
,
NULL_TREE
,
c_expand_asm_operands
(
yyvsp
[
-
4
].
ttype
,
yyvsp
[
-
2
].
ttype
,
NULL_TREE
,
NULL_TREE
,
...
@@ -3937,7 +3947,7 @@ case 365:
...
@@ -3937,7 +3947,7 @@ case 365:
input_filename
,
lineno
);
;
input_filename
,
lineno
);
;
break
;}
break
;}
case
366
:
case
366
:
#line 19
5
9 "objc-parse.y"
#line 19
6
9 "objc-parse.y"
{
stmt_count
++
;
{
stmt_count
++
;
emit_line_note
(
yyvsp
[
-
11
].
filename
,
yyvsp
[
-
10
].
lineno
);
emit_line_note
(
yyvsp
[
-
11
].
filename
,
yyvsp
[
-
10
].
lineno
);
c_expand_asm_operands
(
yyvsp
[
-
6
].
ttype
,
yyvsp
[
-
4
].
ttype
,
yyvsp
[
-
2
].
ttype
,
NULL_TREE
,
c_expand_asm_operands
(
yyvsp
[
-
6
].
ttype
,
yyvsp
[
-
4
].
ttype
,
yyvsp
[
-
2
].
ttype
,
NULL_TREE
,
...
@@ -3945,7 +3955,7 @@ case 366:
...
@@ -3945,7 +3955,7 @@ case 366:
input_filename
,
lineno
);
;
input_filename
,
lineno
);
;
break
;}
break
;}
case
367
:
case
367
:
#line 19
6
7 "objc-parse.y"
#line 19
7
7 "objc-parse.y"
{
stmt_count
++
;
{
stmt_count
++
;
emit_line_note
(
yyvsp
[
-
13
].
filename
,
yyvsp
[
-
12
].
lineno
);
emit_line_note
(
yyvsp
[
-
13
].
filename
,
yyvsp
[
-
12
].
lineno
);
c_expand_asm_operands
(
yyvsp
[
-
8
].
ttype
,
yyvsp
[
-
6
].
ttype
,
yyvsp
[
-
4
].
ttype
,
yyvsp
[
-
2
].
ttype
,
c_expand_asm_operands
(
yyvsp
[
-
8
].
ttype
,
yyvsp
[
-
6
].
ttype
,
yyvsp
[
-
4
].
ttype
,
yyvsp
[
-
2
].
ttype
,
...
@@ -3953,7 +3963,7 @@ case 367:
...
@@ -3953,7 +3963,7 @@ case 367:
input_filename
,
lineno
);
;
input_filename
,
lineno
);
;
break
;}
break
;}
case
368
:
case
368
:
#line 19
7
3 "objc-parse.y"
#line 19
8
3 "objc-parse.y"
{
tree
decl
;
{
tree
decl
;
stmt_count
++
;
stmt_count
++
;
emit_line_note
(
yyvsp
[
-
4
].
filename
,
yyvsp
[
-
3
].
lineno
);
emit_line_note
(
yyvsp
[
-
4
].
filename
,
yyvsp
[
-
3
].
lineno
);
...
@@ -3966,7 +3976,7 @@ case 368:
...
@@ -3966,7 +3976,7 @@ case 368:
;
;
break
;}
break
;}
case
369
:
case
369
:
#line 19
8
4 "objc-parse.y"
#line 19
9
4 "objc-parse.y"
{
if
(
pedantic
)
{
if
(
pedantic
)
pedwarn
(
"ANSI C forbids `goto *expr;'"
);
pedwarn
(
"ANSI C forbids `goto *expr;'"
);
stmt_count
++
;
stmt_count
++
;
...
@@ -3974,7 +3984,7 @@ case 369:
...
@@ -3974,7 +3984,7 @@ case 369:
expand_computed_goto
(
convert
(
ptr_type_node
,
yyvsp
[
-
1
].
ttype
));
;
expand_computed_goto
(
convert
(
ptr_type_node
,
yyvsp
[
-
1
].
ttype
));
;
break
;}
break
;}
case
372
:
case
372
:
#line
199
9 "objc-parse.y"
#line
200
9 "objc-parse.y"
{
{
/* The value returned by this action is */
/* The value returned by this action is */
/* 1 if everything is OK */
/* 1 if everything is OK */
...
@@ -3997,14 +4007,14 @@ case 372:
...
@@ -3997,14 +4007,14 @@ case 372:
;
;
break
;}
break
;}
case
373
:
case
373
:
#line 20
2
0 "objc-parse.y"
#line 20
3
0 "objc-parse.y"
{
{
if
(
yyvsp
[
-
1
].
itype
)
if
(
yyvsp
[
-
1
].
itype
)
iterator_for_loop_end
(
yyvsp
[
-
3
].
ttype
);
iterator_for_loop_end
(
yyvsp
[
-
3
].
ttype
);
;
;
break
;}
break
;}
case
374
:
case
374
:
#line 20
5
5 "objc-parse.y"
#line 20
6
5 "objc-parse.y"
{
register
tree
value
=
check_case_value
(
yyvsp
[
-
1
].
ttype
);
{
register
tree
value
=
check_case_value
(
yyvsp
[
-
1
].
ttype
);
register
tree
label
register
tree
label
=
build_decl
(
LABEL_DECL
,
NULL_TREE
,
NULL_TREE
);
=
build_decl
(
LABEL_DECL
,
NULL_TREE
,
NULL_TREE
);
...
@@ -4037,7 +4047,7 @@ case 374:
...
@@ -4037,7 +4047,7 @@ case 374:
position_after_white_space
();
;
position_after_white_space
();
;
break
;}
break
;}
case
375
:
case
375
:
#line 20
8
6 "objc-parse.y"
#line 20
9
6 "objc-parse.y"
{
register
tree
value1
=
check_case_value
(
yyvsp
[
-
3
].
ttype
);
{
register
tree
value1
=
check_case_value
(
yyvsp
[
-
3
].
ttype
);
register
tree
value2
=
check_case_value
(
yyvsp
[
-
1
].
ttype
);
register
tree
value2
=
check_case_value
(
yyvsp
[
-
1
].
ttype
);
register
tree
label
register
tree
label
...
@@ -4070,7 +4080,7 @@ case 375:
...
@@ -4070,7 +4080,7 @@ case 375:
position_after_white_space
();
;
position_after_white_space
();
;
break
;}
break
;}
case
376
:
case
376
:
#line 21
1
7 "objc-parse.y"
#line 21
2
7 "objc-parse.y"
{
{
tree
duplicate
;
tree
duplicate
;
register
tree
label
register
tree
label
...
@@ -4087,7 +4097,7 @@ case 376:
...
@@ -4087,7 +4097,7 @@ case 376:
position_after_white_space
();
;
position_after_white_space
();
;
break
;}
break
;}
case
377
:
case
377
:
#line 21
3
2 "objc-parse.y"
#line 21
4
2 "objc-parse.y"
{
tree
label
=
define_label
(
input_filename
,
lineno
,
yyvsp
[
-
2
].
ttype
);
{
tree
label
=
define_label
(
input_filename
,
lineno
,
yyvsp
[
-
2
].
ttype
);
stmt_count
++
;
stmt_count
++
;
emit_nop
();
emit_nop
();
...
@@ -4099,52 +4109,52 @@ case 377:
...
@@ -4099,52 +4109,52 @@ case 377:
position_after_white_space
();
;
position_after_white_space
();
;
break
;}
break
;}
case
378
:
case
378
:
#line 21
4
7 "objc-parse.y"
#line 21
5
7 "objc-parse.y"
{
emit_line_note
(
input_filename
,
lineno
);
{
emit_line_note
(
input_filename
,
lineno
);
yyval
.
ttype
=
NULL_TREE
;
;
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
379
:
case
379
:
#line 21
5
0 "objc-parse.y"
#line 21
6
0 "objc-parse.y"
{
emit_line_note
(
input_filename
,
lineno
);
;
{
emit_line_note
(
input_filename
,
lineno
);
;
break
;}
break
;}
case
380
:
case
380
:
#line 21
5
5 "objc-parse.y"
#line 21
6
5 "objc-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
382
:
case
382
:
#line 21
6
2 "objc-parse.y"
#line 21
7
2 "objc-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
385
:
case
385
:
#line 21
6
9 "objc-parse.y"
#line 21
7
9 "objc-parse.y"
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
386
:
case
386
:
#line 21
7
4 "objc-parse.y"
#line 21
8
4 "objc-parse.y"
{
yyval
.
ttype
=
build_tree_list
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
build_tree_list
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
387
:
case
387
:
#line 21
7
9 "objc-parse.y"
#line 21
8
9 "objc-parse.y"
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
combine_strings
(
yyvsp
[
0
].
ttype
),
NULL_TREE
);
;
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
combine_strings
(
yyvsp
[
0
].
ttype
),
NULL_TREE
);
;
break
;}
break
;}
case
388
:
case
388
:
#line 21
8
1 "objc-parse.y"
#line 21
9
1 "objc-parse.y"
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
combine_strings
(
yyvsp
[
0
].
ttype
),
yyvsp
[
-
2
].
ttype
);
;
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
combine_strings
(
yyvsp
[
0
].
ttype
),
yyvsp
[
-
2
].
ttype
);
;
break
;}
break
;}
case
389
:
case
389
:
#line 21
8
7 "objc-parse.y"
#line 21
9
7 "objc-parse.y"
{
pushlevel
(
0
);
{
pushlevel
(
0
);
clear_parm_order
();
clear_parm_order
();
declare_parm_level
(
0
);
;
declare_parm_level
(
0
);
;
break
;}
break
;}
case
390
:
case
390
:
#line 2
19
1 "objc-parse.y"
#line 2
20
1 "objc-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
parmlist_tags_warning
();
parmlist_tags_warning
();
poplevel
(
0
,
0
,
0
);
;
poplevel
(
0
,
0
,
0
);
;
break
;}
break
;}
case
392
:
case
392
:
#line 2
19
9 "objc-parse.y"
#line 2
20
9 "objc-parse.y"
{
tree
parm
;
{
tree
parm
;
if
(
pedantic
)
if
(
pedantic
)
pedwarn
(
"ANSI C forbids forward parameter declarations"
);
pedwarn
(
"ANSI C forbids forward parameter declarations"
);
...
@@ -4154,19 +4164,19 @@ case 392:
...
@@ -4154,19 +4164,19 @@ case 392:
clear_parm_order
();
;
clear_parm_order
();
;
break
;}
break
;}
case
393
:
case
393
:
#line 22
0
7 "objc-parse.y"
#line 22
1
7 "objc-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
394
:
case
394
:
#line 22
0
9 "objc-parse.y"
#line 22
1
9 "objc-parse.y"
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
NULL_TREE
,
NULL_TREE
);
;
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
NULL_TREE
,
NULL_TREE
);
;
break
;}
break
;}
case
395
:
case
395
:
#line 22
1
5 "objc-parse.y"
#line 22
2
5 "objc-parse.y"
{
yyval
.
ttype
=
get_parm_info
(
0
);
;
{
yyval
.
ttype
=
get_parm_info
(
0
);
;
break
;}
break
;}
case
396
:
case
396
:
#line 22
1
7 "objc-parse.y"
#line 22
2
7 "objc-parse.y"
{
yyval
.
ttype
=
get_parm_info
(
0
);
{
yyval
.
ttype
=
get_parm_info
(
0
);
/* Gcc used to allow this as an extension. However, it does
/* Gcc used to allow this as an extension. However, it does
not work for all targets, and thus has been disabled.
not work for all targets, and thus has been disabled.
...
@@ -4178,23 +4188,23 @@ case 396:
...
@@ -4178,23 +4188,23 @@ case 396:
;
;
break
;}
break
;}
case
397
:
case
397
:
#line 22
2
7 "objc-parse.y"
#line 22
3
7 "objc-parse.y"
{
yyval
.
ttype
=
get_parm_info
(
1
);
;
{
yyval
.
ttype
=
get_parm_info
(
1
);
;
break
;}
break
;}
case
398
:
case
398
:
#line 22
2
9 "objc-parse.y"
#line 22
3
9 "objc-parse.y"
{
yyval
.
ttype
=
get_parm_info
(
0
);
;
{
yyval
.
ttype
=
get_parm_info
(
0
);
;
break
;}
break
;}
case
399
:
case
399
:
#line 22
3
4 "objc-parse.y"
#line 22
4
4 "objc-parse.y"
{
push_parm_decl
(
yyvsp
[
0
].
ttype
);
;
{
push_parm_decl
(
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
400
:
case
400
:
#line 22
3
6 "objc-parse.y"
#line 22
4
6 "objc-parse.y"
{
push_parm_decl
(
yyvsp
[
0
].
ttype
);
;
{
push_parm_decl
(
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
401
:
case
401
:
#line 22
4
3 "objc-parse.y"
#line 22
5
3 "objc-parse.y"
{
yyval
.
ttype
=
build_tree_list
(
build_tree_list
(
current_declspecs
,
{
yyval
.
ttype
=
build_tree_list
(
build_tree_list
(
current_declspecs
,
yyvsp
[
-
1
].
ttype
),
yyvsp
[
-
1
].
ttype
),
build_tree_list
(
prefix_attributes
,
build_tree_list
(
prefix_attributes
,
...
@@ -4205,7 +4215,7 @@ case 401:
...
@@ -4205,7 +4215,7 @@ case 401:
resume_momentary
(
yyvsp
[
-
2
].
itype
);
;
resume_momentary
(
yyvsp
[
-
2
].
itype
);
;
break
;}
break
;}
case
402
:
case
402
:
#line 22
5
2 "objc-parse.y"
#line 22
6
2 "objc-parse.y"
{
yyval
.
ttype
=
build_tree_list
(
build_tree_list
(
current_declspecs
,
{
yyval
.
ttype
=
build_tree_list
(
build_tree_list
(
current_declspecs
,
yyvsp
[
-
1
].
ttype
),
yyvsp
[
-
1
].
ttype
),
build_tree_list
(
prefix_attributes
,
build_tree_list
(
prefix_attributes
,
...
@@ -4216,7 +4226,7 @@ case 402:
...
@@ -4216,7 +4226,7 @@ case 402:
resume_momentary
(
yyvsp
[
-
2
].
itype
);
;
resume_momentary
(
yyvsp
[
-
2
].
itype
);
;
break
;}
break
;}
case
403
:
case
403
:
#line 22
6
1 "objc-parse.y"
#line 22
7
1 "objc-parse.y"
{
yyval
.
ttype
=
build_tree_list
(
build_tree_list
(
current_declspecs
,
{
yyval
.
ttype
=
build_tree_list
(
build_tree_list
(
current_declspecs
,
yyvsp
[
-
1
].
ttype
),
yyvsp
[
-
1
].
ttype
),
build_tree_list
(
prefix_attributes
,
build_tree_list
(
prefix_attributes
,
...
@@ -4227,7 +4237,7 @@ case 403:
...
@@ -4227,7 +4237,7 @@ case 403:
resume_momentary
(
yyvsp
[
-
2
].
itype
);
;
resume_momentary
(
yyvsp
[
-
2
].
itype
);
;
break
;}
break
;}
case
404
:
case
404
:
#line 22
7
0 "objc-parse.y"
#line 22
8
0 "objc-parse.y"
{
yyval
.
ttype
=
build_tree_list
(
build_tree_list
(
current_declspecs
,
{
yyval
.
ttype
=
build_tree_list
(
build_tree_list
(
current_declspecs
,
yyvsp
[
-
1
].
ttype
),
yyvsp
[
-
1
].
ttype
),
build_tree_list
(
prefix_attributes
,
build_tree_list
(
prefix_attributes
,
...
@@ -4238,7 +4248,7 @@ case 404:
...
@@ -4238,7 +4248,7 @@ case 404:
resume_momentary
(
yyvsp
[
-
2
].
itype
);
;
resume_momentary
(
yyvsp
[
-
2
].
itype
);
;
break
;}
break
;}
case
405
:
case
405
:
#line 22
8
0 "objc-parse.y"
#line 22
9
0 "objc-parse.y"
{
yyval
.
ttype
=
build_tree_list
(
build_tree_list
(
current_declspecs
,
{
yyval
.
ttype
=
build_tree_list
(
build_tree_list
(
current_declspecs
,
yyvsp
[
-
1
].
ttype
),
yyvsp
[
-
1
].
ttype
),
build_tree_list
(
prefix_attributes
,
build_tree_list
(
prefix_attributes
,
...
@@ -4249,19 +4259,19 @@ case 405:
...
@@ -4249,19 +4259,19 @@ case 405:
resume_momentary
(
yyvsp
[
-
2
].
itype
);
;
resume_momentary
(
yyvsp
[
-
2
].
itype
);
;
break
;}
break
;}
case
406
:
case
406
:
#line 2
29
4 "objc-parse.y"
#line 2
30
4 "objc-parse.y"
{
pushlevel
(
0
);
{
pushlevel
(
0
);
clear_parm_order
();
clear_parm_order
();
declare_parm_level
(
1
);
;
declare_parm_level
(
1
);
;
break
;}
break
;}
case
407
:
case
407
:
#line 2
29
8 "objc-parse.y"
#line 2
30
8 "objc-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
parmlist_tags_warning
();
parmlist_tags_warning
();
poplevel
(
0
,
0
,
0
);
;
poplevel
(
0
,
0
,
0
);
;
break
;}
break
;}
case
409
:
case
409
:
#line 23
0
6 "objc-parse.y"
#line 23
1
6 "objc-parse.y"
{
tree
t
;
{
tree
t
;
for
(
t
=
yyvsp
[
-
1
].
ttype
;
t
;
t
=
TREE_CHAIN
(
t
))
for
(
t
=
yyvsp
[
-
1
].
ttype
;
t
;
t
=
TREE_CHAIN
(
t
))
if
(
TREE_VALUE
(
t
)
==
NULL_TREE
)
if
(
TREE_VALUE
(
t
)
==
NULL_TREE
)
...
@@ -4269,28 +4279,28 @@ case 409:
...
@@ -4269,28 +4279,28 @@ case 409:
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
410
:
case
410
:
#line 23
1
6 "objc-parse.y"
#line 23
2
6 "objc-parse.y"
{
yyval
.
ttype
=
build_tree_list
(
NULL_TREE
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
build_tree_list
(
NULL_TREE
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
411
:
case
411
:
#line 23
1
8 "objc-parse.y"
#line 23
2
8 "objc-parse.y"
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
2
].
ttype
,
build_tree_list
(
NULL_TREE
,
yyvsp
[
0
].
ttype
));
;
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
2
].
ttype
,
build_tree_list
(
NULL_TREE
,
yyvsp
[
0
].
ttype
));
;
break
;}
break
;}
case
412
:
case
412
:
#line 23
2
4 "objc-parse.y"
#line 23
3
4 "objc-parse.y"
{
yyval
.
ttype
=
build_tree_list
(
NULL_TREE
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
build_tree_list
(
NULL_TREE
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
413
:
case
413
:
#line 23
2
6 "objc-parse.y"
#line 23
3
6 "objc-parse.y"
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
2
].
ttype
,
build_tree_list
(
NULL_TREE
,
yyvsp
[
0
].
ttype
));
;
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
2
].
ttype
,
build_tree_list
(
NULL_TREE
,
yyvsp
[
0
].
ttype
));
;
break
;}
break
;}
case
414
:
case
414
:
#line 23
3
1 "objc-parse.y"
#line 23
4
1 "objc-parse.y"
{
yyval
.
itype
=
pedantic
;
{
yyval
.
itype
=
pedantic
;
pedantic
=
0
;
;
pedantic
=
0
;
;
break
;}
break
;}
case
420
:
case
420
:
#line 23
4
4 "objc-parse.y"
#line 23
5
4 "objc-parse.y"
{
{
if
(
objc_implementation_context
)
if
(
objc_implementation_context
)
{
{
...
@@ -4303,27 +4313,27 @@ case 420:
...
@@ -4303,27 +4313,27 @@ case 420:
;
;
break
;}
break
;}
case
421
:
case
421
:
#line 23
5
9 "objc-parse.y"
#line 23
6
9 "objc-parse.y"
{
yyval
.
ttype
=
build_tree_list
(
NULL_TREE
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
build_tree_list
(
NULL_TREE
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
422
:
case
422
:
#line 23
6
1 "objc-parse.y"
#line 23
7
1 "objc-parse.y"
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
2
].
ttype
,
build_tree_list
(
NULL_TREE
,
yyvsp
[
0
].
ttype
));
;
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
2
].
ttype
,
build_tree_list
(
NULL_TREE
,
yyvsp
[
0
].
ttype
));
;
break
;}
break
;}
case
423
:
case
423
:
#line 23
6
6 "objc-parse.y"
#line 23
7
6 "objc-parse.y"
{
{
objc_declare_class
(
yyvsp
[
-
1
].
ttype
);
objc_declare_class
(
yyvsp
[
-
1
].
ttype
);
;
;
break
;}
break
;}
case
424
:
case
424
:
#line 23
7
2 "objc-parse.y"
#line 23
8
2 "objc-parse.y"
{
{
objc_declare_alias
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
-
1
].
ttype
);
objc_declare_alias
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
;
break
;}
break
;}
case
425
:
case
425
:
#line 23
7
8 "objc-parse.y"
#line 23
8
8 "objc-parse.y"
{
{
objc_interface_context
=
objc_ivar_context
objc_interface_context
=
objc_ivar_context
=
start_class
(
CLASS_INTERFACE_TYPE
,
yyvsp
[
-
2
].
ttype
,
NULL_TREE
,
yyvsp
[
-
1
].
ttype
);
=
start_class
(
CLASS_INTERFACE_TYPE
,
yyvsp
[
-
2
].
ttype
,
NULL_TREE
,
yyvsp
[
-
1
].
ttype
);
...
@@ -4331,20 +4341,20 @@ case 425:
...
@@ -4331,20 +4341,20 @@ case 425:
;
;
break
;}
break
;}
case
426
:
case
426
:
#line 23
8
4 "objc-parse.y"
#line 23
9
4 "objc-parse.y"
{
{
continue_class
(
objc_interface_context
);
continue_class
(
objc_interface_context
);
;
;
break
;}
break
;}
case
427
:
case
427
:
#line 23
8
9 "objc-parse.y"
#line 23
9
9 "objc-parse.y"
{
{
finish_class
(
objc_interface_context
);
finish_class
(
objc_interface_context
);
objc_interface_context
=
NULL_TREE
;
objc_interface_context
=
NULL_TREE
;
;
;
break
;}
break
;}
case
428
:
case
428
:
#line 2
39
5 "objc-parse.y"
#line 2
40
5 "objc-parse.y"
{
{
objc_interface_context
objc_interface_context
=
start_class
(
CLASS_INTERFACE_TYPE
,
yyvsp
[
-
1
].
ttype
,
NULL_TREE
,
yyvsp
[
0
].
ttype
);
=
start_class
(
CLASS_INTERFACE_TYPE
,
yyvsp
[
-
1
].
ttype
,
NULL_TREE
,
yyvsp
[
0
].
ttype
);
...
@@ -4352,14 +4362,14 @@ case 428:
...
@@ -4352,14 +4362,14 @@ case 428:
;
;
break
;}
break
;}
case
429
:
case
429
:
#line 24
0
2 "objc-parse.y"
#line 24
1
2 "objc-parse.y"
{
{
finish_class
(
objc_interface_context
);
finish_class
(
objc_interface_context
);
objc_interface_context
=
NULL_TREE
;
objc_interface_context
=
NULL_TREE
;
;
;
break
;}
break
;}
case
430
:
case
430
:
#line 24
0
8 "objc-parse.y"
#line 24
1
8 "objc-parse.y"
{
{
objc_interface_context
=
objc_ivar_context
objc_interface_context
=
objc_ivar_context
=
start_class
(
CLASS_INTERFACE_TYPE
,
yyvsp
[
-
4
].
ttype
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
-
1
].
ttype
);
=
start_class
(
CLASS_INTERFACE_TYPE
,
yyvsp
[
-
4
].
ttype
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
-
1
].
ttype
);
...
@@ -4367,20 +4377,20 @@ case 430:
...
@@ -4367,20 +4377,20 @@ case 430:
;
;
break
;}
break
;}
case
431
:
case
431
:
#line 24
1
4 "objc-parse.y"
#line 24
2
4 "objc-parse.y"
{
{
continue_class
(
objc_interface_context
);
continue_class
(
objc_interface_context
);
;
;
break
;}
break
;}
case
432
:
case
432
:
#line 24
1
9 "objc-parse.y"
#line 24
2
9 "objc-parse.y"
{
{
finish_class
(
objc_interface_context
);
finish_class
(
objc_interface_context
);
objc_interface_context
=
NULL_TREE
;
objc_interface_context
=
NULL_TREE
;
;
;
break
;}
break
;}
case
433
:
case
433
:
#line 24
2
5 "objc-parse.y"
#line 24
3
5 "objc-parse.y"
{
{
objc_interface_context
objc_interface_context
=
start_class
(
CLASS_INTERFACE_TYPE
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
=
start_class
(
CLASS_INTERFACE_TYPE
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
...
@@ -4388,14 +4398,14 @@ case 433:
...
@@ -4388,14 +4398,14 @@ case 433:
;
;
break
;}
break
;}
case
434
:
case
434
:
#line 24
3
2 "objc-parse.y"
#line 24
4
2 "objc-parse.y"
{
{
finish_class
(
objc_interface_context
);
finish_class
(
objc_interface_context
);
objc_interface_context
=
NULL_TREE
;
objc_interface_context
=
NULL_TREE
;
;
;
break
;}
break
;}
case
435
:
case
435
:
#line 24
3
8 "objc-parse.y"
#line 24
4
8 "objc-parse.y"
{
{
objc_implementation_context
=
objc_ivar_context
objc_implementation_context
=
objc_ivar_context
=
start_class
(
CLASS_IMPLEMENTATION_TYPE
,
yyvsp
[
-
1
].
ttype
,
NULL_TREE
,
NULL_TREE
);
=
start_class
(
CLASS_IMPLEMENTATION_TYPE
,
yyvsp
[
-
1
].
ttype
,
NULL_TREE
,
NULL_TREE
);
...
@@ -4403,14 +4413,14 @@ case 435:
...
@@ -4403,14 +4413,14 @@ case 435:
;
;
break
;}
break
;}
case
436
:
case
436
:
#line 24
4
4 "objc-parse.y"
#line 24
5
4 "objc-parse.y"
{
{
objc_ivar_chain
objc_ivar_chain
=
continue_class
(
objc_implementation_context
);
=
continue_class
(
objc_implementation_context
);
;
;
break
;}
break
;}
case
437
:
case
437
:
#line 24
5
0 "objc-parse.y"
#line 24
6
0 "objc-parse.y"
{
{
objc_implementation_context
objc_implementation_context
=
start_class
(
CLASS_IMPLEMENTATION_TYPE
,
yyvsp
[
0
].
ttype
,
NULL_TREE
,
NULL_TREE
);
=
start_class
(
CLASS_IMPLEMENTATION_TYPE
,
yyvsp
[
0
].
ttype
,
NULL_TREE
,
NULL_TREE
);
...
@@ -4419,7 +4429,7 @@ case 437:
...
@@ -4419,7 +4429,7 @@ case 437:
;
;
break
;}
break
;}
case
438
:
case
438
:
#line 24
5
8 "objc-parse.y"
#line 24
6
8 "objc-parse.y"
{
{
objc_implementation_context
=
objc_ivar_context
objc_implementation_context
=
objc_ivar_context
=
start_class
(
CLASS_IMPLEMENTATION_TYPE
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
,
NULL_TREE
);
=
start_class
(
CLASS_IMPLEMENTATION_TYPE
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
,
NULL_TREE
);
...
@@ -4427,14 +4437,14 @@ case 438:
...
@@ -4427,14 +4437,14 @@ case 438:
;
;
break
;}
break
;}
case
439
:
case
439
:
#line 24
6
4 "objc-parse.y"
#line 24
7
4 "objc-parse.y"
{
{
objc_ivar_chain
objc_ivar_chain
=
continue_class
(
objc_implementation_context
);
=
continue_class
(
objc_implementation_context
);
;
;
break
;}
break
;}
case
440
:
case
440
:
#line 24
7
0 "objc-parse.y"
#line 24
8
0 "objc-parse.y"
{
{
objc_implementation_context
objc_implementation_context
=
start_class
(
CLASS_IMPLEMENTATION_TYPE
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
,
NULL_TREE
);
=
start_class
(
CLASS_IMPLEMENTATION_TYPE
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
,
NULL_TREE
);
...
@@ -4443,7 +4453,7 @@ case 440:
...
@@ -4443,7 +4453,7 @@ case 440:
;
;
break
;}
break
;}
case
441
:
case
441
:
#line 24
7
8 "objc-parse.y"
#line 24
8
8 "objc-parse.y"
{
{
objc_interface_context
objc_interface_context
=
start_class
(
CATEGORY_INTERFACE_TYPE
,
yyvsp
[
-
4
].
ttype
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
=
start_class
(
CATEGORY_INTERFACE_TYPE
,
yyvsp
[
-
4
].
ttype
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
...
@@ -4451,14 +4461,14 @@ case 441:
...
@@ -4451,14 +4461,14 @@ case 441:
;
;
break
;}
break
;}
case
442
:
case
442
:
#line 24
8
5 "objc-parse.y"
#line 24
9
5 "objc-parse.y"
{
{
finish_class
(
objc_interface_context
);
finish_class
(
objc_interface_context
);
objc_interface_context
=
NULL_TREE
;
objc_interface_context
=
NULL_TREE
;
;
;
break
;}
break
;}
case
443
:
case
443
:
#line 2
49
1 "objc-parse.y"
#line 2
50
1 "objc-parse.y"
{
{
objc_implementation_context
objc_implementation_context
=
start_class
(
CATEGORY_IMPLEMENTATION_TYPE
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
,
NULL_TREE
);
=
start_class
(
CATEGORY_IMPLEMENTATION_TYPE
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
,
NULL_TREE
);
...
@@ -4467,7 +4477,7 @@ case 443:
...
@@ -4467,7 +4477,7 @@ case 443:
;
;
break
;}
break
;}
case
444
:
case
444
:
#line 25
0
1 "objc-parse.y"
#line 25
1
1 "objc-parse.y"
{
{
remember_protocol_qualifiers
();
remember_protocol_qualifiers
();
objc_interface_context
objc_interface_context
...
@@ -4475,7 +4485,7 @@ case 444:
...
@@ -4475,7 +4485,7 @@ case 444:
;
;
break
;}
break
;}
case
445
:
case
445
:
#line 25
0
7 "objc-parse.y"
#line 25
1
7 "objc-parse.y"
{
{
forget_protocol_qualifiers
();
forget_protocol_qualifiers
();
finish_protocol
(
objc_interface_context
);
finish_protocol
(
objc_interface_context
);
...
@@ -4483,13 +4493,13 @@ case 445:
...
@@ -4483,13 +4493,13 @@ case 445:
;
;
break
;}
break
;}
case
446
:
case
446
:
#line 25
1
6 "objc-parse.y"
#line 25
2
6 "objc-parse.y"
{
{
yyval
.
ttype
=
NULL_TREE
;
yyval
.
ttype
=
NULL_TREE
;
;
;
break
;}
break
;}
case
448
:
case
448
:
#line 25
2
4 "objc-parse.y"
#line 25
3
4 "objc-parse.y"
{
{
if
(
yyvsp
[
-
2
].
code
==
LT_EXPR
&&
yyvsp
[
0
].
code
==
GT_EXPR
)
if
(
yyvsp
[
-
2
].
code
==
LT_EXPR
&&
yyvsp
[
0
].
code
==
GT_EXPR
)
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
...
@@ -4498,32 +4508,32 @@ case 448:
...
@@ -4498,32 +4508,32 @@ case 448:
;
;
break
;}
break
;}
case
451
:
case
451
:
#line 25
3
8 "objc-parse.y"
#line 25
4
8 "objc-parse.y"
{
objc_public_flag
=
2
;
;
{
objc_public_flag
=
2
;
;
break
;}
break
;}
case
452
:
case
452
:
#line 25
3
9 "objc-parse.y"
#line 25
4
9 "objc-parse.y"
{
objc_public_flag
=
0
;
;
{
objc_public_flag
=
0
;
;
break
;}
break
;}
case
453
:
case
453
:
#line 25
4
0 "objc-parse.y"
#line 25
5
0 "objc-parse.y"
{
objc_public_flag
=
1
;
;
{
objc_public_flag
=
1
;
;
break
;}
break
;}
case
454
:
case
454
:
#line 25
4
5 "objc-parse.y"
#line 25
5
5 "objc-parse.y"
{
{
yyval
.
ttype
=
NULL_TREE
;
yyval
.
ttype
=
NULL_TREE
;
;
;
break
;}
break
;}
case
456
:
case
456
:
#line 25
5
0 "objc-parse.y"
#line 25
6
0 "objc-parse.y"
{
{
if
(
pedantic
)
if
(
pedantic
)
pedwarn
(
"extra semicolon in struct or union specified"
);
pedwarn
(
"extra semicolon in struct or union specified"
);
;
;
break
;}
break
;}
case
457
:
case
457
:
#line 25
6
8 "objc-parse.y"
#line 25
7
8 "objc-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
...
@@ -4531,7 +4541,7 @@ case 457:
...
@@ -4531,7 +4541,7 @@ case 457:
resume_momentary
(
yyvsp
[
-
1
].
itype
);
;
resume_momentary
(
yyvsp
[
-
1
].
itype
);
;
break
;}
break
;}
case
458
:
case
458
:
#line 25
7
4 "objc-parse.y"
#line 25
8
4 "objc-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
...
@@ -4539,15 +4549,15 @@ case 458:
...
@@ -4539,15 +4549,15 @@ case 458:
resume_momentary
(
yyvsp
[
-
1
].
itype
);
;
resume_momentary
(
yyvsp
[
-
1
].
itype
);
;
break
;}
break
;}
case
459
:
case
459
:
#line 25
8
0 "objc-parse.y"
#line 25
9
0 "objc-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
460
:
case
460
:
#line 25
8
5 "objc-parse.y"
#line 25
9
5 "objc-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
463
:
case
463
:
#line 2
59
2 "objc-parse.y"
#line 2
60
2 "objc-parse.y"
{
{
yyval
.
ttype
=
add_instance_variable
(
objc_ivar_context
,
yyval
.
ttype
=
add_instance_variable
(
objc_ivar_context
,
objc_public_flag
,
objc_public_flag
,
...
@@ -4556,7 +4566,7 @@ case 463:
...
@@ -4556,7 +4566,7 @@ case 463:
;
;
break
;}
break
;}
case
464
:
case
464
:
#line 2
59
9 "objc-parse.y"
#line 2
60
9 "objc-parse.y"
{
{
yyval
.
ttype
=
add_instance_variable
(
objc_ivar_context
,
yyval
.
ttype
=
add_instance_variable
(
objc_ivar_context
,
objc_public_flag
,
objc_public_flag
,
...
@@ -4564,7 +4574,7 @@ case 464:
...
@@ -4564,7 +4574,7 @@ case 464:
;
;
break
;}
break
;}
case
465
:
case
465
:
#line 26
0
5 "objc-parse.y"
#line 26
1
5 "objc-parse.y"
{
{
yyval
.
ttype
=
add_instance_variable
(
objc_ivar_context
,
yyval
.
ttype
=
add_instance_variable
(
objc_ivar_context
,
objc_public_flag
,
objc_public_flag
,
...
@@ -4573,7 +4583,7 @@ case 465:
...
@@ -4573,7 +4583,7 @@ case 465:
;
;
break
;}
break
;}
case
466
:
case
466
:
#line 26
1
5 "objc-parse.y"
#line 26
2
5 "objc-parse.y"
{
{
remember_protocol_qualifiers
();
remember_protocol_qualifiers
();
if
(
objc_implementation_context
)
if
(
objc_implementation_context
)
...
@@ -4583,7 +4593,7 @@ case 466:
...
@@ -4583,7 +4593,7 @@ case 466:
;
;
break
;}
break
;}
case
467
:
case
467
:
#line 26
2
3 "objc-parse.y"
#line 26
3
3 "objc-parse.y"
{
{
forget_protocol_qualifiers
();
forget_protocol_qualifiers
();
add_class_method
(
objc_implementation_context
,
yyvsp
[
0
].
ttype
);
add_class_method
(
objc_implementation_context
,
yyvsp
[
0
].
ttype
);
...
@@ -4592,20 +4602,20 @@ case 467:
...
@@ -4592,20 +4602,20 @@ case 467:
;
;
break
;}
break
;}
case
468
:
case
468
:
#line 26
3
0 "objc-parse.y"
#line 26
4
0 "objc-parse.y"
{
{
continue_method_def
();
continue_method_def
();
;
;
break
;}
break
;}
case
469
:
case
469
:
#line 26
3
4 "objc-parse.y"
#line 26
4
4 "objc-parse.y"
{
{
finish_method_def
();
finish_method_def
();
objc_method_context
=
NULL_TREE
;
objc_method_context
=
NULL_TREE
;
;
;
break
;}
break
;}
case
470
:
case
470
:
#line 26
4
0 "objc-parse.y"
#line 26
5
0 "objc-parse.y"
{
{
remember_protocol_qualifiers
();
remember_protocol_qualifiers
();
if
(
objc_implementation_context
)
if
(
objc_implementation_context
)
...
@@ -4615,7 +4625,7 @@ case 470:
...
@@ -4615,7 +4625,7 @@ case 470:
;
;
break
;}
break
;}
case
471
:
case
471
:
#line 26
4
8 "objc-parse.y"
#line 26
5
8 "objc-parse.y"
{
{
forget_protocol_qualifiers
();
forget_protocol_qualifiers
();
add_instance_method
(
objc_implementation_context
,
yyvsp
[
0
].
ttype
);
add_instance_method
(
objc_implementation_context
,
yyvsp
[
0
].
ttype
);
...
@@ -4624,28 +4634,28 @@ case 471:
...
@@ -4624,28 +4634,28 @@ case 471:
;
;
break
;}
break
;}
case
472
:
case
472
:
#line 26
5
5 "objc-parse.y"
#line 26
6
5 "objc-parse.y"
{
{
continue_method_def
();
continue_method_def
();
;
;
break
;}
break
;}
case
473
:
case
473
:
#line 26
5
9 "objc-parse.y"
#line 26
6
9 "objc-parse.y"
{
{
finish_method_def
();
finish_method_def
();
objc_method_context
=
NULL_TREE
;
objc_method_context
=
NULL_TREE
;
;
;
break
;}
break
;}
case
475
:
case
475
:
#line 26
7
1 "objc-parse.y"
#line 26
8
1 "objc-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
480
:
case
480
:
#line 26
7
8 "objc-parse.y"
#line 26
8
8 "objc-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
484
:
case
484
:
#line 26
8
8 "objc-parse.y"
#line 26
9
8 "objc-parse.y"
{
{
/* Remember protocol qualifiers in prototypes. */
/* Remember protocol qualifiers in prototypes. */
remember_protocol_qualifiers
();
remember_protocol_qualifiers
();
...
@@ -4653,7 +4663,7 @@ case 484:
...
@@ -4653,7 +4663,7 @@ case 484:
;
;
break
;}
break
;}
case
485
:
case
485
:
#line 2
69
4 "objc-parse.y"
#line 2
70
4 "objc-parse.y"
{
{
/* Forget protocol qualifiers here. */
/* Forget protocol qualifiers here. */
forget_protocol_qualifiers
();
forget_protocol_qualifiers
();
...
@@ -4661,7 +4671,7 @@ case 485:
...
@@ -4661,7 +4671,7 @@ case 485:
;
;
break
;}
break
;}
case
487
:
case
487
:
#line 27
0
2 "objc-parse.y"
#line 27
1
2 "objc-parse.y"
{
{
/* Remember protocol qualifiers in prototypes. */
/* Remember protocol qualifiers in prototypes. */
remember_protocol_qualifiers
();
remember_protocol_qualifiers
();
...
@@ -4669,7 +4679,7 @@ case 487:
...
@@ -4669,7 +4679,7 @@ case 487:
;
;
break
;}
break
;}
case
488
:
case
488
:
#line 27
0
8 "objc-parse.y"
#line 27
1
8 "objc-parse.y"
{
{
/* Forget protocol qualifiers here. */
/* Forget protocol qualifiers here. */
forget_protocol_qualifiers
();
forget_protocol_qualifiers
();
...
@@ -4677,94 +4687,94 @@ case 488:
...
@@ -4677,94 +4687,94 @@ case 488:
;
;
break
;}
break
;}
case
490
:
case
490
:
#line 27
1
8 "objc-parse.y"
#line 27
2
8 "objc-parse.y"
{
{
yyval
.
ttype
=
build_method_decl
(
objc_inherit_code
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
,
NULL_TREE
);
yyval
.
ttype
=
build_method_decl
(
objc_inherit_code
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
;
break
;}
break
;}
case
491
:
case
491
:
#line 27
2
3 "objc-parse.y"
#line 27
3
3 "objc-parse.y"
{
{
yyval
.
ttype
=
build_method_decl
(
objc_inherit_code
,
NULL_TREE
,
yyvsp
[
0
].
ttype
,
NULL_TREE
);
yyval
.
ttype
=
build_method_decl
(
objc_inherit_code
,
NULL_TREE
,
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
;
break
;}
break
;}
case
492
:
case
492
:
#line 27
2
8 "objc-parse.y"
#line 27
3
8 "objc-parse.y"
{
{
yyval
.
ttype
=
build_method_decl
(
objc_inherit_code
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
yyval
.
ttype
=
build_method_decl
(
objc_inherit_code
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
;
break
;}
break
;}
case
493
:
case
493
:
#line 27
3
3 "objc-parse.y"
#line 27
4
3 "objc-parse.y"
{
{
yyval
.
ttype
=
build_method_decl
(
objc_inherit_code
,
NULL_TREE
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
yyval
.
ttype
=
build_method_decl
(
objc_inherit_code
,
NULL_TREE
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
;
break
;}
break
;}
case
502
:
case
502
:
#line 27
6
3 "objc-parse.y"
#line 27
7
3 "objc-parse.y"
{
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
{
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
declspec_stack
=
TREE_CHAIN
(
declspec_stack
);
resume_momentary
(
yyvsp
[
-
2
].
itype
);
;
resume_momentary
(
yyvsp
[
-
2
].
itype
);
;
break
;}
break
;}
case
503
:
case
503
:
#line 27
6
8 "objc-parse.y"
#line 27
7
8 "objc-parse.y"
{
shadow_tag
(
yyvsp
[
-
1
].
ttype
);
;
{
shadow_tag
(
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
504
:
case
504
:
#line 27
7
0 "objc-parse.y"
#line 27
8
0 "objc-parse.y"
{
pedwarn
(
"empty declaration"
);
;
{
pedwarn
(
"empty declaration"
);
;
break
;}
break
;}
case
505
:
case
505
:
#line 27
7
5 "objc-parse.y"
#line 27
8
5 "objc-parse.y"
{
push_parm_decl
(
yyvsp
[
0
].
ttype
);
;
{
push_parm_decl
(
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
506
:
case
506
:
#line 27
7
7 "objc-parse.y"
#line 27
8
7 "objc-parse.y"
{
push_parm_decl
(
yyvsp
[
0
].
ttype
);
;
{
push_parm_decl
(
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
507
:
case
507
:
#line 27
8
5 "objc-parse.y"
#line 27
9
5 "objc-parse.y"
{
yyval
.
ttype
=
build_tree_list
(
build_tree_list
(
current_declspecs
,
{
yyval
.
ttype
=
build_tree_list
(
build_tree_list
(
current_declspecs
,
yyvsp
[
-
1
].
ttype
),
yyvsp
[
-
1
].
ttype
),
build_tree_list
(
prefix_attributes
,
build_tree_list
(
prefix_attributes
,
yyvsp
[
0
].
ttype
));
;
yyvsp
[
0
].
ttype
));
;
break
;}
break
;}
case
508
:
case
508
:
#line 2
79
0 "objc-parse.y"
#line 2
80
0 "objc-parse.y"
{
yyval
.
ttype
=
build_tree_list
(
build_tree_list
(
current_declspecs
,
{
yyval
.
ttype
=
build_tree_list
(
build_tree_list
(
current_declspecs
,
yyvsp
[
-
1
].
ttype
),
yyvsp
[
-
1
].
ttype
),
build_tree_list
(
prefix_attributes
,
build_tree_list
(
prefix_attributes
,
yyvsp
[
0
].
ttype
));
;
yyvsp
[
0
].
ttype
));
;
break
;}
break
;}
case
509
:
case
509
:
#line 2
79
5 "objc-parse.y"
#line 2
80
5 "objc-parse.y"
{
yyval
.
ttype
=
build_tree_list
(
build_tree_list
(
current_declspecs
,
{
yyval
.
ttype
=
build_tree_list
(
build_tree_list
(
current_declspecs
,
yyvsp
[
-
1
].
ttype
),
yyvsp
[
-
1
].
ttype
),
build_tree_list
(
prefix_attributes
,
build_tree_list
(
prefix_attributes
,
yyvsp
[
0
].
ttype
));
;
yyvsp
[
0
].
ttype
));
;
break
;}
break
;}
case
510
:
case
510
:
#line 28
0
3 "objc-parse.y"
#line 28
1
3 "objc-parse.y"
{
{
yyval
.
ttype
=
NULL_TREE
;
yyval
.
ttype
=
NULL_TREE
;
;
;
break
;}
break
;}
case
511
:
case
511
:
#line 28
0
7 "objc-parse.y"
#line 28
1
7 "objc-parse.y"
{
{
/* oh what a kludge! */
/* oh what a kludge! */
yyval
.
ttype
=
(
tree
)
1
;
yyval
.
ttype
=
(
tree
)
1
;
;
;
break
;}
break
;}
case
512
:
case
512
:
#line 28
1
2 "objc-parse.y"
#line 28
2
2 "objc-parse.y"
{
{
pushlevel
(
0
);
pushlevel
(
0
);
;
;
break
;}
break
;}
case
513
:
case
513
:
#line 28
1
6 "objc-parse.y"
#line 28
2
6 "objc-parse.y"
{
{
/* returns a tree list node generated by get_parm_info */
/* returns a tree list node generated by get_parm_info */
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
...
@@ -4772,119 +4782,119 @@ case 513:
...
@@ -4772,119 +4782,119 @@ case 513:
;
;
break
;}
break
;}
case
516
:
case
516
:
#line 28
3
1 "objc-parse.y"
#line 28
4
1 "objc-parse.y"
{
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
yyval
.
ttype
=
chainon
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
;
break
;}
break
;}
case
521
:
case
521
:
#line 28
4
4 "objc-parse.y"
#line 28
5
4 "objc-parse.y"
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
break
;}
break
;}
case
522
:
case
522
:
#line 28
4
5 "objc-parse.y"
#line 28
5
5 "objc-parse.y"
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
break
;}
break
;}
case
523
:
case
523
:
#line 28
4
6 "objc-parse.y"
#line 28
5
6 "objc-parse.y"
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
break
;}
break
;}
case
524
:
case
524
:
#line 28
4
7 "objc-parse.y"
#line 28
5
7 "objc-parse.y"
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
break
;}
break
;}
case
525
:
case
525
:
#line 28
4
8 "objc-parse.y"
#line 28
5
8 "objc-parse.y"
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
break
;}
break
;}
case
526
:
case
526
:
#line 28
4
9 "objc-parse.y"
#line 28
5
9 "objc-parse.y"
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
break
;}
break
;}
case
527
:
case
527
:
#line 28
5
0 "objc-parse.y"
#line 28
6
0 "objc-parse.y"
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
break
;}
break
;}
case
528
:
case
528
:
#line 28
5
1 "objc-parse.y"
#line 28
6
1 "objc-parse.y"
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
break
;}
break
;}
case
529
:
case
529
:
#line 28
5
2 "objc-parse.y"
#line 28
6
2 "objc-parse.y"
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
break
;}
break
;}
case
530
:
case
530
:
#line 28
5
3 "objc-parse.y"
#line 28
6
3 "objc-parse.y"
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
break
;}
break
;}
case
531
:
case
531
:
#line 28
5
4 "objc-parse.y"
#line 28
6
4 "objc-parse.y"
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
break
;}
break
;}
case
532
:
case
532
:
#line 28
5
5 "objc-parse.y"
#line 28
6
5 "objc-parse.y"
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
break
;}
break
;}
case
533
:
case
533
:
#line 28
5
6 "objc-parse.y"
#line 28
6
6 "objc-parse.y"
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
break
;}
break
;}
case
534
:
case
534
:
#line 28
5
7 "objc-parse.y"
#line 28
6
7 "objc-parse.y"
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
break
;}
break
;}
case
535
:
case
535
:
#line 28
5
8 "objc-parse.y"
#line 28
6
8 "objc-parse.y"
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
break
;}
break
;}
case
536
:
case
536
:
#line 28
5
9 "objc-parse.y"
#line 28
6
9 "objc-parse.y"
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
break
;}
break
;}
case
537
:
case
537
:
#line 28
6
0 "objc-parse.y"
#line 28
7
0 "objc-parse.y"
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
break
;}
break
;}
case
538
:
case
538
:
#line 28
6
1 "objc-parse.y"
#line 28
7
1 "objc-parse.y"
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
break
;}
break
;}
case
539
:
case
539
:
#line 28
6
2 "objc-parse.y"
#line 28
7
2 "objc-parse.y"
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
break
;}
break
;}
case
542
:
case
542
:
#line 28
6
8 "objc-parse.y"
#line 28
7
8 "objc-parse.y"
{
{
yyval
.
ttype
=
build_keyword_decl
(
yyvsp
[
-
5
].
ttype
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
yyval
.
ttype
=
build_keyword_decl
(
yyvsp
[
-
5
].
ttype
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
;
break
;}
break
;}
case
543
:
case
543
:
#line 28
7
3 "objc-parse.y"
#line 28
8
3 "objc-parse.y"
{
{
yyval
.
ttype
=
build_keyword_decl
(
yyvsp
[
-
2
].
ttype
,
NULL_TREE
,
yyvsp
[
0
].
ttype
);
yyval
.
ttype
=
build_keyword_decl
(
yyvsp
[
-
2
].
ttype
,
NULL_TREE
,
yyvsp
[
0
].
ttype
);
;
;
break
;}
break
;}
case
544
:
case
544
:
#line 28
7
8 "objc-parse.y"
#line 28
8
8 "objc-parse.y"
{
{
yyval
.
ttype
=
build_keyword_decl
(
NULL_TREE
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
yyval
.
ttype
=
build_keyword_decl
(
NULL_TREE
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
;
break
;}
break
;}
case
545
:
case
545
:
#line 28
8
3 "objc-parse.y"
#line 28
9
3 "objc-parse.y"
{
{
yyval
.
ttype
=
build_keyword_decl
(
NULL_TREE
,
NULL_TREE
,
yyvsp
[
0
].
ttype
);
yyval
.
ttype
=
build_keyword_decl
(
NULL_TREE
,
NULL_TREE
,
yyvsp
[
0
].
ttype
);
;
;
break
;}
break
;}
case
549
:
case
549
:
#line 2
89
6 "objc-parse.y"
#line 2
90
6 "objc-parse.y"
{
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
yyval
.
ttype
=
chainon
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
;
break
;}
break
;}
case
550
:
case
550
:
#line 29
0
4 "objc-parse.y"
#line 29
1
4 "objc-parse.y"
{
{
if
(
TREE_CHAIN
(
yyvsp
[
0
].
ttype
)
==
NULL_TREE
)
if
(
TREE_CHAIN
(
yyvsp
[
0
].
ttype
)
==
NULL_TREE
)
/* just return the expr., remove a level of indirection */
/* just return the expr., remove a level of indirection */
...
@@ -4895,69 +4905,69 @@ case 550:
...
@@ -4895,69 +4905,69 @@ case 550:
;
;
break
;}
break
;}
case
551
:
case
551
:
#line 29
1
6 "objc-parse.y"
#line 29
2
6 "objc-parse.y"
{
{
yyval
.
ttype
=
build_tree_list
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
yyval
.
ttype
=
build_tree_list
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
;
break
;}
break
;}
case
552
:
case
552
:
#line 29
2
0 "objc-parse.y"
#line 29
3
0 "objc-parse.y"
{
{
yyval
.
ttype
=
build_tree_list
(
NULL_TREE
,
yyvsp
[
0
].
ttype
);
yyval
.
ttype
=
build_tree_list
(
NULL_TREE
,
yyvsp
[
0
].
ttype
);
;
;
break
;}
break
;}
case
554
:
case
554
:
#line 29
2
8 "objc-parse.y"
#line 29
3
8 "objc-parse.y"
{
{
yyval
.
ttype
=
get_class_reference
(
yyvsp
[
0
].
ttype
);
yyval
.
ttype
=
get_class_reference
(
yyvsp
[
0
].
ttype
);
;
;
break
;}
break
;}
case
555
:
case
555
:
#line 29
3
5 "objc-parse.y"
#line 29
4
5 "objc-parse.y"
{
objc_receiver_context
=
1
;
;
{
objc_receiver_context
=
1
;
;
break
;}
break
;}
case
556
:
case
556
:
#line 29
3
7 "objc-parse.y"
#line 29
4
7 "objc-parse.y"
{
objc_receiver_context
=
0
;
;
{
objc_receiver_context
=
0
;
;
break
;}
break
;}
case
557
:
case
557
:
#line 29
3
9 "objc-parse.y"
#line 29
4
9 "objc-parse.y"
{
{
yyval
.
ttype
=
build_tree_list
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
yyval
.
ttype
=
build_tree_list
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
;
break
;}
break
;}
case
561
:
case
561
:
#line 29
5
2 "objc-parse.y"
#line 29
6
2 "objc-parse.y"
{
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
yyval
.
ttype
=
chainon
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
;
break
;}
break
;}
case
562
:
case
562
:
#line 29
5
9 "objc-parse.y"
#line 29
6
9 "objc-parse.y"
{
{
yyval
.
ttype
=
build_tree_list
(
yyvsp
[
-
1
].
ttype
,
NULL_TREE
);
yyval
.
ttype
=
build_tree_list
(
yyvsp
[
-
1
].
ttype
,
NULL_TREE
);
;
;
break
;}
break
;}
case
563
:
case
563
:
#line 29
6
3 "objc-parse.y"
#line 29
7
3 "objc-parse.y"
{
{
yyval
.
ttype
=
build_tree_list
(
NULL_TREE
,
NULL_TREE
);
yyval
.
ttype
=
build_tree_list
(
NULL_TREE
,
NULL_TREE
);
;
;
break
;}
break
;}
case
564
:
case
564
:
#line 29
7
0 "objc-parse.y"
#line 29
8
0 "objc-parse.y"
{
{
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
;
;
break
;}
break
;}
case
565
:
case
565
:
#line 29
7
7 "objc-parse.y"
#line 29
8
7 "objc-parse.y"
{
{
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
;
;
break
;}
break
;}
case
566
:
case
566
:
#line 29
8
6 "objc-parse.y"
#line 29
9
6 "objc-parse.y"
{
{
yyval
.
ttype
=
groktypename
(
yyvsp
[
-
1
].
ttype
);
yyval
.
ttype
=
groktypename
(
yyvsp
[
-
1
].
ttype
);
;
;
...
@@ -5160,5 +5170,5 @@ yyerrhandle:
...
@@ -5160,5 +5170,5 @@ yyerrhandle:
yystate
=
yyn
;
yystate
=
yyn
;
goto
yynewstate
;
goto
yynewstate
;
}
}
#line
299
1 "objc-parse.y"
#line
300
1 "objc-parse.y"
gcc/objc/objc-parse.y
View file @
01656b25
/*WARNING: This file is automatically generated!*/
/*WARNING: This file is automatically generated!*/
/* YACC parser for C syntax and for Objective C. -*-c-*-
/* YACC parser for C syntax and for Objective C. -*-c-*-
Copyright (C) 1987, 88, 89, 92-9
7, 1998
Free Software Foundation, Inc.
Copyright (C) 1987, 88, 89, 92-9
8, 1999
Free Software Foundation, Inc.
This file is part of GNU CC.
This file is part of GNU CC.
...
@@ -562,12 +562,22 @@ expr_no_commas:
...
@@ -562,12 +562,22 @@ expr_no_commas:
{
skip_evaluation
-=
$
1
==
boolean_true_node
;
{
skip_evaluation
-=
$
1
==
boolean_true_node
;
$$
=
build_conditional_expr
(
$
1
,
$
<
ttype
>
2
,
$
5
);
}
$$
=
build_conditional_expr
(
$
1
,
$
<
ttype
>
2
,
$
5
);
}
|
expr_no_commas
'='
expr_no_commas
|
expr_no_commas
'='
expr_no_commas
{
$$
=
build_modify_expr
(
$
1
,
NOP_EXPR
,
$
3
);
{
char
class
;
C_SET_EXP_ORIGINAL_CODE
(
$$
,
MODIFY_EXPR
);
}
$$
=
build_modify_expr
(
$
1
,
NOP_EXPR
,
$
3
);
class
=
TREE_CODE_CLASS
(
TREE_CODE
(
$$
));
if
(
class
==
'e'
||
class
==
'1'
||
class
==
'2'
||
class
==
'<'
)
C_SET_EXP_ORIGINAL_CODE
(
$$
,
MODIFY_EXPR
);
}
|
expr_no_commas
ASSIGN
expr_no_commas
|
expr_no_commas
ASSIGN
expr_no_commas
{
$$
=
build_modify_expr
(
$
1
,
$
2
,
$
3
);
{
char
class
;
$$
=
build_modify_expr
(
$
1
,
$
2
,
$
3
);
/* This inhibits warnings in truthvalue_conversion. */
/* This inhibits warnings in truthvalue_conversion. */
C_SET_EXP_ORIGINAL_CODE
(
$$
,
ERROR_MARK
);
}
class
=
TREE_CODE_CLASS
(
TREE_CODE
(
$$
));
if
(
class
==
'e'
||
class
==
'1'
||
class
==
'2'
||
class
==
'<'
)
C_SET_EXP_ORIGINAL_CODE
(
$$
,
ERROR_MARK
);
}
;
;
primary
:
primary
:
...
...
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