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
afe3d090
Commit
afe3d090
authored
Sep 07, 1999
by
Bernd Schmidt
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Commit parts that were missing in Mark's last commit
From-SVN: r29164
parent
6bc2c8c8
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
560 additions
and
511 deletions
+560
-511
gcc/except.c
+2
-0
gcc/function.c
+1
-0
gcc/ggc-simple.c
+2
-2
gcc/objc/objc-parse.c
+519
-508
gcc/objc/objc-parse.y
+12
-1
gcc/toplev.c
+24
-0
No files found.
gcc/except.c
View file @
afe3d090
...
@@ -2393,6 +2393,7 @@ mark_eh_state (eh)
...
@@ -2393,6 +2393,7 @@ mark_eh_state (eh)
struct
eh_status
*
eh
;
struct
eh_status
*
eh
;
{
{
mark_eh_stack
(
&
eh
->
x_ehstack
);
mark_eh_stack
(
&
eh
->
x_ehstack
);
mark_eh_stack
(
&
eh
->
x_catchstack
);
mark_eh_queue
(
&
eh
->
x_ehqueue
);
mark_eh_queue
(
&
eh
->
x_ehqueue
);
ggc_mark_rtx
(
eh
->
x_catch_clauses
);
ggc_mark_rtx
(
eh
->
x_catch_clauses
);
...
@@ -2401,6 +2402,7 @@ mark_eh_state (eh)
...
@@ -2401,6 +2402,7 @@ mark_eh_state (eh)
ggc_mark_tree
(
eh
->
x_protect_list
);
ggc_mark_tree
(
eh
->
x_protect_list
);
ggc_mark_rtx
(
eh
->
ehc
);
ggc_mark_rtx
(
eh
->
ehc
);
ggc_mark_rtx
(
eh
->
x_eh_return_stub_label
);
}
}
/* This group of functions initializes the exception handling data
/* This group of functions initializes the exception handling data
...
...
gcc/function.c
View file @
afe3d090
...
@@ -6714,6 +6714,7 @@ mark_function_state (p)
...
@@ -6714,6 +6714,7 @@ mark_function_state (p)
}
}
ggc_mark_rtx
(
p
->
x_nonlocal_goto_handler_slots
);
ggc_mark_rtx
(
p
->
x_nonlocal_goto_handler_slots
);
ggc_mark_rtx
(
p
->
x_nonlocal_goto_handler_labels
);
ggc_mark_rtx
(
p
->
x_nonlocal_goto_stack_level
);
ggc_mark_rtx
(
p
->
x_nonlocal_goto_stack_level
);
ggc_mark_tree
(
p
->
x_nonlocal_labels
);
ggc_mark_tree
(
p
->
x_nonlocal_labels
);
}
}
...
...
gcc/ggc-simple.c
View file @
afe3d090
...
@@ -133,7 +133,7 @@ ggc_alloc_rtvec (nelt)
...
@@ -133,7 +133,7 @@ ggc_alloc_rtvec (nelt)
int
nelt
;
int
nelt
;
{
{
struct
ggc_rtvec
*
v
;
struct
ggc_rtvec
*
v
;
int
size
=
sizeof
(
*
v
)
+
(
nelt
-
1
)
*
sizeof
(
rt
union
);
int
size
=
sizeof
(
*
v
)
+
(
nelt
-
1
)
*
sizeof
(
rt
x
);
v
=
(
struct
ggc_rtvec
*
)
xmalloc
(
size
);
v
=
(
struct
ggc_rtvec
*
)
xmalloc
(
size
);
bzero
((
char
*
)
v
,
size
);
bzero
((
char
*
)
v
,
size
);
...
@@ -195,7 +195,7 @@ ggc_alloc_string (contents, length)
...
@@ -195,7 +195,7 @@ ggc_alloc_string (contents, length)
strings
=
s
;
strings
=
s
;
#ifdef GGC_DUMP
#ifdef GGC_DUMP
fprintf
(
dump
,
"alloc string %p
\n
"
,
&
n
->
tree
);
fprintf
(
dump
,
"alloc string %p
\n
"
,
&
s
->
string
);
#endif
#endif
bytes_alloced_since_gc
+=
size
;
bytes_alloced_since_gc
+=
size
;
...
...
gcc/objc/objc-parse.c
View file @
afe3d090
...
@@ -79,7 +79,8 @@
...
@@ -79,7 +79,8 @@
#include "flags.h"
#include "flags.h"
#include "output.h"
#include "output.h"
#include "toplev.h"
#include "toplev.h"
#include "ggc.h"
#ifdef MULTIBYTE_CHARS
#ifdef MULTIBYTE_CHARS
#include <locale.h>
#include <locale.h>
#endif
#endif
...
@@ -96,10 +97,10 @@ const char * const language_string = "GNU Obj-C";
...
@@ -96,10 +97,10 @@ const char * const language_string = "GNU Obj-C";
/* Cause the `yydebug' variable to be defined. */
/* Cause the `yydebug' variable to be defined. */
#define YYDEBUG 1
#define YYDEBUG 1
#line 6
4
"objc-parse.y"
#line 6
5
"objc-parse.y"
typedef
union
{
long
itype
;
tree
ttype
;
enum
tree_code
code
;
typedef
union
{
long
itype
;
tree
ttype
;
enum
tree_code
code
;
char
*
filename
;
int
lineno
;
int
ends_in_label
;
}
YYSTYPE
;
char
*
filename
;
int
lineno
;
int
ends_in_label
;
}
YYSTYPE
;
#line 19
5
"objc-parse.y"
#line 19
6
"objc-parse.y"
/* Number of statements (loosely speaking) and compound statements
/* Number of statements (loosely speaking) and compound statements
seen so far. */
seen so far. */
...
@@ -137,6 +138,16 @@ int objc_public_flag;
...
@@ -137,6 +138,16 @@ int objc_public_flag;
#define YYPRINT(FILE,YYCHAR,YYLVAL) yyprint(FILE,YYCHAR,YYLVAL)
#define YYPRINT(FILE,YYCHAR,YYLVAL) yyprint(FILE,YYCHAR,YYLVAL)
extern
void
yyprint
PROTO
((
FILE
*
,
int
,
YYSTYPE
));
extern
void
yyprint
PROTO
((
FILE
*
,
int
,
YYSTYPE
));
/* Add GC roots for variables local to this file. */
void
c_parse_init
()
{
ggc_add_tree_root
(
&
declspec_stack
,
1
);
ggc_add_tree_root
(
&
current_declspecs
,
1
);
ggc_add_tree_root
(
&
prefix_attributes
,
1
);
}
#include <stdio.h>
#include <stdio.h>
#ifndef __cplusplus
#ifndef __cplusplus
...
@@ -433,63 +444,63 @@ static const short yyrhs[] = { -1,
...
@@ -433,63 +444,63 @@ static const short yyrhs[] = { -1,
#if YYDEBUG != 0
#if YYDEBUG != 0
static
const
short
yyrline
[]
=
{
0
,
static
const
short
yyrline
[]
=
{
0
,
2
35
,
240
,
254
,
256
,
256
,
257
,
259
,
261
,
262
,
263
,
2
46
,
251
,
265
,
267
,
267
,
268
,
270
,
272
,
273
,
274
,
2
71
,
275
,
286
,
291
,
296
,
298
,
300
,
301
,
302
,
307
,
2
82
,
286
,
297
,
302
,
307
,
309
,
311
,
312
,
313
,
318
,
3
14
,
316
,
321
,
326
,
332
,
334
,
339
,
344
,
350
,
352
,
3
25
,
327
,
332
,
337
,
343
,
345
,
350
,
355
,
361
,
363
,
3
57
,
364
,
366
,
367
,
368
,
371
,
373
,
375
,
377
,
379
,
3
68
,
375
,
377
,
378
,
379
,
382
,
384
,
386
,
388
,
390
,
3
81
,
383
,
387
,
391
,
394
,
397
,
400
,
404
,
406
,
409
,
3
92
,
394
,
398
,
402
,
405
,
408
,
411
,
415
,
417
,
420
,
4
12
,
416
,
444
,
450
,
453
,
456
,
459
,
461
,
463
,
467
,
4
23
,
427
,
455
,
461
,
464
,
467
,
470
,
472
,
474
,
478
,
4
71
,
475
,
477
,
480
,
484
,
511
,
513
,
515
,
517
,
519
,
4
82
,
486
,
488
,
491
,
495
,
522
,
524
,
526
,
528
,
530
,
5
21
,
523
,
525
,
527
,
529
,
531
,
533
,
535
,
537
,
541
,
5
32
,
534
,
536
,
538
,
540
,
542
,
544
,
546
,
548
,
552
,
5
43
,
547
,
549
,
552
,
556
,
558
,
565
,
568
,
576
,
587
,
5
54
,
558
,
560
,
563
,
567
,
569
,
576
,
579
,
587
,
598
,
7
47
,
748
,
750
,
756
,
758
,
781
,
790
,
792
,
794
,
806
,
7
58
,
759
,
761
,
767
,
769
,
792
,
801
,
803
,
805
,
817
,
8
20
,
822
,
824
,
826
,
828
,
830
,
832
,
837
,
839
,
845
,
8
31
,
833
,
835
,
837
,
839
,
841
,
843
,
848
,
850
,
856
,
8
47
,
851
,
853
,
854
,
864
,
869
,
871
,
872
,
873
,
880
,
8
58
,
862
,
864
,
865
,
875
,
880
,
882
,
883
,
884
,
891
,
8
86
,
891
,
894
,
902
,
907
,
909
,
910
,
911
,
918
,
929
,
8
97
,
902
,
905
,
913
,
918
,
920
,
921
,
922
,
929
,
940
,
9
33
,
939
,
944
,
949
,
954
,
956
,
958
,
967
,
970
,
974
,
9
44
,
950
,
955
,
960
,
965
,
967
,
969
,
978
,
981
,
985
,
9
76
,
978
,
983
,
987
,
990
,
994
,
997
,
999
,
1011
,
1014
,
9
87
,
989
,
994
,
998
,
1001
,
1005
,
1008
,
1010
,
1022
,
1025
,
10
16
,
1018
,
1022
,
1026
,
1028
,
1031
,
1044
,
1047
,
1051
,
1053
,
10
27
,
1029
,
1033
,
1037
,
1039
,
1042
,
1055
,
1058
,
1062
,
1064
,
10
61
,
1062
,
1063
,
1067
,
1069
,
1074
,
1076
,
1078
,
1084
,
1085
,
10
72
,
1073
,
1074
,
1078
,
1080
,
1085
,
1087
,
1089
,
1095
,
1096
,
10
86
,
1089
,
1091
,
1094
,
1096
,
1099
,
1102
,
1108
,
1115
,
1117
,
10
97
,
1100
,
1102
,
1105
,
1107
,
1110
,
1113
,
1119
,
1126
,
1128
,
11
24
,
1131
,
1134
,
1141
,
1144
,
1148
,
1151
,
1155
,
1160
,
1163
,
11
35
,
1142
,
1145
,
1152
,
1155
,
1159
,
1162
,
1166
,
1171
,
1174
,
11
67
,
1170
,
1172
,
1174
,
1176
,
1183
,
1185
,
1186
,
1187
,
1192
,
11
78
,
1181
,
1183
,
1185
,
1187
,
1194
,
1196
,
1197
,
1198
,
1203
,
1
194
,
1199
,
1207
,
1212
,
1216
,
1219
,
1221
,
1226
,
1228
,
1229
,
1
205
,
1210
,
1218
,
1223
,
1227
,
1230
,
1232
,
1237
,
1239
,
1240
,
12
32
,
1232
,
1235
,
1238
,
1240
,
1242
,
1245
,
1247
,
1250
,
1258
,
12
43
,
1243
,
1246
,
1249
,
1251
,
1253
,
1256
,
1258
,
1261
,
1269
,
12
72
,
1280
,
1284
,
1298
,
1306
,
1313
,
1315
,
1320
,
1323
,
1328
,
12
83
,
1291
,
1295
,
1309
,
1317
,
1324
,
1326
,
1331
,
1334
,
1339
,
13
30
,
1332
,
1339
,
1341
,
1342
,
1350
,
1356
,
1358
,
1360
,
1367
,
13
41
,
1343
,
1350
,
1352
,
1353
,
1361
,
1367
,
1369
,
1371
,
1378
,
13
69
,
1375
,
1381
,
1383
,
1385
,
1387
,
1394
,
1396
,
1399
,
1402
,
13
80
,
1386
,
1392
,
1394
,
1396
,
1398
,
1405
,
1407
,
1410
,
1413
,
14
06
,
1409
,
1413
,
1416
,
1420
,
1425
,
1427
,
1431
,
1433
,
1435
,
14
17
,
1420
,
1424
,
1427
,
1431
,
1436
,
1438
,
1442
,
1444
,
1446
,
14
37
,
1441
,
1443
,
1446
,
1449
,
1452
,
1455
,
1459
,
1461
,
1464
,
14
48
,
1452
,
1454
,
1457
,
1460
,
1463
,
1466
,
1470
,
1472
,
1475
,
14
66
,
1471
,
1474
,
1479
,
1481
,
1483
,
1487
,
1511
,
1518
,
1523
,
14
77
,
1482
,
1485
,
1490
,
1492
,
1494
,
1498
,
1522
,
1529
,
1534
,
15
29
,
1534
,
1536
,
1541
,
1543
,
1547
,
1551
,
1555
,
1565
,
1567
,
15
40
,
1545
,
1547
,
1552
,
1554
,
1558
,
1562
,
1566
,
1576
,
1578
,
15
72
,
1577
,
1580
,
1584
,
1587
,
1591
,
1594
,
1597
,
1600
,
1604
,
15
83
,
1588
,
1591
,
1595
,
1598
,
1602
,
1605
,
1608
,
1611
,
1615
,
16
07
,
1611
,
1615
,
1617
,
1619
,
1621
,
1623
,
1625
,
1627
,
1629
,
16
18
,
1622
,
1626
,
1628
,
1630
,
1632
,
1634
,
1636
,
1638
,
1640
,
16
33
,
1641
,
1649
,
1651
,
1653
,
1657
,
1659
,
1662
,
1665
,
1678
,
16
44
,
1652
,
1660
,
1662
,
1664
,
1668
,
1670
,
1673
,
1676
,
1689
,
16
80
,
1685
,
1687
,
1690
,
1704
,
1707
,
1710
,
1712
,
1714
,
1722
,
16
91
,
1696
,
1698
,
1701
,
1715
,
1718
,
1721
,
1723
,
1725
,
1733
,
17
30
,
1740
,
1758
,
1763
,
1768
,
1771
,
1785
,
1794
,
1798
,
1802
,
17
41
,
1751
,
1769
,
1774
,
1779
,
1782
,
1796
,
1805
,
1809
,
1813
,
18
06
,
1812
,
1816
,
1821
,
1824
,
1829
,
1832
,
1833
,
1850
,
1855
,
18
17
,
1823
,
1827
,
1832
,
1835
,
1840
,
1843
,
1844
,
1861
,
1866
,
18
58
,
1870
,
1872
,
1882
,
1892
,
1893
,
1901
,
1904
,
1916
,
1920
,
18
69
,
1881
,
1883
,
1893
,
1903
,
1904
,
1912
,
1915
,
1927
,
1931
,
19
37
,
1947
,
1956
,
1961
,
1966
,
1971
,
1975
,
1979
,
1990
,
1997
,
19
48
,
1958
,
1967
,
1972
,
1977
,
1982
,
1986
,
1990
,
2001
,
2008
,
20
04
,
2011
,
2022
,
2028
,
2031
,
2036
,
2059
,
2093
,
2124
,
2155
,
20
15
,
2022
,
2033
,
2039
,
2042
,
2047
,
2070
,
2104
,
2135
,
2166
,
21
70
,
2184
,
2188
,
2192
,
2195
,
2200
,
2202
,
2205
,
2207
,
2211
,
21
81
,
2195
,
2199
,
2203
,
2206
,
2211
,
2213
,
2216
,
2218
,
2222
,
22
16
,
2219
,
2225
,
2230
,
2235
,
2237
,
2246
,
2247
,
2253
,
2255
,
22
27
,
2230
,
2236
,
2241
,
2246
,
2248
,
2257
,
2258
,
2264
,
2266
,
22
65
,
2267
,
2271
,
2274
,
2280
,
2290
,
2299
,
2308
,
2318
,
2332
,
22
76
,
2278
,
2282
,
2285
,
2291
,
2301
,
2310
,
2319
,
2329
,
2343
,
23
37
,
2342
,
2344
,
2353
,
2356
,
2361
,
2364
,
2368
,
2376
,
2378
,
23
48
,
2353
,
2355
,
2364
,
2367
,
2372
,
2375
,
2379
,
2387
,
2389
,
23
79
,
2380
,
2381
,
2382
,
2396
,
2399
,
2403
,
2409
,
2415
,
2422
,
23
90
,
2391
,
2392
,
2393
,
2407
,
2410
,
2414
,
2420
,
2426
,
2433
,
24
27
,
2433
,
2440
,
2446
,
2452
,
2457
,
2463
,
2470
,
2476
,
2482
,
24
38
,
2444
,
2451
,
2457
,
2463
,
2468
,
2474
,
2481
,
2487
,
2493
,
24
88
,
2496
,
2502
,
2508
,
2516
,
2523
,
2529
,
2538
,
2545
,
2553
,
24
99
,
2507
,
2513
,
2519
,
2527
,
2534
,
2540
,
2549
,
2556
,
2564
,
25
58
,
2561
,
2571
,
2573
,
2576
,
2578
,
2579
,
2582
,
2587
,
2588
,
25
69
,
2572
,
2582
,
2584
,
2587
,
2589
,
2590
,
2593
,
2598
,
2599
,
26
05
,
2612
,
2618
,
2622
,
2625
,
2626
,
2629
,
2637
,
2643
,
2652
,
26
16
,
2623
,
2629
,
2633
,
2636
,
2637
,
2640
,
2648
,
2654
,
2663
,
26
62
,
2669
,
2673
,
2678
,
2687
,
2694
,
2698
,
2708
,
2710
,
2711
,
26
73
,
2680
,
2684
,
2689
,
2698
,
2705
,
2709
,
2719
,
2721
,
2722
,
27
13
,
2715
,
2716
,
2717
,
2718
,
2720
,
2722
,
2725
,
2733
,
2740
,
27
24
,
2726
,
2727
,
2728
,
2729
,
2731
,
2733
,
2736
,
2744
,
2751
,
27
40
,
2747
,
2753
,
2755
,
2761
,
2766
,
2771
,
2780
,
2782
,
2788
,
27
51
,
2758
,
2764
,
2766
,
2772
,
2777
,
2782
,
2791
,
2793
,
2799
,
2
790
,
2793
,
2795
,
2796
,
2797
,
2800
,
2806
,
2808
,
2812
,
2815
,
2
801
,
2804
,
2806
,
2807
,
2808
,
2811
,
2817
,
2819
,
2823
,
2826
,
28
22
,
2828
,
2833
,
2840
,
2845
,
2850
,
2855
,
2862
,
2866
,
2869
,
28
33
,
2839
,
2844
,
2851
,
2856
,
2861
,
2866
,
2873
,
2877
,
2880
,
28
75
,
2877
,
2878
,
2879
,
2882
,
2884
,
2885
,
2886
,
2887
,
2888
,
28
86
,
2888
,
2889
,
2890
,
2893
,
2895
,
2896
,
2897
,
2898
,
2899
,
2
889
,
2890
,
2891
,
2892
,
2893
,
2894
,
2895
,
2896
,
2897
,
2898
,
2
900
,
2901
,
2902
,
2903
,
2904
,
2905
,
2906
,
2907
,
2908
,
2909
,
2
899
,
2900
,
2901
,
2902
,
2902
,
2905
,
2911
,
2916
,
2921
,
2927
,
2
910
,
2911
,
2912
,
2913
,
2913
,
2916
,
2922
,
2927
,
2932
,
2938
,
29
29
,
2932
,
2934
,
2941
,
2953
,
2958
,
2964
,
2966
,
2972
,
2976
,
29
40
,
2943
,
2945
,
2952
,
2964
,
2969
,
2975
,
2977
,
2983
,
2987
,
29
77
,
2983
,
2985
,
2988
,
2990
,
2996
,
3001
,
3007
,
3014
,
3023
29
88
,
2994
,
2996
,
2999
,
3001
,
3007
,
3012
,
3018
,
3025
,
3034
};
};
#endif
#endif
...
@@ -1723,7 +1734,7 @@ static const short yycheck[] = { 56,
...
@@ -1723,7 +1734,7 @@ static const short yycheck[] = { 56,
46
,
47
,
48
,
49
,
50
,
51
,
52
,
53
,
54
46
,
47
,
48
,
49
,
50
,
51
,
52
,
53
,
54
};
};
/* -*-C-*- Note some compilers choke on comments on `#line' lines. */
/* -*-C-*- Note some compilers choke on comments on `#line' lines. */
#line 3 "/usr/
cygnus/TBD-TBD/
share/bison.simple"
#line 3 "/usr/share/bison.simple"
/* Skeleton output parser for bison,
/* Skeleton output parser for bison,
Copyright (C) 1984, 1989, 1990 Free Software Foundation, Inc.
Copyright (C) 1984, 1989, 1990 Free Software Foundation, Inc.
...
@@ -1916,7 +1927,7 @@ __yy_memcpy (char *to, char *from, int count)
...
@@ -1916,7 +1927,7 @@ __yy_memcpy (char *to, char *from, int count)
#endif
#endif
#endif
#endif
#line 196 "/usr/
cygnus/TBD-TBD/
share/bison.simple"
#line 196 "/usr/share/bison.simple"
/* The user can define YYPARSE_PARAM as the name of an argument to be passed
/* The user can define YYPARSE_PARAM as the name of an argument to be passed
into yyparse. The argument should have type void *.
into yyparse. The argument should have type void *.
...
@@ -2221,14 +2232,14 @@ yyreduce:
...
@@ -2221,14 +2232,14 @@ yyreduce:
switch
(
yyn
)
{
switch
(
yyn
)
{
case
1
:
case
1
:
#line 2
36
"objc-parse.y"
#line 2
47
"objc-parse.y"
{
if
(
pedantic
)
{
if
(
pedantic
)
pedwarn
(
"ANSI C forbids an empty source file"
);
pedwarn
(
"ANSI C forbids an empty source file"
);
finish_file
();
finish_file
();
;
;
break
;}
break
;}
case
2
:
case
2
:
#line 2
41
"objc-parse.y"
#line 2
52
"objc-parse.y"
{
{
/* In case there were missing closebraces,
/* In case there were missing closebraces,
get us back to the global binding level. */
get us back to the global binding level. */
...
@@ -2238,15 +2249,15 @@ case 2:
...
@@ -2238,15 +2249,15 @@ case 2:
;
;
break
;}
break
;}
case
3
:
case
3
:
#line 2
55
"objc-parse.y"
#line 2
66
"objc-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
5
:
case
5
:
#line 2
56
"objc-parse.y"
#line 2
67
"objc-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
10
:
case
10
:
#line 2
64
"objc-parse.y"
#line 2
75
"objc-parse.y"
{
STRIP_NOPS
(
yyvsp
[
-
2
].
ttype
);
{
STRIP_NOPS
(
yyvsp
[
-
2
].
ttype
);
if
((
TREE_CODE
(
yyvsp
[
-
2
].
ttype
)
==
ADDR_EXPR
if
((
TREE_CODE
(
yyvsp
[
-
2
].
ttype
)
==
ADDR_EXPR
&&
TREE_CODE
(
TREE_OPERAND
(
yyvsp
[
-
2
].
ttype
,
0
))
==
STRING_CST
)
&&
TREE_CODE
(
TREE_OPERAND
(
yyvsp
[
-
2
].
ttype
,
0
))
==
STRING_CST
)
...
@@ -2256,11 +2267,11 @@ case 10:
...
@@ -2256,11 +2267,11 @@ case 10:
error
(
"argument of `asm' is not a constant string"
);
;
error
(
"argument of `asm' is not a constant string"
);
;
break
;}
break
;}
case
11
:
case
11
:
#line 2
72
"objc-parse.y"
#line 2
83
"objc-parse.y"
{
pedantic
=
yyvsp
[
-
1
].
itype
;
;
{
pedantic
=
yyvsp
[
-
1
].
itype
;
;
break
;}
break
;}
case
12
:
case
12
:
#line 2
77
"objc-parse.y"
#line 2
88
"objc-parse.y"
{
if
(
pedantic
)
{
if
(
pedantic
)
error
(
"ANSI C forbids data definition with no type or storage class"
);
error
(
"ANSI C forbids data definition with no type or storage class"
);
else
if
(
!
flag_traditional
)
else
if
(
!
flag_traditional
)
...
@@ -2272,45 +2283,45 @@ case 12:
...
@@ -2272,45 +2283,45 @@ case 12:
resume_momentary
(
yyvsp
[
-
2
].
itype
);
;
resume_momentary
(
yyvsp
[
-
2
].
itype
);
;
break
;}
break
;}
case
13
:
case
13
:
#line 2
87
"objc-parse.y"
#line 2
98
"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
14
:
case
14
:
#line
292
"objc-parse.y"
#line
303
"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
15
:
case
15
:
#line
297
"objc-parse.y"
#line
308
"objc-parse.y"
{
pedwarn
(
"empty declaration"
);
;
{
pedwarn
(
"empty declaration"
);
;
break
;}
break
;}
case
16
:
case
16
:
#line
299
"objc-parse.y"
#line
310
"objc-parse.y"
{
shadow_tag
(
yyvsp
[
-
1
].
ttype
);
;
{
shadow_tag
(
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
19
:
case
19
:
#line 3
03
"objc-parse.y"
#line 3
14
"objc-parse.y"
{
if
(
pedantic
)
{
if
(
pedantic
)
pedwarn
(
"ANSI C does not allow extra `;' outside of a function"
);
;
pedwarn
(
"ANSI C does not allow extra `;' outside of a function"
);
;
break
;}
break
;}
case
20
:
case
20
:
#line 3
09
"objc-parse.y"
#line 3
20
"objc-parse.y"
{
if
(
!
start_function
(
current_declspecs
,
yyvsp
[
0
].
ttype
,
{
if
(
!
start_function
(
current_declspecs
,
yyvsp
[
0
].
ttype
,
prefix_attributes
,
NULL_TREE
,
0
))
prefix_attributes
,
NULL_TREE
,
0
))
YYERROR1
;
YYERROR1
;
reinit_parse_for_function
();
;
reinit_parse_for_function
();
;
break
;}
break
;}
case
21
:
case
21
:
#line 3
14
"objc-parse.y"
#line 3
25
"objc-parse.y"
{
store_parm_decls
();
;
{
store_parm_decls
();
;
break
;}
break
;}
case
22
:
case
22
:
#line 3
16
"objc-parse.y"
#line 3
27
"objc-parse.y"
{
finish_function
(
0
);
{
finish_function
(
0
);
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
...
@@ -2318,25 +2329,25 @@ case 22:
...
@@ -2318,25 +2329,25 @@ case 22:
resume_momentary
(
yyvsp
[
-
5
].
itype
);
;
resume_momentary
(
yyvsp
[
-
5
].
itype
);
;
break
;}
break
;}
case
23
:
case
23
:
#line 3
22
"objc-parse.y"
#line 3
33
"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
24
:
case
24
:
#line 3
27
"objc-parse.y"
#line 3
38
"objc-parse.y"
{
if
(
!
start_function
(
current_declspecs
,
yyvsp
[
0
].
ttype
,
{
if
(
!
start_function
(
current_declspecs
,
yyvsp
[
0
].
ttype
,
prefix_attributes
,
NULL_TREE
,
0
))
prefix_attributes
,
NULL_TREE
,
0
))
YYERROR1
;
YYERROR1
;
reinit_parse_for_function
();
;
reinit_parse_for_function
();
;
break
;}
break
;}
case
25
:
case
25
:
#line 3
32
"objc-parse.y"
#line 3
43
"objc-parse.y"
{
store_parm_decls
();
;
{
store_parm_decls
();
;
break
;}
break
;}
case
26
:
case
26
:
#line 3
34
"objc-parse.y"
#line 3
45
"objc-parse.y"
{
finish_function
(
0
);
{
finish_function
(
0
);
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
...
@@ -2344,25 +2355,25 @@ case 26:
...
@@ -2344,25 +2355,25 @@ case 26:
resume_momentary
(
yyvsp
[
-
5
].
itype
);
;
resume_momentary
(
yyvsp
[
-
5
].
itype
);
;
break
;}
break
;}
case
27
:
case
27
:
#line 3
40
"objc-parse.y"
#line 3
51
"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
28
:
case
28
:
#line 3
45
"objc-parse.y"
#line 3
56
"objc-parse.y"
{
if
(
!
start_function
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
{
if
(
!
start_function
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
prefix_attributes
,
NULL_TREE
,
0
))
prefix_attributes
,
NULL_TREE
,
0
))
YYERROR1
;
YYERROR1
;
reinit_parse_for_function
();
;
reinit_parse_for_function
();
;
break
;}
break
;}
case
29
:
case
29
:
#line 3
50
"objc-parse.y"
#line 3
61
"objc-parse.y"
{
store_parm_decls
();
;
{
store_parm_decls
();
;
break
;}
break
;}
case
30
:
case
30
:
#line 3
52
"objc-parse.y"
#line 3
63
"objc-parse.y"
{
finish_function
(
0
);
{
finish_function
(
0
);
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
current_declspecs
=
TREE_VALUE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
prefix_attributes
=
TREE_PURPOSE
(
declspec_stack
);
...
@@ -2370,72 +2381,72 @@ case 30:
...
@@ -2370,72 +2381,72 @@ case 30:
resume_momentary
(
yyvsp
[
-
5
].
itype
);
;
resume_momentary
(
yyvsp
[
-
5
].
itype
);
;
break
;}
break
;}
case
31
:
case
31
:
#line 3
58
"objc-parse.y"
#line 3
69
"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
36
:
case
36
:
#line 3
72
"objc-parse.y"
#line 3
83
"objc-parse.y"
{
yyval
.
code
=
ADDR_EXPR
;
;
{
yyval
.
code
=
ADDR_EXPR
;
;
break
;}
break
;}
case
37
:
case
37
:
#line 3
74
"objc-parse.y"
#line 3
85
"objc-parse.y"
{
yyval
.
code
=
NEGATE_EXPR
;
;
{
yyval
.
code
=
NEGATE_EXPR
;
;
break
;}
break
;}
case
38
:
case
38
:
#line 3
76
"objc-parse.y"
#line 3
87
"objc-parse.y"
{
yyval
.
code
=
CONVERT_EXPR
;
;
{
yyval
.
code
=
CONVERT_EXPR
;
;
break
;}
break
;}
case
39
:
case
39
:
#line 3
78
"objc-parse.y"
#line 3
89
"objc-parse.y"
{
yyval
.
code
=
PREINCREMENT_EXPR
;
;
{
yyval
.
code
=
PREINCREMENT_EXPR
;
;
break
;}
break
;}
case
40
:
case
40
:
#line 3
80
"objc-parse.y"
#line 3
91
"objc-parse.y"
{
yyval
.
code
=
PREDECREMENT_EXPR
;
;
{
yyval
.
code
=
PREDECREMENT_EXPR
;
;
break
;}
break
;}
case
41
:
case
41
:
#line 3
82
"objc-parse.y"
#line 3
93
"objc-parse.y"
{
yyval
.
code
=
BIT_NOT_EXPR
;
;
{
yyval
.
code
=
BIT_NOT_EXPR
;
;
break
;}
break
;}
case
42
:
case
42
:
#line 3
84
"objc-parse.y"
#line 3
95
"objc-parse.y"
{
yyval
.
code
=
TRUTH_NOT_EXPR
;
;
{
yyval
.
code
=
TRUTH_NOT_EXPR
;
;
break
;}
break
;}
case
43
:
case
43
:
#line 3
88
"objc-parse.y"
#line 3
99
"objc-parse.y"
{
yyval
.
ttype
=
build_compound_expr
(
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
build_compound_expr
(
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
44
:
case
44
:
#line
393
"objc-parse.y"
#line
404
"objc-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
46
:
case
46
:
#line
399
"objc-parse.y"
#line
410
"objc-parse.y"
{
yyval
.
ttype
=
build_tree_list
(
NULL_TREE
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
build_tree_list
(
NULL_TREE
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
47
:
case
47
:
#line 4
01
"objc-parse.y"
#line 4
12
"objc-parse.y"
{
chainon
(
yyvsp
[
-
2
].
ttype
,
build_tree_list
(
NULL_TREE
,
yyvsp
[
0
].
ttype
));
;
{
chainon
(
yyvsp
[
-
2
].
ttype
,
build_tree_list
(
NULL_TREE
,
yyvsp
[
0
].
ttype
));
;
break
;}
break
;}
case
49
:
case
49
:
#line 4
07
"objc-parse.y"
#line 4
18
"objc-parse.y"
{
yyval
.
ttype
=
build_indirect_ref
(
yyvsp
[
0
].
ttype
,
"unary *"
);
;
{
yyval
.
ttype
=
build_indirect_ref
(
yyvsp
[
0
].
ttype
,
"unary *"
);
;
break
;}
break
;}
case
50
:
case
50
:
#line 4
10
"objc-parse.y"
#line 4
21
"objc-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
pedantic
=
yyvsp
[
-
1
].
itype
;
;
pedantic
=
yyvsp
[
-
1
].
itype
;
;
break
;}
break
;}
case
51
:
case
51
:
#line 4
13
"objc-parse.y"
#line 4
24
"objc-parse.y"
{
yyval
.
ttype
=
build_unary_op
(
yyvsp
[
-
1
].
code
,
yyvsp
[
0
].
ttype
,
0
);
{
yyval
.
ttype
=
build_unary_op
(
yyvsp
[
-
1
].
code
,
yyvsp
[
0
].
ttype
,
0
);
overflow_warning
(
yyval
.
ttype
);
;
overflow_warning
(
yyval
.
ttype
);
;
break
;}
break
;}
case
52
:
case
52
:
#line 4
17
"objc-parse.y"
#line 4
28
"objc-parse.y"
{
tree
label
=
lookup_label
(
yyvsp
[
0
].
ttype
);
{
tree
label
=
lookup_label
(
yyvsp
[
0
].
ttype
);
if
(
pedantic
)
if
(
pedantic
)
pedwarn
(
"ANSI C forbids `&&'"
);
pedwarn
(
"ANSI C forbids `&&'"
);
...
@@ -2450,7 +2461,7 @@ case 52:
...
@@ -2450,7 +2461,7 @@ case 52:
;
;
break
;}
break
;}
case
53
:
case
53
:
#line 4
45
"objc-parse.y"
#line 4
56
"objc-parse.y"
{
skip_evaluation
--
;
{
skip_evaluation
--
;
if
(
TREE_CODE
(
yyvsp
[
0
].
ttype
)
==
COMPONENT_REF
if
(
TREE_CODE
(
yyvsp
[
0
].
ttype
)
==
COMPONENT_REF
&&
DECL_C_BIT_FIELD
(
TREE_OPERAND
(
yyvsp
[
0
].
ttype
,
1
)))
&&
DECL_C_BIT_FIELD
(
TREE_OPERAND
(
yyvsp
[
0
].
ttype
,
1
)))
...
@@ -2458,53 +2469,53 @@ case 53:
...
@@ -2458,53 +2469,53 @@ case 53:
yyval
.
ttype
=
c_sizeof
(
TREE_TYPE
(
yyvsp
[
0
].
ttype
));
;
yyval
.
ttype
=
c_sizeof
(
TREE_TYPE
(
yyvsp
[
0
].
ttype
));
;
break
;}
break
;}
case
54
:
case
54
:
#line 4
51
"objc-parse.y"
#line 4
62
"objc-parse.y"
{
skip_evaluation
--
;
{
skip_evaluation
--
;
yyval
.
ttype
=
c_sizeof
(
groktypename
(
yyvsp
[
-
1
].
ttype
));
;
yyval
.
ttype
=
c_sizeof
(
groktypename
(
yyvsp
[
-
1
].
ttype
));
;
break
;}
break
;}
case
55
:
case
55
:
#line 4
54
"objc-parse.y"
#line 4
65
"objc-parse.y"
{
skip_evaluation
--
;
{
skip_evaluation
--
;
yyval
.
ttype
=
c_alignof_expr
(
yyvsp
[
0
].
ttype
);
;
yyval
.
ttype
=
c_alignof_expr
(
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
56
:
case
56
:
#line 4
57
"objc-parse.y"
#line 4
68
"objc-parse.y"
{
skip_evaluation
--
;
{
skip_evaluation
--
;
yyval
.
ttype
=
c_alignof
(
groktypename
(
yyvsp
[
-
1
].
ttype
));
;
yyval
.
ttype
=
c_alignof
(
groktypename
(
yyvsp
[
-
1
].
ttype
));
;
break
;}
break
;}
case
57
:
case
57
:
#line 4
60
"objc-parse.y"
#line 4
71
"objc-parse.y"
{
yyval
.
ttype
=
build_unary_op
(
REALPART_EXPR
,
yyvsp
[
0
].
ttype
,
0
);
;
{
yyval
.
ttype
=
build_unary_op
(
REALPART_EXPR
,
yyvsp
[
0
].
ttype
,
0
);
;
break
;}
break
;}
case
58
:
case
58
:
#line 4
62
"objc-parse.y"
#line 4
73
"objc-parse.y"
{
yyval
.
ttype
=
build_unary_op
(
IMAGPART_EXPR
,
yyvsp
[
0
].
ttype
,
0
);
;
{
yyval
.
ttype
=
build_unary_op
(
IMAGPART_EXPR
,
yyvsp
[
0
].
ttype
,
0
);
;
break
;}
break
;}
case
59
:
case
59
:
#line 4
64
"objc-parse.y"
#line 4
75
"objc-parse.y"
{
yyval
.
ttype
=
build_va_arg
(
yyvsp
[
-
3
].
ttype
,
groktypename
(
yyvsp
[
-
1
].
ttype
));
;
{
yyval
.
ttype
=
build_va_arg
(
yyvsp
[
-
3
].
ttype
,
groktypename
(
yyvsp
[
-
1
].
ttype
));
;
break
;}
break
;}
case
60
:
case
60
:
#line 4
68
"objc-parse.y"
#line 4
79
"objc-parse.y"
{
skip_evaluation
++
;
;
{
skip_evaluation
++
;
;
break
;}
break
;}
case
61
:
case
61
:
#line 4
72
"objc-parse.y"
#line 4
83
"objc-parse.y"
{
skip_evaluation
++
;
;
{
skip_evaluation
++
;
;
break
;}
break
;}
case
63
:
case
63
:
#line 4
78
"objc-parse.y"
#line 4
89
"objc-parse.y"
{
tree
type
=
groktypename
(
yyvsp
[
-
2
].
ttype
);
{
tree
type
=
groktypename
(
yyvsp
[
-
2
].
ttype
);
yyval
.
ttype
=
build_c_cast
(
type
,
yyvsp
[
0
].
ttype
);
;
yyval
.
ttype
=
build_c_cast
(
type
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
64
:
case
64
:
#line 4
81
"objc-parse.y"
#line 4
92
"objc-parse.y"
{
start_init
(
NULL_TREE
,
NULL
,
0
);
{
start_init
(
NULL_TREE
,
NULL
,
0
);
yyvsp
[
-
2
].
ttype
=
groktypename
(
yyvsp
[
-
2
].
ttype
);
yyvsp
[
-
2
].
ttype
=
groktypename
(
yyvsp
[
-
2
].
ttype
);
really_start_incremental_init
(
yyvsp
[
-
2
].
ttype
);
;
really_start_incremental_init
(
yyvsp
[
-
2
].
ttype
);
;
break
;}
break
;}
case
65
:
case
65
:
#line 4
85
"objc-parse.y"
#line 4
96
"objc-parse.y"
{
char
*
name
;
{
char
*
name
;
tree
result
=
pop_init_level
(
0
);
tree
result
=
pop_init_level
(
0
);
tree
type
=
yyvsp
[
-
5
].
ttype
;
tree
type
=
yyvsp
[
-
5
].
ttype
;
...
@@ -2531,90 +2542,90 @@ case 65:
...
@@ -2531,90 +2542,90 @@ case 65:
;
;
break
;}
break
;}
case
67
:
case
67
:
#line 5
14
"objc-parse.y"
#line 5
25
"objc-parse.y"
{
yyval
.
ttype
=
parser_build_binary_op
(
yyvsp
[
-
1
].
code
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
parser_build_binary_op
(
yyvsp
[
-
1
].
code
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
68
:
case
68
:
#line 5
16
"objc-parse.y"
#line 5
27
"objc-parse.y"
{
yyval
.
ttype
=
parser_build_binary_op
(
yyvsp
[
-
1
].
code
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
parser_build_binary_op
(
yyvsp
[
-
1
].
code
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
69
:
case
69
:
#line 5
18
"objc-parse.y"
#line 5
29
"objc-parse.y"
{
yyval
.
ttype
=
parser_build_binary_op
(
yyvsp
[
-
1
].
code
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
parser_build_binary_op
(
yyvsp
[
-
1
].
code
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
70
:
case
70
:
#line 5
20
"objc-parse.y"
#line 5
31
"objc-parse.y"
{
yyval
.
ttype
=
parser_build_binary_op
(
yyvsp
[
-
1
].
code
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
parser_build_binary_op
(
yyvsp
[
-
1
].
code
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
71
:
case
71
:
#line 5
22
"objc-parse.y"
#line 5
33
"objc-parse.y"
{
yyval
.
ttype
=
parser_build_binary_op
(
yyvsp
[
-
1
].
code
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
parser_build_binary_op
(
yyvsp
[
-
1
].
code
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
72
:
case
72
:
#line 5
24
"objc-parse.y"
#line 5
35
"objc-parse.y"
{
yyval
.
ttype
=
parser_build_binary_op
(
yyvsp
[
-
1
].
code
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
parser_build_binary_op
(
yyvsp
[
-
1
].
code
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
73
:
case
73
:
#line 5
26
"objc-parse.y"
#line 5
37
"objc-parse.y"
{
yyval
.
ttype
=
parser_build_binary_op
(
yyvsp
[
-
1
].
code
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
parser_build_binary_op
(
yyvsp
[
-
1
].
code
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
74
:
case
74
:
#line 5
28
"objc-parse.y"
#line 5
39
"objc-parse.y"
{
yyval
.
ttype
=
parser_build_binary_op
(
yyvsp
[
-
1
].
code
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
parser_build_binary_op
(
yyvsp
[
-
1
].
code
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
75
:
case
75
:
#line 5
30
"objc-parse.y"
#line 5
41
"objc-parse.y"
{
yyval
.
ttype
=
parser_build_binary_op
(
yyvsp
[
-
1
].
code
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
parser_build_binary_op
(
yyvsp
[
-
1
].
code
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
76
:
case
76
:
#line 5
32
"objc-parse.y"
#line 5
43
"objc-parse.y"
{
yyval
.
ttype
=
parser_build_binary_op
(
yyvsp
[
-
1
].
code
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
parser_build_binary_op
(
yyvsp
[
-
1
].
code
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
77
:
case
77
:
#line 5
34
"objc-parse.y"
#line 5
45
"objc-parse.y"
{
yyval
.
ttype
=
parser_build_binary_op
(
yyvsp
[
-
1
].
code
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
parser_build_binary_op
(
yyvsp
[
-
1
].
code
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
78
:
case
78
:
#line 5
36
"objc-parse.y"
#line 5
47
"objc-parse.y"
{
yyval
.
ttype
=
parser_build_binary_op
(
yyvsp
[
-
1
].
code
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
parser_build_binary_op
(
yyvsp
[
-
1
].
code
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
79
:
case
79
:
#line 5
38
"objc-parse.y"
#line 5
49
"objc-parse.y"
{
yyvsp
[
-
1
].
ttype
=
truthvalue_conversion
(
default_conversion
(
yyvsp
[
-
1
].
ttype
));
{
yyvsp
[
-
1
].
ttype
=
truthvalue_conversion
(
default_conversion
(
yyvsp
[
-
1
].
ttype
));
skip_evaluation
+=
yyvsp
[
-
1
].
ttype
==
boolean_false_node
;
;
skip_evaluation
+=
yyvsp
[
-
1
].
ttype
==
boolean_false_node
;
;
break
;}
break
;}
case
80
:
case
80
:
#line 5
41
"objc-parse.y"
#line 5
52
"objc-parse.y"
{
skip_evaluation
-=
yyvsp
[
-
3
].
ttype
==
boolean_false_node
;
{
skip_evaluation
-=
yyvsp
[
-
3
].
ttype
==
boolean_false_node
;
yyval
.
ttype
=
parser_build_binary_op
(
TRUTH_ANDIF_EXPR
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
0
].
ttype
);
;
yyval
.
ttype
=
parser_build_binary_op
(
TRUTH_ANDIF_EXPR
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
81
:
case
81
:
#line 5
44
"objc-parse.y"
#line 5
55
"objc-parse.y"
{
yyvsp
[
-
1
].
ttype
=
truthvalue_conversion
(
default_conversion
(
yyvsp
[
-
1
].
ttype
));
{
yyvsp
[
-
1
].
ttype
=
truthvalue_conversion
(
default_conversion
(
yyvsp
[
-
1
].
ttype
));
skip_evaluation
+=
yyvsp
[
-
1
].
ttype
==
boolean_true_node
;
;
skip_evaluation
+=
yyvsp
[
-
1
].
ttype
==
boolean_true_node
;
;
break
;}
break
;}
case
82
:
case
82
:
#line 5
47
"objc-parse.y"
#line 5
58
"objc-parse.y"
{
skip_evaluation
-=
yyvsp
[
-
3
].
ttype
==
boolean_true_node
;
{
skip_evaluation
-=
yyvsp
[
-
3
].
ttype
==
boolean_true_node
;
yyval
.
ttype
=
parser_build_binary_op
(
TRUTH_ORIF_EXPR
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
0
].
ttype
);
;
yyval
.
ttype
=
parser_build_binary_op
(
TRUTH_ORIF_EXPR
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
83
:
case
83
:
#line 5
50
"objc-parse.y"
#line 5
61
"objc-parse.y"
{
yyvsp
[
-
1
].
ttype
=
truthvalue_conversion
(
default_conversion
(
yyvsp
[
-
1
].
ttype
));
{
yyvsp
[
-
1
].
ttype
=
truthvalue_conversion
(
default_conversion
(
yyvsp
[
-
1
].
ttype
));
skip_evaluation
+=
yyvsp
[
-
1
].
ttype
==
boolean_false_node
;
;
skip_evaluation
+=
yyvsp
[
-
1
].
ttype
==
boolean_false_node
;
;
break
;}
break
;}
case
84
:
case
84
:
#line 5
53
"objc-parse.y"
#line 5
64
"objc-parse.y"
{
skip_evaluation
+=
((
yyvsp
[
-
4
].
ttype
==
boolean_true_node
)
{
skip_evaluation
+=
((
yyvsp
[
-
4
].
ttype
==
boolean_true_node
)
-
(
yyvsp
[
-
4
].
ttype
==
boolean_false_node
));
;
-
(
yyvsp
[
-
4
].
ttype
==
boolean_false_node
));
;
break
;}
break
;}
case
85
:
case
85
:
#line 5
56
"objc-parse.y"
#line 5
67
"objc-parse.y"
{
skip_evaluation
-=
yyvsp
[
-
6
].
ttype
==
boolean_true_node
;
{
skip_evaluation
-=
yyvsp
[
-
6
].
ttype
==
boolean_true_node
;
yyval
.
ttype
=
build_conditional_expr
(
yyvsp
[
-
6
].
ttype
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
0
].
ttype
);
;
yyval
.
ttype
=
build_conditional_expr
(
yyvsp
[
-
6
].
ttype
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
86
:
case
86
:
#line 5
59
"objc-parse.y"
#line 5
70
"objc-parse.y"
{
if
(
pedantic
)
{
if
(
pedantic
)
pedwarn
(
"ANSI C forbids omitting the middle term of a ?: expression"
);
pedwarn
(
"ANSI C forbids omitting the middle term of a ?: expression"
);
/* Make sure first operand is calculated only once. */
/* Make sure first operand is calculated only once. */
...
@@ -2623,12 +2634,12 @@ case 86:
...
@@ -2623,12 +2634,12 @@ case 86:
skip_evaluation
+=
yyvsp
[
-
1
].
ttype
==
boolean_true_node
;
;
skip_evaluation
+=
yyvsp
[
-
1
].
ttype
==
boolean_true_node
;
;
break
;}
break
;}
case
87
:
case
87
:
#line 5
66
"objc-parse.y"
#line 5
77
"objc-parse.y"
{
skip_evaluation
-=
yyvsp
[
-
4
].
ttype
==
boolean_true_node
;
{
skip_evaluation
-=
yyvsp
[
-
4
].
ttype
==
boolean_true_node
;
yyval
.
ttype
=
build_conditional_expr
(
yyvsp
[
-
4
].
ttype
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
0
].
ttype
);
;
yyval
.
ttype
=
build_conditional_expr
(
yyvsp
[
-
4
].
ttype
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
88
:
case
88
:
#line 5
69
"objc-parse.y"
#line 5
80
"objc-parse.y"
{
char
class
;
{
char
class
;
yyval
.
ttype
=
build_modify_expr
(
yyvsp
[
-
2
].
ttype
,
NOP_EXPR
,
yyvsp
[
0
].
ttype
);
yyval
.
ttype
=
build_modify_expr
(
yyvsp
[
-
2
].
ttype
,
NOP_EXPR
,
yyvsp
[
0
].
ttype
);
class
=
TREE_CODE_CLASS
(
TREE_CODE
(
yyval
.
ttype
));
class
=
TREE_CODE_CLASS
(
TREE_CODE
(
yyval
.
ttype
));
...
@@ -2638,7 +2649,7 @@ case 88:
...
@@ -2638,7 +2649,7 @@ case 88:
;
;
break
;}
break
;}
case
89
:
case
89
:
#line 5
77
"objc-parse.y"
#line 5
88
"objc-parse.y"
{
char
class
;
{
char
class
;
yyval
.
ttype
=
build_modify_expr
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
-
1
].
code
,
yyvsp
[
0
].
ttype
);
yyval
.
ttype
=
build_modify_expr
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
-
1
].
code
,
yyvsp
[
0
].
ttype
);
/* This inhibits warnings in truthvalue_conversion. */
/* This inhibits warnings in truthvalue_conversion. */
...
@@ -2649,7 +2660,7 @@ case 89:
...
@@ -2649,7 +2660,7 @@ case 89:
;
;
break
;}
break
;}
case
90
:
case
90
:
#line
589
"objc-parse.y"
#line
600
"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
)
...
@@ -2810,11 +2821,11 @@ case 90:
...
@@ -2810,11 +2821,11 @@ case 90:
;
;
break
;}
break
;}
case
92
:
case
92
:
#line 7
49
"objc-parse.y"
#line 7
60
"objc-parse.y"
{
yyval
.
ttype
=
combine_strings
(
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
combine_strings
(
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
93
:
case
93
:
#line 7
51
"objc-parse.y"
#line 7
62
"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
==
'<'
)
...
@@ -2822,11 +2833,11 @@ case 93:
...
@@ -2822,11 +2833,11 @@ case 93:
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
;
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
;
break
;}
break
;}
case
94
:
case
94
:
#line 7
57
"objc-parse.y"
#line 7
68
"objc-parse.y"
{
yyval
.
ttype
=
error_mark_node
;
;
{
yyval
.
ttype
=
error_mark_node
;
;
break
;}
break
;}
case
95
:
case
95
:
#line 7
59
"objc-parse.y"
#line 7
70
"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"
);
...
@@ -2851,7 +2862,7 @@ case 95:
...
@@ -2851,7 +2862,7 @@ case 95:
;
;
break
;}
break
;}
case
96
:
case
96
:
#line 7
82
"objc-parse.y"
#line 7
93
"objc-parse.y"
{
{
/* Make sure we call expand_end_stmt_expr. Otherwise
/* Make sure we call expand_end_stmt_expr. Otherwise
we are likely to lose sequences and crash later. */
we are likely to lose sequences and crash later. */
...
@@ -2862,15 +2873,15 @@ case 96:
...
@@ -2862,15 +2873,15 @@ case 96:
;
;
break
;}
break
;}
case
97
:
case
97
:
#line
791
"objc-parse.y"
#line
802
"objc-parse.y"
{
yyval
.
ttype
=
build_function_call
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
build_function_call
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
98
:
case
98
:
#line
793
"objc-parse.y"
#line
804
"objc-parse.y"
{
yyval
.
ttype
=
build_array_ref
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
build_array_ref
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
99
:
case
99
:
#line
795
"objc-parse.y"
#line
806
"objc-parse.y"
{
{
if
(
doing_objc_thang
)
if
(
doing_objc_thang
)
{
{
...
@@ -2884,7 +2895,7 @@ case 99:
...
@@ -2884,7 +2895,7 @@ case 99:
;
;
break
;}
break
;}
case
100
:
case
100
:
#line 8
07
"objc-parse.y"
#line 8
18
"objc-parse.y"
{
{
tree
expr
=
build_indirect_ref
(
yyvsp
[
-
2
].
ttype
,
"->"
);
tree
expr
=
build_indirect_ref
(
yyvsp
[
-
2
].
ttype
,
"->"
);
...
@@ -2900,80 +2911,80 @@ case 100:
...
@@ -2900,80 +2911,80 @@ case 100:
;
;
break
;}
break
;}
case
101
:
case
101
:
#line 8
21
"objc-parse.y"
#line 8
32
"objc-parse.y"
{
yyval
.
ttype
=
build_unary_op
(
POSTINCREMENT_EXPR
,
yyvsp
[
-
1
].
ttype
,
0
);
;
{
yyval
.
ttype
=
build_unary_op
(
POSTINCREMENT_EXPR
,
yyvsp
[
-
1
].
ttype
,
0
);
;
break
;}
break
;}
case
102
:
case
102
:
#line 8
23
"objc-parse.y"
#line 8
34
"objc-parse.y"
{
yyval
.
ttype
=
build_unary_op
(
POSTDECREMENT_EXPR
,
yyvsp
[
-
1
].
ttype
,
0
);
;
{
yyval
.
ttype
=
build_unary_op
(
POSTDECREMENT_EXPR
,
yyvsp
[
-
1
].
ttype
,
0
);
;
break
;}
break
;}
case
103
:
case
103
:
#line 8
25
"objc-parse.y"
#line 8
36
"objc-parse.y"
{
yyval
.
ttype
=
build_message_expr
(
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
build_message_expr
(
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
104
:
case
104
:
#line 8
27
"objc-parse.y"
#line 8
38
"objc-parse.y"
{
yyval
.
ttype
=
build_selector_expr
(
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
build_selector_expr
(
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
105
:
case
105
:
#line 8
29
"objc-parse.y"
#line 8
40
"objc-parse.y"
{
yyval
.
ttype
=
build_protocol_expr
(
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
build_protocol_expr
(
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
106
:
case
106
:
#line 8
31
"objc-parse.y"
#line 8
42
"objc-parse.y"
{
yyval
.
ttype
=
build_encode_expr
(
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
build_encode_expr
(
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
107
:
case
107
:
#line 8
33
"objc-parse.y"
#line 8
44
"objc-parse.y"
{
yyval
.
ttype
=
build_objc_string_object
(
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
build_objc_string_object
(
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
109
:
case
109
:
#line 8
40
"objc-parse.y"
#line 8
51
"objc-parse.y"
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
111
:
case
111
:
#line 8
48
"objc-parse.y"
#line 8
59
"objc-parse.y"
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
114
:
case
114
:
#line 8
56
"objc-parse.y"
#line 8
67
"objc-parse.y"
{
c_mark_varargs
();
{
c_mark_varargs
();
if
(
pedantic
)
if
(
pedantic
)
pedwarn
(
"ANSI C does not permit use of `varargs.h'"
);
;
pedwarn
(
"ANSI C does not permit use of `varargs.h'"
);
;
break
;}
break
;}
case
115
:
case
115
:
#line 8
66
"objc-parse.y"
#line 8
77
"objc-parse.y"
{
;
{
;
break
;}
break
;}
case
120
:
case
120
:
#line 8
82
"objc-parse.y"
#line 8
93
"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
87
"objc-parse.y"
#line 8
98
"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
122
:
case
122
:
#line
892
"objc-parse.y"
#line
903
"objc-parse.y"
{
shadow_tag_warned
(
yyvsp
[
-
1
].
ttype
,
1
);
{
shadow_tag_warned
(
yyvsp
[
-
1
].
ttype
,
1
);
pedwarn
(
"empty declaration"
);
;
pedwarn
(
"empty declaration"
);
;
break
;}
break
;}
case
123
:
case
123
:
#line
895
"objc-parse.y"
#line
906
"objc-parse.y"
{
pedwarn
(
"empty declaration"
);
;
{
pedwarn
(
"empty declaration"
);
;
break
;}
break
;}
case
124
:
case
124
:
#line 9
04
"objc-parse.y"
#line 9
15
"objc-parse.y"
{
;
{
;
break
;}
break
;}
case
129
:
case
129
:
#line 9
19
"objc-parse.y"
#line 9
30
"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
,
...
@@ -2983,131 +2994,131 @@ case 129:
...
@@ -2983,131 +2994,131 @@ case 129:
&
current_declspecs
,
&
prefix_attributes
);
;
&
current_declspecs
,
&
prefix_attributes
);
;
break
;}
break
;}
case
130
:
case
130
:
#line 9
30
"objc-parse.y"
#line 9
41
"objc-parse.y"
{
prefix_attributes
=
chainon
(
prefix_attributes
,
yyvsp
[
0
].
ttype
);
;
{
prefix_attributes
=
chainon
(
prefix_attributes
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
131
:
case
131
:
#line 9
35
"objc-parse.y"
#line 9
46
"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
40
"objc-parse.y"
#line 9
51
"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
133
:
case
133
:
#line 9
45
"objc-parse.y"
#line 9
56
"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
50
"objc-parse.y"
#line 9
61
"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
135
:
case
135
:
#line 9
55
"objc-parse.y"
#line 9
66
"objc-parse.y"
{
shadow_tag
(
yyvsp
[
-
1
].
ttype
);
;
{
shadow_tag
(
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
136
:
case
136
:
#line 9
57
"objc-parse.y"
#line 9
68
"objc-parse.y"
{
pedwarn
(
"empty declaration"
);
;
{
pedwarn
(
"empty declaration"
);
;
break
;}
break
;}
case
137
:
case
137
:
#line 9
59
"objc-parse.y"
#line 9
70
"objc-parse.y"
{
pedantic
=
yyvsp
[
-
1
].
itype
;
;
{
pedantic
=
yyvsp
[
-
1
].
itype
;
;
break
;}
break
;}
case
138
:
case
138
:
#line 9
69
"objc-parse.y"
#line 9
80
"objc-parse.y"
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
139
:
case
139
:
#line 9
71
"objc-parse.y"
#line 9
82
"objc-parse.y"
{
yyval
.
ttype
=
chainon
(
yyvsp
[
0
].
ttype
,
tree_cons
(
NULL_TREE
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
-
2
].
ttype
));
;
{
yyval
.
ttype
=
chainon
(
yyvsp
[
0
].
ttype
,
tree_cons
(
NULL_TREE
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
-
2
].
ttype
));
;
break
;}
break
;}
case
140
:
case
140
:
#line 9
75
"objc-parse.y"
#line 9
86
"objc-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
141
:
case
141
:
#line 9
77
"objc-parse.y"
#line 9
88
"objc-parse.y"
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
142
:
case
142
:
#line 9
79
"objc-parse.y"
#line 9
90
"objc-parse.y"
{
if
(
extra_warnings
)
{
if
(
extra_warnings
)
warning
(
"`%s' is not at beginning of declaration"
,
warning
(
"`%s' is not at beginning of declaration"
,
IDENTIFIER_POINTER
(
yyvsp
[
0
].
ttype
));
IDENTIFIER_POINTER
(
yyvsp
[
0
].
ttype
));
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
143
:
case
143
:
#line 9
84
"objc-parse.y"
#line 9
95
"objc-parse.y"
{
yyval
.
ttype
=
tree_cons
(
yyvsp
[
0
].
ttype
,
NULL_TREE
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
tree_cons
(
yyvsp
[
0
].
ttype
,
NULL_TREE
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
144
:
case
144
:
#line
989
"objc-parse.y"
#line
1000
"objc-parse.y"
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
145
:
case
145
:
#line
991
"objc-parse.y"
#line
1002
"objc-parse.y"
{
yyval
.
ttype
=
chainon
(
yyvsp
[
0
].
ttype
,
tree_cons
(
NULL_TREE
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
-
2
].
ttype
));
;
{
yyval
.
ttype
=
chainon
(
yyvsp
[
0
].
ttype
,
tree_cons
(
NULL_TREE
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
-
2
].
ttype
));
;
break
;}
break
;}
case
146
:
case
146
:
#line
996
"objc-parse.y"
#line
1007
"objc-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
147
:
case
147
:
#line
998
"objc-parse.y"
#line
1009
"objc-parse.y"
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
148
:
case
148
:
#line 10
00
"objc-parse.y"
#line 10
11
"objc-parse.y"
{
if
(
extra_warnings
)
{
if
(
extra_warnings
)
warning
(
"`%s' is not at beginning of declaration"
,
warning
(
"`%s' is not at beginning of declaration"
,
IDENTIFIER_POINTER
(
yyvsp
[
0
].
ttype
));
IDENTIFIER_POINTER
(
yyvsp
[
0
].
ttype
));
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
149
:
case
149
:
#line 10
13
"objc-parse.y"
#line 10
24
"objc-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
150
:
case
150
:
#line 10
15
"objc-parse.y"
#line 10
26
"objc-parse.y"
{
yyval
.
ttype
=
tree_cons
(
yyvsp
[
0
].
ttype
,
NULL_TREE
,
NULL_TREE
);
;
{
yyval
.
ttype
=
tree_cons
(
yyvsp
[
0
].
ttype
,
NULL_TREE
,
NULL_TREE
);
;
break
;}
break
;}
case
151
:
case
151
:
#line 10
17
"objc-parse.y"
#line 10
28
"objc-parse.y"
{
yyval
.
ttype
=
chainon
(
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
chainon
(
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
152
:
case
152
:
#line 10
19
"objc-parse.y"
#line 10
30
"objc-parse.y"
{
yyval
.
ttype
=
tree_cons
(
yyvsp
[
0
].
ttype
,
NULL_TREE
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
tree_cons
(
yyvsp
[
0
].
ttype
,
NULL_TREE
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
153
:
case
153
:
#line 10
24
"objc-parse.y"
#line 10
35
"objc-parse.y"
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
NULL_TREE
);
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
NULL_TREE
);
TREE_STATIC
(
yyval
.
ttype
)
=
1
;
;
TREE_STATIC
(
yyval
.
ttype
)
=
1
;
;
break
;}
break
;}
case
154
:
case
154
:
#line 10
27
"objc-parse.y"
#line 10
38
"objc-parse.y"
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
break
;}
break
;}
case
155
:
case
155
:
#line 10
29
"objc-parse.y"
#line 10
40
"objc-parse.y"
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ttype
);
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ttype
);
TREE_STATIC
(
yyval
.
ttype
)
=
1
;
;
TREE_STATIC
(
yyval
.
ttype
)
=
1
;
;
break
;}
break
;}
case
156
:
case
156
:
#line 10
32
"objc-parse.y"
#line 10
43
"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
));
...
@@ -3115,150 +3126,150 @@ case 156:
...
@@ -3115,150 +3126,150 @@ case 156:
TREE_STATIC
(
yyval
.
ttype
)
=
TREE_STATIC
(
yyvsp
[
-
1
].
ttype
);
;
TREE_STATIC
(
yyval
.
ttype
)
=
TREE_STATIC
(
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
157
:
case
157
:
#line 10
46
"objc-parse.y"
#line 10
57
"objc-parse.y"
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
158
:
case
158
:
#line 10
48
"objc-parse.y"
#line 10
59
"objc-parse.y"
{
yyval
.
ttype
=
chainon
(
yyvsp
[
0
].
ttype
,
tree_cons
(
NULL_TREE
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
-
2
].
ttype
));
;
{
yyval
.
ttype
=
chainon
(
yyvsp
[
0
].
ttype
,
tree_cons
(
NULL_TREE
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
-
2
].
ttype
));
;
break
;}
break
;}
case
159
:
case
159
:
#line 10
52
"objc-parse.y"
#line 10
63
"objc-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
160
:
case
160
:
#line 10
54
"objc-parse.y"
#line 10
65
"objc-parse.y"
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
163
:
case
163
:
#line 10
64
"objc-parse.y"
#line 10
75
"objc-parse.y"
{
/* For a typedef name, record the meaning, not the name.
{
/* For a typedef name, record the meaning, not the name.
In case of `foo foo, bar;'. */
In case of `foo foo, bar;'. */
yyval
.
ttype
=
lookup_name
(
yyvsp
[
0
].
ttype
);
;
yyval
.
ttype
=
lookup_name
(
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
164
:
case
164
:
#line 10
68
"objc-parse.y"
#line 10
79
"objc-parse.y"
{
yyval
.
ttype
=
get_static_reference
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
get_static_reference
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
165
:
case
165
:
#line 10
70
"objc-parse.y"
#line 10
81
"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
75
"objc-parse.y"
#line 10
86
"objc-parse.y"
{
yyval
.
ttype
=
get_object_reference
(
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
get_object_reference
(
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
167
:
case
167
:
#line 10
77
"objc-parse.y"
#line 10
88
"objc-parse.y"
{
yyval
.
ttype
=
TREE_TYPE
(
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
TREE_TYPE
(
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
168
:
case
168
:
#line 10
79
"objc-parse.y"
#line 10
90
"objc-parse.y"
{
yyval
.
ttype
=
groktypename
(
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
groktypename
(
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
176
:
case
176
:
#line 11
01
"objc-parse.y"
#line 11
12
"objc-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
177
:
case
177
:
#line 11
03
"objc-parse.y"
#line 11
14
"objc-parse.y"
{
if
(
TREE_CHAIN
(
yyvsp
[
-
1
].
ttype
))
yyvsp
[
-
1
].
ttype
=
combine_strings
(
yyvsp
[
-
1
].
ttype
);
{
if
(
TREE_CHAIN
(
yyvsp
[
-
1
].
ttype
))
yyvsp
[
-
1
].
ttype
=
combine_strings
(
yyvsp
[
-
1
].
ttype
);
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
;
;
break
;}
break
;}
case
178
:
case
178
:
#line 11
10
"objc-parse.y"
#line 11
21
"objc-parse.y"
{
yyval
.
ttype
=
start_decl
(
yyvsp
[
-
3
].
ttype
,
current_declspecs
,
1
,
{
yyval
.
ttype
=
start_decl
(
yyvsp
[
-
3
].
ttype
,
current_declspecs
,
1
,
yyvsp
[
-
1
].
ttype
,
prefix_attributes
);
yyvsp
[
-
1
].
ttype
,
prefix_attributes
);
start_init
(
yyval
.
ttype
,
yyvsp
[
-
2
].
ttype
,
global_bindings_p
());
;
start_init
(
yyval
.
ttype
,
yyvsp
[
-
2
].
ttype
,
global_bindings_p
());
;
break
;}
break
;}
case
179
:
case
179
:
#line 11
15
"objc-parse.y"
#line 11
26
"objc-parse.y"
{
finish_init
();
{
finish_init
();
finish_decl
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
4
].
ttype
);
;
finish_decl
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
4
].
ttype
);
;
break
;}
break
;}
case
180
:
case
180
:
#line 11
18
"objc-parse.y"
#line 11
29
"objc-parse.y"
{
tree
d
=
start_decl
(
yyvsp
[
-
2
].
ttype
,
current_declspecs
,
0
,
{
tree
d
=
start_decl
(
yyvsp
[
-
2
].
ttype
,
current_declspecs
,
0
,
yyvsp
[
0
].
ttype
,
prefix_attributes
);
yyvsp
[
0
].
ttype
,
prefix_attributes
);
finish_decl
(
d
,
NULL_TREE
,
yyvsp
[
-
1
].
ttype
);
finish_decl
(
d
,
NULL_TREE
,
yyvsp
[
-
1
].
ttype
);
;
;
break
;}
break
;}
case
181
:
case
181
:
#line 11
26
"objc-parse.y"
#line 11
37
"objc-parse.y"
{
yyval
.
ttype
=
start_decl
(
yyvsp
[
-
3
].
ttype
,
current_declspecs
,
1
,
{
yyval
.
ttype
=
start_decl
(
yyvsp
[
-
3
].
ttype
,
current_declspecs
,
1
,
yyvsp
[
-
1
].
ttype
,
prefix_attributes
);
yyvsp
[
-
1
].
ttype
,
prefix_attributes
);
start_init
(
yyval
.
ttype
,
yyvsp
[
-
2
].
ttype
,
global_bindings_p
());
;
start_init
(
yyval
.
ttype
,
yyvsp
[
-
2
].
ttype
,
global_bindings_p
());
;
break
;}
break
;}
case
182
:
case
182
:
#line 11
31
"objc-parse.y"
#line 11
42
"objc-parse.y"
{
finish_init
();
{
finish_init
();
decl_attributes
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
-
3
].
ttype
,
prefix_attributes
);
decl_attributes
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
-
3
].
ttype
,
prefix_attributes
);
finish_decl
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
4
].
ttype
);
;
finish_decl
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
4
].
ttype
);
;
break
;}
break
;}
case
183
:
case
183
:
#line 11
35
"objc-parse.y"
#line 11
46
"objc-parse.y"
{
tree
d
=
start_decl
(
yyvsp
[
-
2
].
ttype
,
current_declspecs
,
0
,
{
tree
d
=
start_decl
(
yyvsp
[
-
2
].
ttype
,
current_declspecs
,
0
,
yyvsp
[
0
].
ttype
,
prefix_attributes
);
yyvsp
[
0
].
ttype
,
prefix_attributes
);
finish_decl
(
d
,
NULL_TREE
,
yyvsp
[
-
1
].
ttype
);
;
finish_decl
(
d
,
NULL_TREE
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
184
:
case
184
:
#line 11
43
"objc-parse.y"
#line 11
54
"objc-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
185
:
case
185
:
#line 11
45
"objc-parse.y"
#line 11
56
"objc-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
186
:
case
186
:
#line 11
50
"objc-parse.y"
#line 11
61
"objc-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
187
:
case
187
:
#line 11
52
"objc-parse.y"
#line 11
63
"objc-parse.y"
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
188
:
case
188
:
#line 11
57
"objc-parse.y"
#line 11
68
"objc-parse.y"
{
yyval
.
ttype
=
yyvsp
[
-
2
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
-
2
].
ttype
;
;
break
;}
break
;}
case
189
:
case
189
:
#line 11
62
"objc-parse.y"
#line 11
73
"objc-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
190
:
case
190
:
#line 11
64
"objc-parse.y"
#line 11
75
"objc-parse.y"
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
191
:
case
191
:
#line 11
69
"objc-parse.y"
#line 11
80
"objc-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
192
:
case
192
:
#line 11
71
"objc-parse.y"
#line 11
82
"objc-parse.y"
{
yyval
.
ttype
=
build_tree_list
(
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
{
yyval
.
ttype
=
build_tree_list
(
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
break
;}
break
;}
case
193
:
case
193
:
#line 11
73
"objc-parse.y"
#line 11
84
"objc-parse.y"
{
yyval
.
ttype
=
build_tree_list
(
yyvsp
[
-
3
].
ttype
,
build_tree_list
(
NULL_TREE
,
yyvsp
[
-
1
].
ttype
));
;
{
yyval
.
ttype
=
build_tree_list
(
yyvsp
[
-
3
].
ttype
,
build_tree_list
(
NULL_TREE
,
yyvsp
[
-
1
].
ttype
));
;
break
;}
break
;}
case
194
:
case
194
:
#line 11
75
"objc-parse.y"
#line 11
86
"objc-parse.y"
{
yyval
.
ttype
=
build_tree_list
(
yyvsp
[
-
5
].
ttype
,
tree_cons
(
NULL_TREE
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
));
;
{
yyval
.
ttype
=
build_tree_list
(
yyvsp
[
-
5
].
ttype
,
tree_cons
(
NULL_TREE
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
));
;
break
;}
break
;}
case
195
:
case
195
:
#line 11
77
"objc-parse.y"
#line 11
88
"objc-parse.y"
{
yyval
.
ttype
=
build_tree_list
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
build_tree_list
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
201
:
case
201
:
#line 1
195
"objc-parse.y"
#line 1
206
"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
202
:
case
202
:
#line 12
00
"objc-parse.y"
#line 12
11
"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
))
...
@@ -3267,36 +3278,36 @@ case 202:
...
@@ -3267,36 +3278,36 @@ case 202:
pop_momentary_nofree
();
;
pop_momentary_nofree
();
;
break
;}
break
;}
case
203
:
case
203
:
#line 12
08
"objc-parse.y"
#line 12
19
"objc-parse.y"
{
yyval
.
ttype
=
error_mark_node
;
;
{
yyval
.
ttype
=
error_mark_node
;
;
break
;}
break
;}
case
204
:
case
204
:
#line 12
14
"objc-parse.y"
#line 12
25
"objc-parse.y"
{
if
(
pedantic
)
{
if
(
pedantic
)
pedwarn
(
"ANSI C forbids empty initializer braces"
);
;
pedwarn
(
"ANSI C forbids empty initializer braces"
);
;
break
;}
break
;}
case
210
:
case
210
:
#line 12
30
"objc-parse.y"
#line 12
41
"objc-parse.y"
{
set_init_label
(
yyvsp
[
-
1
].
ttype
);
;
{
set_init_label
(
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
213
:
case
213
:
#line 12
37
"objc-parse.y"
#line 12
48
"objc-parse.y"
{
push_init_level
(
0
);
;
{
push_init_level
(
0
);
;
break
;}
break
;}
case
214
:
case
214
:
#line 12
39
"objc-parse.y"
#line 12
50
"objc-parse.y"
{
process_init_element
(
pop_init_level
(
0
));
;
{
process_init_element
(
pop_init_level
(
0
));
;
break
;}
break
;}
case
215
:
case
215
:
#line 12
41
"objc-parse.y"
#line 12
52
"objc-parse.y"
{
process_init_element
(
yyvsp
[
0
].
ttype
);
;
{
process_init_element
(
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
219
:
case
219
:
#line 12
52
"objc-parse.y"
#line 12
63
"objc-parse.y"
{
set_init_label
(
yyvsp
[
0
].
ttype
);
;
{
set_init_label
(
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
220
:
case
220
:
#line 12
60
"objc-parse.y"
#line 12
71
"objc-parse.y"
{
if
(
pedantic
)
{
if
(
pedantic
)
pedwarn
(
"ANSI C forbids nested functions"
);
pedwarn
(
"ANSI C forbids nested functions"
);
...
@@ -3310,16 +3321,16 @@ case 220:
...
@@ -3310,16 +3321,16 @@ case 220:
reinit_parse_for_function
();
;
reinit_parse_for_function
();
;
break
;}
break
;}
case
221
:
case
221
:
#line 12
72
"objc-parse.y"
#line 12
83
"objc-parse.y"
{
store_parm_decls
();
;
{
store_parm_decls
();
;
break
;}
break
;}
case
222
:
case
222
:
#line 12
80
"objc-parse.y"
#line 12
91
"objc-parse.y"
{
finish_function
(
1
);
{
finish_function
(
1
);
pop_function_context
();
;
pop_function_context
();
;
break
;}
break
;}
case
223
:
case
223
:
#line 12
86
"objc-parse.y"
#line 12
97
"objc-parse.y"
{
if
(
pedantic
)
{
if
(
pedantic
)
pedwarn
(
"ANSI C forbids nested functions"
);
pedwarn
(
"ANSI C forbids nested functions"
);
...
@@ -3333,197 +3344,197 @@ case 223:
...
@@ -3333,197 +3344,197 @@ case 223:
reinit_parse_for_function
();
;
reinit_parse_for_function
();
;
break
;}
break
;}
case
224
:
case
224
:
#line 1
298
"objc-parse.y"
#line 1
309
"objc-parse.y"
{
store_parm_decls
();
;
{
store_parm_decls
();
;
break
;}
break
;}
case
225
:
case
225
:
#line 13
06
"objc-parse.y"
#line 13
17
"objc-parse.y"
{
finish_function
(
1
);
{
finish_function
(
1
);
pop_function_context
();
;
pop_function_context
();
;
break
;}
break
;}
case
228
:
case
228
:
#line 13
22
"objc-parse.y"
#line 13
33
"objc-parse.y"
{
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
;
break
;}
break
;}
case
229
:
case
229
:
#line 13
24
"objc-parse.y"
#line 13
35
"objc-parse.y"
{
yyval
.
ttype
=
build_nt
(
CALL_EXPR
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
{
yyval
.
ttype
=
build_nt
(
CALL_EXPR
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
break
;}
break
;}
case
230
:
case
230
:
#line 13
29
"objc-parse.y"
#line 13
40
"objc-parse.y"
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
231
:
case
231
:
#line 13
31
"objc-parse.y"
#line 13
42
"objc-parse.y"
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
yyvsp
[
-
2
].
ttype
,
NULL_TREE
);
;
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
yyvsp
[
-
2
].
ttype
,
NULL_TREE
);
;
break
;}
break
;}
case
232
:
case
232
:
#line 13
33
"objc-parse.y"
#line 13
44
"objc-parse.y"
{
yyval
.
ttype
=
make_pointer_declarator
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
make_pointer_declarator
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
233
:
case
233
:
#line 13
40
"objc-parse.y"
#line 13
51
"objc-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
236
:
case
236
:
#line 13
52
"objc-parse.y"
#line 13
63
"objc-parse.y"
{
yyval
.
ttype
=
build_nt
(
CALL_EXPR
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
{
yyval
.
ttype
=
build_nt
(
CALL_EXPR
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
break
;}
break
;}
case
237
:
case
237
:
#line 13
57
"objc-parse.y"
#line 13
68
"objc-parse.y"
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
238
:
case
238
:
#line 13
59
"objc-parse.y"
#line 13
70
"objc-parse.y"
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
yyvsp
[
-
2
].
ttype
,
NULL_TREE
);
;
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
yyvsp
[
-
2
].
ttype
,
NULL_TREE
);
;
break
;}
break
;}
case
239
:
case
239
:
#line 13
61
"objc-parse.y"
#line 13
72
"objc-parse.y"
{
yyval
.
ttype
=
make_pointer_declarator
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
make_pointer_declarator
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
240
:
case
240
:
#line 13
68
"objc-parse.y"
#line 13
79
"objc-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
242
:
case
242
:
#line 13
77
"objc-parse.y"
#line 13
88
"objc-parse.y"
{
yyval
.
ttype
=
build_nt
(
CALL_EXPR
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
{
yyval
.
ttype
=
build_nt
(
CALL_EXPR
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
break
;}
break
;}
case
243
:
case
243
:
#line 13
82
"objc-parse.y"
#line 13
93
"objc-parse.y"
{
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
;
break
;}
break
;}
case
244
:
case
244
:
#line 13
84
"objc-parse.y"
#line 13
95
"objc-parse.y"
{
yyval
.
ttype
=
make_pointer_declarator
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
make_pointer_declarator
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
245
:
case
245
:
#line 13
86
"objc-parse.y"
#line 13
97
"objc-parse.y"
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
246
:
case
246
:
#line 13
88
"objc-parse.y"
#line 13
99
"objc-parse.y"
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
yyvsp
[
-
2
].
ttype
,
NULL_TREE
);
;
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
yyvsp
[
-
2
].
ttype
,
NULL_TREE
);
;
break
;}
break
;}
case
247
:
case
247
:
#line 1
395
"objc-parse.y"
#line 1
406
"objc-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
249
:
case
249
:
#line 14
01
"objc-parse.y"
#line 14
12
"objc-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
250
:
case
250
:
#line 14
03
"objc-parse.y"
#line 14
14
"objc-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
251
:
case
251
:
#line 14
08
"objc-parse.y"
#line 14
19
"objc-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
252
:
case
252
:
#line 14
10
"objc-parse.y"
#line 14
21
"objc-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
253
:
case
253
:
#line 14
15
"objc-parse.y"
#line 14
26
"objc-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
254
:
case
254
:
#line 14
17
"objc-parse.y"
#line 14
28
"objc-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
255
:
case
255
:
#line 14
22
"objc-parse.y"
#line 14
33
"objc-parse.y"
{
yyval
.
ttype
=
start_struct
(
RECORD_TYPE
,
yyvsp
[
-
1
].
ttype
);
{
yyval
.
ttype
=
start_struct
(
RECORD_TYPE
,
yyvsp
[
-
1
].
ttype
);
/* Start scope of tag before parsing components. */
/* Start scope of tag before parsing components. */
;
;
break
;}
break
;}
case
256
:
case
256
:
#line 14
26
"objc-parse.y"
#line 14
37
"objc-parse.y"
{
yyval
.
ttype
=
finish_struct
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
2
].
ttype
,
chainon
(
yyvsp
[
-
6
].
ttype
,
yyvsp
[
0
].
ttype
));
;
{
yyval
.
ttype
=
finish_struct
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
2
].
ttype
,
chainon
(
yyvsp
[
-
6
].
ttype
,
yyvsp
[
0
].
ttype
));
;
break
;}
break
;}
case
257
:
case
257
:
#line 14
28
"objc-parse.y"
#line 14
39
"objc-parse.y"
{
yyval
.
ttype
=
finish_struct
(
start_struct
(
RECORD_TYPE
,
NULL_TREE
),
{
yyval
.
ttype
=
finish_struct
(
start_struct
(
RECORD_TYPE
,
NULL_TREE
),
yyvsp
[
-
2
].
ttype
,
chainon
(
yyvsp
[
-
4
].
ttype
,
yyvsp
[
0
].
ttype
));
yyvsp
[
-
2
].
ttype
,
chainon
(
yyvsp
[
-
4
].
ttype
,
yyvsp
[
0
].
ttype
));
;
;
break
;}
break
;}
case
258
:
case
258
:
#line 14
32
"objc-parse.y"
#line 14
43
"objc-parse.y"
{
yyval
.
ttype
=
xref_tag
(
RECORD_TYPE
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
xref_tag
(
RECORD_TYPE
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
259
:
case
259
:
#line 14
34
"objc-parse.y"
#line 14
45
"objc-parse.y"
{
yyval
.
ttype
=
start_struct
(
UNION_TYPE
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
start_struct
(
UNION_TYPE
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
260
:
case
260
:
#line 14
36
"objc-parse.y"
#line 14
47
"objc-parse.y"
{
yyval
.
ttype
=
finish_struct
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
2
].
ttype
,
chainon
(
yyvsp
[
-
6
].
ttype
,
yyvsp
[
0
].
ttype
));
;
{
yyval
.
ttype
=
finish_struct
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
2
].
ttype
,
chainon
(
yyvsp
[
-
6
].
ttype
,
yyvsp
[
0
].
ttype
));
;
break
;}
break
;}
case
261
:
case
261
:
#line 14
38
"objc-parse.y"
#line 14
49
"objc-parse.y"
{
yyval
.
ttype
=
finish_struct
(
start_struct
(
UNION_TYPE
,
NULL_TREE
),
{
yyval
.
ttype
=
finish_struct
(
start_struct
(
UNION_TYPE
,
NULL_TREE
),
yyvsp
[
-
2
].
ttype
,
chainon
(
yyvsp
[
-
4
].
ttype
,
yyvsp
[
0
].
ttype
));
yyvsp
[
-
2
].
ttype
,
chainon
(
yyvsp
[
-
4
].
ttype
,
yyvsp
[
0
].
ttype
));
;
;
break
;}
break
;}
case
262
:
case
262
:
#line 14
42
"objc-parse.y"
#line 14
53
"objc-parse.y"
{
yyval
.
ttype
=
xref_tag
(
UNION_TYPE
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
xref_tag
(
UNION_TYPE
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
263
:
case
263
:
#line 14
44
"objc-parse.y"
#line 14
55
"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
264
:
case
264
:
#line 14
47
"objc-parse.y"
#line 14
58
"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
265
:
case
265
:
#line 14
50
"objc-parse.y"
#line 14
61
"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
266
:
case
266
:
#line 14
53
"objc-parse.y"
#line 14
64
"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
267
:
case
267
:
#line 14
56
"objc-parse.y"
#line 14
67
"objc-parse.y"
{
yyval
.
ttype
=
xref_tag
(
ENUMERAL_TYPE
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
xref_tag
(
ENUMERAL_TYPE
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
271
:
case
271
:
#line 14
67
"objc-parse.y"
#line 14
78
"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
272
:
case
272
:
#line 14
73
"objc-parse.y"
#line 14
84
"objc-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
273
:
case
273
:
#line 14
75
"objc-parse.y"
#line 14
86
"objc-parse.y"
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
pedwarn
(
"no semicolon at end of struct or union"
);
;
pedwarn
(
"no semicolon at end of struct or union"
);
;
break
;}
break
;}
case
274
:
case
274
:
#line 14
80
"objc-parse.y"
#line 14
91
"objc-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
275
:
case
275
:
#line 14
82
"objc-parse.y"
#line 14
93
"objc-parse.y"
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
276
:
case
276
:
#line 14
84
"objc-parse.y"
#line 14
95
"objc-parse.y"
{
if
(
pedantic
)
{
if
(
pedantic
)
pedwarn
(
"extra semicolon in struct or union specified"
);
;
pedwarn
(
"extra semicolon in struct or union specified"
);
;
break
;}
break
;}
case
277
:
case
277
:
#line 14
88
"objc-parse.y"
#line 14
99
"objc-parse.y"
{
{
tree
interface
=
lookup_interface
(
yyvsp
[
-
1
].
ttype
);
tree
interface
=
lookup_interface
(
yyvsp
[
-
1
].
ttype
);
...
@@ -3538,7 +3549,7 @@ case 277:
...
@@ -3538,7 +3549,7 @@ case 277:
;
;
break
;}
break
;}
case
278
:
case
278
:
#line 15
13
"objc-parse.y"
#line 15
24
"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
);
...
@@ -3546,14 +3557,14 @@ case 278:
...
@@ -3546,14 +3557,14 @@ case 278:
resume_momentary
(
yyvsp
[
-
1
].
itype
);
;
resume_momentary
(
yyvsp
[
-
1
].
itype
);
;
break
;}
break
;}
case
279
:
case
279
:
#line 15
19
"objc-parse.y"
#line 15
30
"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
280
:
case
280
:
#line 15
24
"objc-parse.y"
#line 15
35
"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
);
...
@@ -3561,144 +3572,144 @@ case 280:
...
@@ -3561,144 +3572,144 @@ case 280:
resume_momentary
(
yyvsp
[
-
1
].
itype
);
;
resume_momentary
(
yyvsp
[
-
1
].
itype
);
;
break
;}
break
;}
case
281
:
case
281
:
#line 15
30
"objc-parse.y"
#line 15
41
"objc-parse.y"
{
if
(
pedantic
)
{
if
(
pedantic
)
pedwarn
(
"ANSI C forbids member declarations with no members"
);
pedwarn
(
"ANSI C forbids member declarations with no members"
);
shadow_tag
(
yyvsp
[
0
].
ttype
);
shadow_tag
(
yyvsp
[
0
].
ttype
);
yyval
.
ttype
=
NULL_TREE
;
;
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
282
:
case
282
:
#line 15
35
"objc-parse.y"
#line 15
46
"objc-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
283
:
case
283
:
#line 15
37
"objc-parse.y"
#line 15
48
"objc-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
pedantic
=
yyvsp
[
-
1
].
itype
;
;
pedantic
=
yyvsp
[
-
1
].
itype
;
;
break
;}
break
;}
case
285
:
case
285
:
#line 15
44
"objc-parse.y"
#line 15
55
"objc-parse.y"
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
286
:
case
286
:
#line 15
49
"objc-parse.y"
#line 15
60
"objc-parse.y"
{
yyval
.
ttype
=
grokfield
(
yyvsp
[
-
3
].
filename
,
yyvsp
[
-
2
].
lineno
,
yyvsp
[
-
1
].
ttype
,
current_declspecs
,
NULL_TREE
);
{
yyval
.
ttype
=
grokfield
(
yyvsp
[
-
3
].
filename
,
yyvsp
[
-
2
].
lineno
,
yyvsp
[
-
1
].
ttype
,
current_declspecs
,
NULL_TREE
);
decl_attributes
(
yyval
.
ttype
,
yyvsp
[
0
].
ttype
,
prefix_attributes
);
;
decl_attributes
(
yyval
.
ttype
,
yyvsp
[
0
].
ttype
,
prefix_attributes
);
;
break
;}
break
;}
case
287
:
case
287
:
#line 15
53
"objc-parse.y"
#line 15
64
"objc-parse.y"
{
yyval
.
ttype
=
grokfield
(
yyvsp
[
-
5
].
filename
,
yyvsp
[
-
4
].
lineno
,
yyvsp
[
-
3
].
ttype
,
current_declspecs
,
yyvsp
[
-
1
].
ttype
);
{
yyval
.
ttype
=
grokfield
(
yyvsp
[
-
5
].
filename
,
yyvsp
[
-
4
].
lineno
,
yyvsp
[
-
3
].
ttype
,
current_declspecs
,
yyvsp
[
-
1
].
ttype
);
decl_attributes
(
yyval
.
ttype
,
yyvsp
[
0
].
ttype
,
prefix_attributes
);
;
decl_attributes
(
yyval
.
ttype
,
yyvsp
[
0
].
ttype
,
prefix_attributes
);
;
break
;}
break
;}
case
288
:
case
288
:
#line 15
56
"objc-parse.y"
#line 15
67
"objc-parse.y"
{
yyval
.
ttype
=
grokfield
(
yyvsp
[
-
4
].
filename
,
yyvsp
[
-
3
].
lineno
,
NULL_TREE
,
current_declspecs
,
yyvsp
[
-
1
].
ttype
);
{
yyval
.
ttype
=
grokfield
(
yyvsp
[
-
4
].
filename
,
yyvsp
[
-
3
].
lineno
,
NULL_TREE
,
current_declspecs
,
yyvsp
[
-
1
].
ttype
);
decl_attributes
(
yyval
.
ttype
,
yyvsp
[
0
].
ttype
,
prefix_attributes
);
;
decl_attributes
(
yyval
.
ttype
,
yyvsp
[
0
].
ttype
,
prefix_attributes
);
;
break
;}
break
;}
case
290
:
case
290
:
#line 15
68
"objc-parse.y"
#line 15
79
"objc-parse.y"
{
if
(
yyvsp
[
-
2
].
ttype
==
error_mark_node
)
{
if
(
yyvsp
[
-
2
].
ttype
==
error_mark_node
)
yyval
.
ttype
=
yyvsp
[
-
2
].
ttype
;
yyval
.
ttype
=
yyvsp
[
-
2
].
ttype
;
else
else
yyval
.
ttype
=
chainon
(
yyvsp
[
0
].
ttype
,
yyvsp
[
-
2
].
ttype
);
;
yyval
.
ttype
=
chainon
(
yyvsp
[
0
].
ttype
,
yyvsp
[
-
2
].
ttype
);
;
break
;}
break
;}
case
291
:
case
291
:
#line 15
73
"objc-parse.y"
#line 15
84
"objc-parse.y"
{
yyval
.
ttype
=
error_mark_node
;
;
{
yyval
.
ttype
=
error_mark_node
;
;
break
;}
break
;}
case
292
:
case
292
:
#line 15
79
"objc-parse.y"
#line 15
90
"objc-parse.y"
{
yyval
.
ttype
=
build_enumerator
(
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
{
yyval
.
ttype
=
build_enumerator
(
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
break
;}
break
;}
case
293
:
case
293
:
#line 15
81
"objc-parse.y"
#line 15
92
"objc-parse.y"
{
yyval
.
ttype
=
build_enumerator
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
build_enumerator
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
294
:
case
294
:
#line 15
86
"objc-parse.y"
#line 15
97
"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
88
"objc-parse.y"
#line 15
99
"objc-parse.y"
{
yyval
.
ttype
=
build_tree_list
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
build_tree_list
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
296
:
case
296
:
#line 1
593
"objc-parse.y"
#line 1
604
"objc-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
298
:
case
298
:
#line 1
599
"objc-parse.y"
#line 1
610
"objc-parse.y"
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
break
;}
break
;}
case
299
:
case
299
:
#line 16
01
"objc-parse.y"
#line 16
12
"objc-parse.y"
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
300
:
case
300
:
#line 16
06
"objc-parse.y"
#line 16
17
"objc-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
301
:
case
301
:
#line 16
08
"objc-parse.y"
#line 16
19
"objc-parse.y"
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
302
:
case
302
:
#line 16
13
"objc-parse.y"
#line 16
24
"objc-parse.y"
{
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
;
break
;}
break
;}
case
303
:
case
303
:
#line 16
16
"objc-parse.y"
#line 16
27
"objc-parse.y"
{
yyval
.
ttype
=
make_pointer_declarator
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
make_pointer_declarator
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
304
:
case
304
:
#line 16
18
"objc-parse.y"
#line 16
29
"objc-parse.y"
{
yyval
.
ttype
=
make_pointer_declarator
(
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
{
yyval
.
ttype
=
make_pointer_declarator
(
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
break
;}
break
;}
case
305
:
case
305
:
#line 16
20
"objc-parse.y"
#line 16
31
"objc-parse.y"
{
yyval
.
ttype
=
build_nt
(
CALL_EXPR
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
{
yyval
.
ttype
=
build_nt
(
CALL_EXPR
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
break
;}
break
;}
case
306
:
case
306
:
#line 16
22
"objc-parse.y"
#line 16
33
"objc-parse.y"
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
307
:
case
307
:
#line 16
24
"objc-parse.y"
#line 16
35
"objc-parse.y"
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
yyvsp
[
-
2
].
ttype
,
NULL_TREE
);
;
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
yyvsp
[
-
2
].
ttype
,
NULL_TREE
);
;
break
;}
break
;}
case
308
:
case
308
:
#line 16
26
"objc-parse.y"
#line 16
37
"objc-parse.y"
{
yyval
.
ttype
=
build_nt
(
CALL_EXPR
,
NULL_TREE
,
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
{
yyval
.
ttype
=
build_nt
(
CALL_EXPR
,
NULL_TREE
,
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
break
;}
break
;}
case
309
:
case
309
:
#line 16
28
"objc-parse.y"
#line 16
39
"objc-parse.y"
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
NULL_TREE
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
NULL_TREE
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
310
:
case
310
:
#line 16
30
"objc-parse.y"
#line 16
41
"objc-parse.y"
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
NULL_TREE
,
NULL_TREE
);
;
{
yyval
.
ttype
=
build_nt
(
ARRAY_REF
,
NULL_TREE
,
NULL_TREE
);
;
break
;}
break
;}
case
311
:
case
311
:
#line 16
34
"objc-parse.y"
#line 16
45
"objc-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
312
:
case
312
:
#line 16
43
"objc-parse.y"
#line 16
54
"objc-parse.y"
{
{
if
(
pedantic
&&
yyvsp
[
0
].
ends_in_label
)
if
(
pedantic
&&
yyvsp
[
0
].
ends_in_label
)
pedwarn
(
"ANSI C forbids label at end of compound statement"
);
pedwarn
(
"ANSI C forbids label at end of compound statement"
);
;
;
break
;}
break
;}
case
314
:
case
314
:
#line 16
52
"objc-parse.y"
#line 16
63
"objc-parse.y"
{
yyval
.
ends_in_label
=
yyvsp
[
0
].
ends_in_label
;
;
{
yyval
.
ends_in_label
=
yyvsp
[
0
].
ends_in_label
;
;
break
;}
break
;}
case
315
:
case
315
:
#line 16
54
"objc-parse.y"
#line 16
65
"objc-parse.y"
{
yyval
.
ends_in_label
=
0
;
;
{
yyval
.
ends_in_label
=
0
;
;
break
;}
break
;}
case
319
:
case
319
:
#line 16
66
"objc-parse.y"
#line 16
77
"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
();
...
@@ -3709,12 +3720,12 @@ case 319:
...
@@ -3709,12 +3720,12 @@ case 319:
;
;
break
;}
break
;}
case
321
:
case
321
:
#line 16
81
"objc-parse.y"
#line 16
92
"objc-parse.y"
{
if
(
pedantic
)
{
if
(
pedantic
)
pedwarn
(
"ANSI C forbids label declarations"
);
;
pedwarn
(
"ANSI C forbids label declarations"
);
;
break
;}
break
;}
case
324
:
case
324
:
#line 1
692
"objc-parse.y"
#line 1
703
"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
))
{
{
...
@@ -3725,19 +3736,19 @@ case 324:
...
@@ -3725,19 +3736,19 @@ case 324:
;
;
break
;}
break
;}
case
325
:
case
325
:
#line 17
06
"objc-parse.y"
#line 17
17
"objc-parse.y"
{;
{;
break
;}
break
;}
case
327
:
case
327
:
#line 17
10
"objc-parse.y"
#line 17
21
"objc-parse.y"
{
compstmt_count
++
;
;
{
compstmt_count
++
;
;
break
;}
break
;}
case
328
:
case
328
:
#line 17
13
"objc-parse.y"
#line 17
24
"objc-parse.y"
{
yyval
.
ttype
=
convert
(
void_type_node
,
integer_zero_node
);
;
{
yyval
.
ttype
=
convert
(
void_type_node
,
integer_zero_node
);
;
break
;}
break
;}
case
329
:
case
329
:
#line 17
15
"objc-parse.y"
#line 17
26
"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
);
...
@@ -3747,7 +3758,7 @@ case 329:
...
@@ -3747,7 +3758,7 @@ case 329:
pop_momentary
();
;
pop_momentary
();
;
break
;}
break
;}
case
330
:
case
330
:
#line 17
23
"objc-parse.y"
#line 17
34
"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
);
...
@@ -3757,7 +3768,7 @@ case 330:
...
@@ -3757,7 +3768,7 @@ case 330:
pop_momentary
();
;
pop_momentary
();
;
break
;}
break
;}
case
331
:
case
331
:
#line 17
31
"objc-parse.y"
#line 17
42
"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
);
...
@@ -3767,7 +3778,7 @@ case 331:
...
@@ -3767,7 +3778,7 @@ case 331:
pop_momentary
();
;
pop_momentary
();
;
break
;}
break
;}
case
332
:
case
332
:
#line 17
42
"objc-parse.y"
#line 17
53
"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"
);
...
@@ -3785,11 +3796,11 @@ case 332:
...
@@ -3785,11 +3796,11 @@ case 332:
;
;
break
;}
break
;}
case
333
:
case
333
:
#line 17
59
"objc-parse.y"
#line 17
70
"objc-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
336
:
case
336
:
#line 17
73
"objc-parse.y"
#line 17
84
"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
);
...
@@ -3799,7 +3810,7 @@ case 336:
...
@@ -3799,7 +3810,7 @@ case 336:
position_after_white_space
();
;
position_after_white_space
();
;
break
;}
break
;}
case
337
:
case
337
:
#line 17
87
"objc-parse.y"
#line 17
98
"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
);
...
@@ -3809,43 +3820,43 @@ case 337:
...
@@ -3809,43 +3820,43 @@ case 337:
position_after_white_space
();
;
position_after_white_space
();
;
break
;}
break
;}
case
338
:
case
338
:
#line 1
795
"objc-parse.y"
#line 1
806
"objc-parse.y"
{
expand_loop_continue_here
();
;
{
expand_loop_continue_here
();
;
break
;}
break
;}
case
339
:
case
339
:
#line 1
799
"objc-parse.y"
#line 1
810
"objc-parse.y"
{
yyval
.
filename
=
input_filename
;
;
{
yyval
.
filename
=
input_filename
;
;
break
;}
break
;}
case
340
:
case
340
:
#line 18
03
"objc-parse.y"
#line 18
14
"objc-parse.y"
{
yyval
.
lineno
=
lineno
;
;
{
yyval
.
lineno
=
lineno
;
;
break
;}
break
;}
case
341
:
case
341
:
#line 18
08
"objc-parse.y"
#line 18
19
"objc-parse.y"
{
;
{
;
break
;}
break
;}
case
342
:
case
342
:
#line 18
13
"objc-parse.y"
#line 18
24
"objc-parse.y"
{
;
{
;
break
;}
break
;}
case
343
:
case
343
:
#line 18
18
"objc-parse.y"
#line 18
29
"objc-parse.y"
{
yyval
.
ends_in_label
=
yyvsp
[
0
].
ends_in_label
;
;
{
yyval
.
ends_in_label
=
yyvsp
[
0
].
ends_in_label
;
;
break
;}
break
;}
case
344
:
case
344
:
#line 18
23
"objc-parse.y"
#line 18
34
"objc-parse.y"
{
yyval
.
ends_in_label
=
0
;
;
{
yyval
.
ends_in_label
=
0
;
;
break
;}
break
;}
case
345
:
case
345
:
#line 18
25
"objc-parse.y"
#line 18
36
"objc-parse.y"
{
yyval
.
ends_in_label
=
1
;
;
{
yyval
.
ends_in_label
=
1
;
;
break
;}
break
;}
case
346
:
case
346
:
#line 18
31
"objc-parse.y"
#line 18
42
"objc-parse.y"
{
stmt_count
++
;
;
{
stmt_count
++
;
;
break
;}
break
;}
case
348
:
case
348
:
#line 18
34
"objc-parse.y"
#line 18
45
"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
...
@@ -3864,19 +3875,19 @@ case 348:
...
@@ -3864,19 +3875,19 @@ case 348:
clear_momentary
();
;
clear_momentary
();
;
break
;}
break
;}
case
349
:
case
349
:
#line 18
51
"objc-parse.y"
#line 18
62
"objc-parse.y"
{
c_expand_start_else
();
{
c_expand_start_else
();
yyvsp
[
-
1
].
itype
=
stmt_count
;
yyvsp
[
-
1
].
itype
=
stmt_count
;
position_after_white_space
();
;
position_after_white_space
();
;
break
;}
break
;}
case
350
:
case
350
:
#line 18
55
"objc-parse.y"
#line 18
66
"objc-parse.y"
{
c_expand_end_cond
();
{
c_expand_end_cond
();
if
(
extra_warnings
&&
stmt_count
==
yyvsp
[
-
3
].
itype
)
if
(
extra_warnings
&&
stmt_count
==
yyvsp
[
-
3
].
itype
)
warning
(
"empty body in an else-statement"
);
;
warning
(
"empty body in an else-statement"
);
;
break
;}
break
;}
case
351
:
case
351
:
#line 18
59
"objc-parse.y"
#line 18
70
"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
...
@@ -3887,11 +3898,11 @@ case 351:
...
@@ -3887,11 +3898,11 @@ case 351:
"empty body in an if-statement"
);
;
"empty body in an if-statement"
);
;
break
;}
break
;}
case
352
:
case
352
:
#line 18
71
"objc-parse.y"
#line 18
82
"objc-parse.y"
{
c_expand_end_cond
();
;
{
c_expand_end_cond
();
;
break
;}
break
;}
case
353
:
case
353
:
#line 18
73
"objc-parse.y"
#line 18
84
"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,
...
@@ -3903,7 +3914,7 @@ case 353:
...
@@ -3903,7 +3914,7 @@ case 353:
emit_nop
();
;
emit_nop
();
;
break
;}
break
;}
case
354
:
case
354
:
#line 18
83
"objc-parse.y"
#line 18
94
"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. */
...
@@ -3914,11 +3925,11 @@ case 354:
...
@@ -3914,11 +3925,11 @@ case 354:
position_after_white_space
();
;
position_after_white_space
();
;
break
;}
break
;}
case
355
:
case
355
:
#line 1
892
"objc-parse.y"
#line 1
903
"objc-parse.y"
{
expand_end_loop
();
;
{
expand_end_loop
();
;
break
;}
break
;}
case
356
:
case
356
:
#line 1
895
"objc-parse.y"
#line 1
906
"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
));
...
@@ -3926,12 +3937,12 @@ case 356:
...
@@ -3926,12 +3937,12 @@ case 356:
clear_momentary
();
;
clear_momentary
();
;
break
;}
break
;}
case
357
:
case
357
:
#line 19
02
"objc-parse.y"
#line 19
13
"objc-parse.y"
{
expand_end_loop
();
{
expand_end_loop
();
clear_momentary
();
;
clear_momentary
();
;
break
;}
break
;}
case
358
:
case
358
:
#line 19
06
"objc-parse.y"
#line 19
17
"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. */
...
@@ -3944,12 +3955,12 @@ case 358:
...
@@ -3944,12 +3955,12 @@ case 358:
;
;
break
;}
break
;}
case
359
:
case
359
:
#line 19
18
"objc-parse.y"
#line 19
29
"objc-parse.y"
{
yyvsp
[
0
].
lineno
=
lineno
;
{
yyvsp
[
0
].
lineno
=
lineno
;
yyval
.
filename
=
input_filename
;
;
yyval
.
filename
=
input_filename
;
;
break
;}
break
;}
case
360
:
case
360
:
#line 19
21
"objc-parse.y"
#line 19
32
"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. */
...
@@ -3967,7 +3978,7 @@ case 360:
...
@@ -3967,7 +3978,7 @@ case 360:
position_after_white_space
();
;
position_after_white_space
();
;
break
;}
break
;}
case
361
:
case
361
:
#line 19
37
"objc-parse.y"
#line 19
48
"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
();
...
@@ -3980,7 +3991,7 @@ case 361:
...
@@ -3980,7 +3991,7 @@ case 361:
expand_end_loop
();
;
expand_end_loop
();
;
break
;}
break
;}
case
362
:
case
362
:
#line 19
48
"objc-parse.y"
#line 19
59
"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
);
...
@@ -3990,7 +4001,7 @@ case 362:
...
@@ -3990,7 +4001,7 @@ case 362:
position_after_white_space
();
;
position_after_white_space
();
;
break
;}
break
;}
case
363
:
case
363
:
#line 19
56
"objc-parse.y"
#line 19
67
"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
();
...
@@ -3998,33 +4009,33 @@ case 363:
...
@@ -3998,33 +4009,33 @@ case 363:
pop_momentary
();
;
pop_momentary
();
;
break
;}
break
;}
case
364
:
case
364
:
#line 19
62
"objc-parse.y"
#line 19
73
"objc-parse.y"
{
stmt_count
++
;
{
stmt_count
++
;
emit_line_note
(
yyvsp
[
-
3
].
filename
,
yyvsp
[
-
2
].
lineno
);
emit_line_note
(
yyvsp
[
-
3
].
filename
,
yyvsp
[
-
2
].
lineno
);
if
(
!
expand_exit_something
())
if
(
!
expand_exit_something
())
error
(
"break statement not within loop or switch"
);
;
error
(
"break statement not within loop or switch"
);
;
break
;}
break
;}
case
365
:
case
365
:
#line 19
67
"objc-parse.y"
#line 19
78
"objc-parse.y"
{
stmt_count
++
;
{
stmt_count
++
;
emit_line_note
(
yyvsp
[
-
3
].
filename
,
yyvsp
[
-
2
].
lineno
);
emit_line_note
(
yyvsp
[
-
3
].
filename
,
yyvsp
[
-
2
].
lineno
);
if
(
!
expand_continue_loop
(
NULL_PTR
))
if
(
!
expand_continue_loop
(
NULL_PTR
))
error
(
"continue statement not within a loop"
);
;
error
(
"continue statement not within a loop"
);
;
break
;}
break
;}
case
366
:
case
366
:
#line 19
72
"objc-parse.y"
#line 19
83
"objc-parse.y"
{
stmt_count
++
;
{
stmt_count
++
;
emit_line_note
(
yyvsp
[
-
3
].
filename
,
yyvsp
[
-
2
].
lineno
);
emit_line_note
(
yyvsp
[
-
3
].
filename
,
yyvsp
[
-
2
].
lineno
);
c_expand_return
(
NULL_TREE
);
;
c_expand_return
(
NULL_TREE
);
;
break
;}
break
;}
case
367
:
case
367
:
#line 19
76
"objc-parse.y"
#line 19
87
"objc-parse.y"
{
stmt_count
++
;
{
stmt_count
++
;
emit_line_note
(
yyvsp
[
-
4
].
filename
,
yyvsp
[
-
3
].
lineno
);
emit_line_note
(
yyvsp
[
-
4
].
filename
,
yyvsp
[
-
3
].
lineno
);
c_expand_return
(
yyvsp
[
-
1
].
ttype
);
;
c_expand_return
(
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
368
:
case
368
:
#line 19
80
"objc-parse.y"
#line 19
91
"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
);
...
@@ -4036,7 +4047,7 @@ case 368:
...
@@ -4036,7 +4047,7 @@ case 368:
error
(
"argument of `asm' is not a constant string"
);
;
error
(
"argument of `asm' is not a constant string"
);
;
break
;}
break
;}
case
369
:
case
369
:
#line
1991
"objc-parse.y"
#line
2002
"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
,
...
@@ -4044,7 +4055,7 @@ case 369:
...
@@ -4044,7 +4055,7 @@ case 369:
input_filename
,
lineno
);
;
input_filename
,
lineno
);
;
break
;}
break
;}
case
370
:
case
370
:
#line
1998
"objc-parse.y"
#line
2009
"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
,
...
@@ -4052,7 +4063,7 @@ case 370:
...
@@ -4052,7 +4063,7 @@ case 370:
input_filename
,
lineno
);
;
input_filename
,
lineno
);
;
break
;}
break
;}
case
371
:
case
371
:
#line 20
06
"objc-parse.y"
#line 20
17
"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
,
...
@@ -4060,7 +4071,7 @@ case 371:
...
@@ -4060,7 +4071,7 @@ case 371:
input_filename
,
lineno
);
;
input_filename
,
lineno
);
;
break
;}
break
;}
case
372
:
case
372
:
#line 20
12
"objc-parse.y"
#line 20
23
"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
);
...
@@ -4073,7 +4084,7 @@ case 372:
...
@@ -4073,7 +4084,7 @@ case 372:
;
;
break
;}
break
;}
case
373
:
case
373
:
#line 20
23
"objc-parse.y"
#line 20
34
"objc-parse.y"
{
if
(
pedantic
)
{
if
(
pedantic
)
pedwarn
(
"ANSI C forbids `goto *expr;'"
);
pedwarn
(
"ANSI C forbids `goto *expr;'"
);
stmt_count
++
;
stmt_count
++
;
...
@@ -4081,7 +4092,7 @@ case 373:
...
@@ -4081,7 +4092,7 @@ case 373:
expand_computed_goto
(
convert
(
ptr_type_node
,
yyvsp
[
-
1
].
ttype
));
;
expand_computed_goto
(
convert
(
ptr_type_node
,
yyvsp
[
-
1
].
ttype
));
;
break
;}
break
;}
case
376
:
case
376
:
#line 20
38
"objc-parse.y"
#line 20
49
"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 */
...
@@ -4104,14 +4115,14 @@ case 376:
...
@@ -4104,14 +4115,14 @@ case 376:
;
;
break
;}
break
;}
case
377
:
case
377
:
#line 20
59
"objc-parse.y"
#line 20
70
"objc-parse.y"
{
{
if
(
yyvsp
[
-
1
].
itype
)
if
(
yyvsp
[
-
1
].
itype
)
iterator_for_loop_end
(
yyvsp
[
-
3
].
ttype
);
iterator_for_loop_end
(
yyvsp
[
-
3
].
ttype
);
;
;
break
;}
break
;}
case
378
:
case
378
:
#line 2
094
"objc-parse.y"
#line 2
105
"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
);
...
@@ -4144,7 +4155,7 @@ case 378:
...
@@ -4144,7 +4155,7 @@ case 378:
position_after_white_space
();
;
position_after_white_space
();
;
break
;}
break
;}
case
379
:
case
379
:
#line 21
25
"objc-parse.y"
#line 21
36
"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
...
@@ -4177,7 +4188,7 @@ case 379:
...
@@ -4177,7 +4188,7 @@ case 379:
position_after_white_space
();
;
position_after_white_space
();
;
break
;}
break
;}
case
380
:
case
380
:
#line 21
56
"objc-parse.y"
#line 21
67
"objc-parse.y"
{
{
tree
duplicate
;
tree
duplicate
;
register
tree
label
register
tree
label
...
@@ -4194,7 +4205,7 @@ case 380:
...
@@ -4194,7 +4205,7 @@ case 380:
position_after_white_space
();
;
position_after_white_space
();
;
break
;}
break
;}
case
381
:
case
381
:
#line 21
71
"objc-parse.y"
#line 21
82
"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
();
...
@@ -4206,52 +4217,52 @@ case 381:
...
@@ -4206,52 +4217,52 @@ case 381:
position_after_white_space
();
;
position_after_white_space
();
;
break
;}
break
;}
case
382
:
case
382
:
#line 21
86
"objc-parse.y"
#line 21
97
"objc-parse.y"
{
emit_line_note
(
input_filename
,
lineno
);
{
emit_line_note
(
input_filename
,
lineno
);
yyval
.
ttype
=
NULL_TREE
;
;
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
383
:
case
383
:
#line 2
189
"objc-parse.y"
#line 2
200
"objc-parse.y"
{
emit_line_note
(
input_filename
,
lineno
);
;
{
emit_line_note
(
input_filename
,
lineno
);
;
break
;}
break
;}
case
384
:
case
384
:
#line 2
194
"objc-parse.y"
#line 2
205
"objc-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
386
:
case
386
:
#line 22
01
"objc-parse.y"
#line 22
12
"objc-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
389
:
case
389
:
#line 22
08
"objc-parse.y"
#line 22
19
"objc-parse.y"
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
390
:
case
390
:
#line 22
13
"objc-parse.y"
#line 22
24
"objc-parse.y"
{
yyval
.
ttype
=
build_tree_list
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
build_tree_list
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
391
:
case
391
:
#line 22
18
"objc-parse.y"
#line 22
29
"objc-parse.y"
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
combine_strings
(
yyvsp
[
0
].
ttype
),
NULL_TREE
);
;
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
combine_strings
(
yyvsp
[
0
].
ttype
),
NULL_TREE
);
;
break
;}
break
;}
case
392
:
case
392
:
#line 22
20
"objc-parse.y"
#line 22
31
"objc-parse.y"
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
combine_strings
(
yyvsp
[
0
].
ttype
),
yyvsp
[
-
2
].
ttype
);
;
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
combine_strings
(
yyvsp
[
0
].
ttype
),
yyvsp
[
-
2
].
ttype
);
;
break
;}
break
;}
case
393
:
case
393
:
#line 22
26
"objc-parse.y"
#line 22
37
"objc-parse.y"
{
pushlevel
(
0
);
{
pushlevel
(
0
);
clear_parm_order
();
clear_parm_order
();
declare_parm_level
(
0
);
;
declare_parm_level
(
0
);
;
break
;}
break
;}
case
394
:
case
394
:
#line 22
30
"objc-parse.y"
#line 22
41
"objc-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
parmlist_tags_warning
();
parmlist_tags_warning
();
poplevel
(
0
,
0
,
0
);
;
poplevel
(
0
,
0
,
0
);
;
break
;}
break
;}
case
396
:
case
396
:
#line 22
38
"objc-parse.y"
#line 22
49
"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"
);
...
@@ -4261,19 +4272,19 @@ case 396:
...
@@ -4261,19 +4272,19 @@ case 396:
clear_parm_order
();
;
clear_parm_order
();
;
break
;}
break
;}
case
397
:
case
397
:
#line 22
46
"objc-parse.y"
#line 22
57
"objc-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
398
:
case
398
:
#line 22
48
"objc-parse.y"
#line 22
59
"objc-parse.y"
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
NULL_TREE
,
NULL_TREE
);
;
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
NULL_TREE
,
NULL_TREE
);
;
break
;}
break
;}
case
399
:
case
399
:
#line 22
54
"objc-parse.y"
#line 22
65
"objc-parse.y"
{
yyval
.
ttype
=
get_parm_info
(
0
);
;
{
yyval
.
ttype
=
get_parm_info
(
0
);
;
break
;}
break
;}
case
400
:
case
400
:
#line 22
56
"objc-parse.y"
#line 22
67
"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.
...
@@ -4285,23 +4296,23 @@ case 400:
...
@@ -4285,23 +4296,23 @@ case 400:
;
;
break
;}
break
;}
case
401
:
case
401
:
#line 22
66
"objc-parse.y"
#line 22
77
"objc-parse.y"
{
yyval
.
ttype
=
get_parm_info
(
1
);
;
{
yyval
.
ttype
=
get_parm_info
(
1
);
;
break
;}
break
;}
case
402
:
case
402
:
#line 22
68
"objc-parse.y"
#line 22
79
"objc-parse.y"
{
yyval
.
ttype
=
get_parm_info
(
0
);
;
{
yyval
.
ttype
=
get_parm_info
(
0
);
;
break
;}
break
;}
case
403
:
case
403
:
#line 22
73
"objc-parse.y"
#line 22
84
"objc-parse.y"
{
push_parm_decl
(
yyvsp
[
0
].
ttype
);
;
{
push_parm_decl
(
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
404
:
case
404
:
#line 22
75
"objc-parse.y"
#line 22
86
"objc-parse.y"
{
push_parm_decl
(
yyvsp
[
0
].
ttype
);
;
{
push_parm_decl
(
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
405
:
case
405
:
#line 22
82
"objc-parse.y"
#line 22
93
"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
,
...
@@ -4312,7 +4323,7 @@ case 405:
...
@@ -4312,7 +4323,7 @@ case 405:
resume_momentary
(
yyvsp
[
-
2
].
itype
);
;
resume_momentary
(
yyvsp
[
-
2
].
itype
);
;
break
;}
break
;}
case
406
:
case
406
:
#line 2
291
"objc-parse.y"
#line 2
302
"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
,
...
@@ -4323,7 +4334,7 @@ case 406:
...
@@ -4323,7 +4334,7 @@ case 406:
resume_momentary
(
yyvsp
[
-
2
].
itype
);
;
resume_momentary
(
yyvsp
[
-
2
].
itype
);
;
break
;}
break
;}
case
407
:
case
407
:
#line 23
00
"objc-parse.y"
#line 23
11
"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
,
...
@@ -4334,7 +4345,7 @@ case 407:
...
@@ -4334,7 +4345,7 @@ case 407:
resume_momentary
(
yyvsp
[
-
2
].
itype
);
;
resume_momentary
(
yyvsp
[
-
2
].
itype
);
;
break
;}
break
;}
case
408
:
case
408
:
#line 23
09
"objc-parse.y"
#line 23
20
"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
,
...
@@ -4345,7 +4356,7 @@ case 408:
...
@@ -4345,7 +4356,7 @@ case 408:
resume_momentary
(
yyvsp
[
-
2
].
itype
);
;
resume_momentary
(
yyvsp
[
-
2
].
itype
);
;
break
;}
break
;}
case
409
:
case
409
:
#line 23
19
"objc-parse.y"
#line 23
30
"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
,
...
@@ -4356,19 +4367,19 @@ case 409:
...
@@ -4356,19 +4367,19 @@ case 409:
resume_momentary
(
yyvsp
[
-
2
].
itype
);
;
resume_momentary
(
yyvsp
[
-
2
].
itype
);
;
break
;}
break
;}
case
410
:
case
410
:
#line 23
33
"objc-parse.y"
#line 23
44
"objc-parse.y"
{
pushlevel
(
0
);
{
pushlevel
(
0
);
clear_parm_order
();
clear_parm_order
();
declare_parm_level
(
1
);
;
declare_parm_level
(
1
);
;
break
;}
break
;}
case
411
:
case
411
:
#line 23
37
"objc-parse.y"
#line 23
48
"objc-parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
parmlist_tags_warning
();
parmlist_tags_warning
();
poplevel
(
0
,
0
,
0
);
;
poplevel
(
0
,
0
,
0
);
;
break
;}
break
;}
case
413
:
case
413
:
#line 23
45
"objc-parse.y"
#line 23
56
"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
)
...
@@ -4376,28 +4387,28 @@ case 413:
...
@@ -4376,28 +4387,28 @@ case 413:
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
NULL_TREE
,
yyvsp
[
-
1
].
ttype
);
;
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
NULL_TREE
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
414
:
case
414
:
#line 23
55
"objc-parse.y"
#line 23
66
"objc-parse.y"
{
yyval
.
ttype
=
build_tree_list
(
NULL_TREE
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
build_tree_list
(
NULL_TREE
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
415
:
case
415
:
#line 23
57
"objc-parse.y"
#line 23
68
"objc-parse.y"
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
2
].
ttype
,
build_tree_list
(
NULL_TREE
,
yyvsp
[
0
].
ttype
));
;
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
2
].
ttype
,
build_tree_list
(
NULL_TREE
,
yyvsp
[
0
].
ttype
));
;
break
;}
break
;}
case
416
:
case
416
:
#line 23
63
"objc-parse.y"
#line 23
74
"objc-parse.y"
{
yyval
.
ttype
=
build_tree_list
(
NULL_TREE
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
build_tree_list
(
NULL_TREE
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
417
:
case
417
:
#line 23
65
"objc-parse.y"
#line 23
76
"objc-parse.y"
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
2
].
ttype
,
build_tree_list
(
NULL_TREE
,
yyvsp
[
0
].
ttype
));
;
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
2
].
ttype
,
build_tree_list
(
NULL_TREE
,
yyvsp
[
0
].
ttype
));
;
break
;}
break
;}
case
418
:
case
418
:
#line 23
70
"objc-parse.y"
#line 23
81
"objc-parse.y"
{
yyval
.
itype
=
pedantic
;
{
yyval
.
itype
=
pedantic
;
pedantic
=
0
;
;
pedantic
=
0
;
;
break
;}
break
;}
case
424
:
case
424
:
#line 23
83
"objc-parse.y"
#line 23
94
"objc-parse.y"
{
{
if
(
objc_implementation_context
)
if
(
objc_implementation_context
)
{
{
...
@@ -4410,27 +4421,27 @@ case 424:
...
@@ -4410,27 +4421,27 @@ case 424:
;
;
break
;}
break
;}
case
425
:
case
425
:
#line 2
398
"objc-parse.y"
#line 2
409
"objc-parse.y"
{
yyval
.
ttype
=
build_tree_list
(
NULL_TREE
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
build_tree_list
(
NULL_TREE
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
426
:
case
426
:
#line 24
00
"objc-parse.y"
#line 24
11
"objc-parse.y"
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
2
].
ttype
,
build_tree_list
(
NULL_TREE
,
yyvsp
[
0
].
ttype
));
;
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
2
].
ttype
,
build_tree_list
(
NULL_TREE
,
yyvsp
[
0
].
ttype
));
;
break
;}
break
;}
case
427
:
case
427
:
#line 24
05
"objc-parse.y"
#line 24
16
"objc-parse.y"
{
{
objc_declare_class
(
yyvsp
[
-
1
].
ttype
);
objc_declare_class
(
yyvsp
[
-
1
].
ttype
);
;
;
break
;}
break
;}
case
428
:
case
428
:
#line 24
11
"objc-parse.y"
#line 24
22
"objc-parse.y"
{
{
objc_declare_alias
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
-
1
].
ttype
);
objc_declare_alias
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
;
break
;}
break
;}
case
429
:
case
429
:
#line 24
17
"objc-parse.y"
#line 24
28
"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
);
...
@@ -4438,20 +4449,20 @@ case 429:
...
@@ -4438,20 +4449,20 @@ case 429:
;
;
break
;}
break
;}
case
430
:
case
430
:
#line 24
23
"objc-parse.y"
#line 24
34
"objc-parse.y"
{
{
continue_class
(
objc_interface_context
);
continue_class
(
objc_interface_context
);
;
;
break
;}
break
;}
case
431
:
case
431
:
#line 24
28
"objc-parse.y"
#line 24
39
"objc-parse.y"
{
{
finish_class
(
objc_interface_context
);
finish_class
(
objc_interface_context
);
objc_interface_context
=
NULL_TREE
;
objc_interface_context
=
NULL_TREE
;
;
;
break
;}
break
;}
case
432
:
case
432
:
#line 24
34
"objc-parse.y"
#line 24
45
"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
);
...
@@ -4459,14 +4470,14 @@ case 432:
...
@@ -4459,14 +4470,14 @@ case 432:
;
;
break
;}
break
;}
case
433
:
case
433
:
#line 24
41
"objc-parse.y"
#line 24
52
"objc-parse.y"
{
{
finish_class
(
objc_interface_context
);
finish_class
(
objc_interface_context
);
objc_interface_context
=
NULL_TREE
;
objc_interface_context
=
NULL_TREE
;
;
;
break
;}
break
;}
case
434
:
case
434
:
#line 24
47
"objc-parse.y"
#line 24
58
"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
);
...
@@ -4474,20 +4485,20 @@ case 434:
...
@@ -4474,20 +4485,20 @@ case 434:
;
;
break
;}
break
;}
case
435
:
case
435
:
#line 24
53
"objc-parse.y"
#line 24
64
"objc-parse.y"
{
{
continue_class
(
objc_interface_context
);
continue_class
(
objc_interface_context
);
;
;
break
;}
break
;}
case
436
:
case
436
:
#line 24
58
"objc-parse.y"
#line 24
69
"objc-parse.y"
{
{
finish_class
(
objc_interface_context
);
finish_class
(
objc_interface_context
);
objc_interface_context
=
NULL_TREE
;
objc_interface_context
=
NULL_TREE
;
;
;
break
;}
break
;}
case
437
:
case
437
:
#line 24
64
"objc-parse.y"
#line 24
75
"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
);
...
@@ -4495,14 +4506,14 @@ case 437:
...
@@ -4495,14 +4506,14 @@ case 437:
;
;
break
;}
break
;}
case
438
:
case
438
:
#line 24
71
"objc-parse.y"
#line 24
82
"objc-parse.y"
{
{
finish_class
(
objc_interface_context
);
finish_class
(
objc_interface_context
);
objc_interface_context
=
NULL_TREE
;
objc_interface_context
=
NULL_TREE
;
;
;
break
;}
break
;}
case
439
:
case
439
:
#line 24
77
"objc-parse.y"
#line 24
88
"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
);
...
@@ -4510,14 +4521,14 @@ case 439:
...
@@ -4510,14 +4521,14 @@ case 439:
;
;
break
;}
break
;}
case
440
:
case
440
:
#line 24
83
"objc-parse.y"
#line 24
94
"objc-parse.y"
{
{
objc_ivar_chain
objc_ivar_chain
=
continue_class
(
objc_implementation_context
);
=
continue_class
(
objc_implementation_context
);
;
;
break
;}
break
;}
case
441
:
case
441
:
#line 2
489
"objc-parse.y"
#line 2
500
"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
);
...
@@ -4526,7 +4537,7 @@ case 441:
...
@@ -4526,7 +4537,7 @@ case 441:
;
;
break
;}
break
;}
case
442
:
case
442
:
#line 2
497
"objc-parse.y"
#line 2
508
"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
);
...
@@ -4534,14 +4545,14 @@ case 442:
...
@@ -4534,14 +4545,14 @@ case 442:
;
;
break
;}
break
;}
case
443
:
case
443
:
#line 25
03
"objc-parse.y"
#line 25
14
"objc-parse.y"
{
{
objc_ivar_chain
objc_ivar_chain
=
continue_class
(
objc_implementation_context
);
=
continue_class
(
objc_implementation_context
);
;
;
break
;}
break
;}
case
444
:
case
444
:
#line 25
09
"objc-parse.y"
#line 25
20
"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
);
...
@@ -4550,7 +4561,7 @@ case 444:
...
@@ -4550,7 +4561,7 @@ case 444:
;
;
break
;}
break
;}
case
445
:
case
445
:
#line 25
17
"objc-parse.y"
#line 25
28
"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
);
...
@@ -4558,14 +4569,14 @@ case 445:
...
@@ -4558,14 +4569,14 @@ case 445:
;
;
break
;}
break
;}
case
446
:
case
446
:
#line 25
24
"objc-parse.y"
#line 25
35
"objc-parse.y"
{
{
finish_class
(
objc_interface_context
);
finish_class
(
objc_interface_context
);
objc_interface_context
=
NULL_TREE
;
objc_interface_context
=
NULL_TREE
;
;
;
break
;}
break
;}
case
447
:
case
447
:
#line 25
30
"objc-parse.y"
#line 25
41
"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
);
...
@@ -4574,7 +4585,7 @@ case 447:
...
@@ -4574,7 +4585,7 @@ case 447:
;
;
break
;}
break
;}
case
448
:
case
448
:
#line 25
40
"objc-parse.y"
#line 25
51
"objc-parse.y"
{
{
remember_protocol_qualifiers
();
remember_protocol_qualifiers
();
objc_interface_context
objc_interface_context
...
@@ -4582,7 +4593,7 @@ case 448:
...
@@ -4582,7 +4593,7 @@ case 448:
;
;
break
;}
break
;}
case
449
:
case
449
:
#line 25
46
"objc-parse.y"
#line 25
57
"objc-parse.y"
{
{
forget_protocol_qualifiers
();
forget_protocol_qualifiers
();
finish_protocol
(
objc_interface_context
);
finish_protocol
(
objc_interface_context
);
...
@@ -4590,13 +4601,13 @@ case 449:
...
@@ -4590,13 +4601,13 @@ case 449:
;
;
break
;}
break
;}
case
450
:
case
450
:
#line 25
55
"objc-parse.y"
#line 25
66
"objc-parse.y"
{
{
yyval
.
ttype
=
NULL_TREE
;
yyval
.
ttype
=
NULL_TREE
;
;
;
break
;}
break
;}
case
452
:
case
452
:
#line 25
63
"objc-parse.y"
#line 25
74
"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
;
...
@@ -4605,32 +4616,32 @@ case 452:
...
@@ -4605,32 +4616,32 @@ case 452:
;
;
break
;}
break
;}
case
455
:
case
455
:
#line 25
77
"objc-parse.y"
#line 25
88
"objc-parse.y"
{
objc_public_flag
=
2
;
;
{
objc_public_flag
=
2
;
;
break
;}
break
;}
case
456
:
case
456
:
#line 25
78
"objc-parse.y"
#line 25
89
"objc-parse.y"
{
objc_public_flag
=
0
;
;
{
objc_public_flag
=
0
;
;
break
;}
break
;}
case
457
:
case
457
:
#line 25
79
"objc-parse.y"
#line 25
90
"objc-parse.y"
{
objc_public_flag
=
1
;
;
{
objc_public_flag
=
1
;
;
break
;}
break
;}
case
458
:
case
458
:
#line 25
84
"objc-parse.y"
#line 25
95
"objc-parse.y"
{
{
yyval
.
ttype
=
NULL_TREE
;
yyval
.
ttype
=
NULL_TREE
;
;
;
break
;}
break
;}
case
460
:
case
460
:
#line 2
589
"objc-parse.y"
#line 2
600
"objc-parse.y"
{
{
if
(
pedantic
)
if
(
pedantic
)
pedwarn
(
"extra semicolon in struct or union specified"
);
pedwarn
(
"extra semicolon in struct or union specified"
);
;
;
break
;}
break
;}
case
461
:
case
461
:
#line 26
07
"objc-parse.y"
#line 26
18
"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
);
...
@@ -4638,7 +4649,7 @@ case 461:
...
@@ -4638,7 +4649,7 @@ case 461:
resume_momentary
(
yyvsp
[
-
1
].
itype
);
;
resume_momentary
(
yyvsp
[
-
1
].
itype
);
;
break
;}
break
;}
case
462
:
case
462
:
#line 26
13
"objc-parse.y"
#line 26
24
"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
);
...
@@ -4646,15 +4657,15 @@ case 462:
...
@@ -4646,15 +4657,15 @@ case 462:
resume_momentary
(
yyvsp
[
-
1
].
itype
);
;
resume_momentary
(
yyvsp
[
-
1
].
itype
);
;
break
;}
break
;}
case
463
:
case
463
:
#line 26
19
"objc-parse.y"
#line 26
30
"objc-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
464
:
case
464
:
#line 26
24
"objc-parse.y"
#line 26
35
"objc-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
467
:
case
467
:
#line 26
31
"objc-parse.y"
#line 26
42
"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
,
...
@@ -4663,7 +4674,7 @@ case 467:
...
@@ -4663,7 +4674,7 @@ case 467:
;
;
break
;}
break
;}
case
468
:
case
468
:
#line 26
38
"objc-parse.y"
#line 26
49
"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
,
...
@@ -4671,7 +4682,7 @@ case 468:
...
@@ -4671,7 +4682,7 @@ case 468:
;
;
break
;}
break
;}
case
469
:
case
469
:
#line 26
44
"objc-parse.y"
#line 26
55
"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
,
...
@@ -4680,7 +4691,7 @@ case 469:
...
@@ -4680,7 +4691,7 @@ case 469:
;
;
break
;}
break
;}
case
470
:
case
470
:
#line 26
54
"objc-parse.y"
#line 26
65
"objc-parse.y"
{
{
remember_protocol_qualifiers
();
remember_protocol_qualifiers
();
if
(
objc_implementation_context
)
if
(
objc_implementation_context
)
...
@@ -4690,7 +4701,7 @@ case 470:
...
@@ -4690,7 +4701,7 @@ case 470:
;
;
break
;}
break
;}
case
471
:
case
471
:
#line 26
62
"objc-parse.y"
#line 26
73
"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
);
...
@@ -4699,20 +4710,20 @@ case 471:
...
@@ -4699,20 +4710,20 @@ case 471:
;
;
break
;}
break
;}
case
472
:
case
472
:
#line 26
69
"objc-parse.y"
#line 26
80
"objc-parse.y"
{
{
continue_method_def
();
continue_method_def
();
;
;
break
;}
break
;}
case
473
:
case
473
:
#line 26
73
"objc-parse.y"
#line 26
84
"objc-parse.y"
{
{
finish_method_def
();
finish_method_def
();
objc_method_context
=
NULL_TREE
;
objc_method_context
=
NULL_TREE
;
;
;
break
;}
break
;}
case
474
:
case
474
:
#line 26
79
"objc-parse.y"
#line 26
90
"objc-parse.y"
{
{
remember_protocol_qualifiers
();
remember_protocol_qualifiers
();
if
(
objc_implementation_context
)
if
(
objc_implementation_context
)
...
@@ -4722,7 +4733,7 @@ case 474:
...
@@ -4722,7 +4733,7 @@ case 474:
;
;
break
;}
break
;}
case
475
:
case
475
:
#line 26
87
"objc-parse.y"
#line 26
98
"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
);
...
@@ -4731,28 +4742,28 @@ case 475:
...
@@ -4731,28 +4742,28 @@ case 475:
;
;
break
;}
break
;}
case
476
:
case
476
:
#line 2
694
"objc-parse.y"
#line 2
705
"objc-parse.y"
{
{
continue_method_def
();
continue_method_def
();
;
;
break
;}
break
;}
case
477
:
case
477
:
#line 2
698
"objc-parse.y"
#line 2
709
"objc-parse.y"
{
{
finish_method_def
();
finish_method_def
();
objc_method_context
=
NULL_TREE
;
objc_method_context
=
NULL_TREE
;
;
;
break
;}
break
;}
case
479
:
case
479
:
#line 27
10
"objc-parse.y"
#line 27
21
"objc-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
484
:
case
484
:
#line 27
17
"objc-parse.y"
#line 27
28
"objc-parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
488
:
case
488
:
#line 27
27
"objc-parse.y"
#line 27
38
"objc-parse.y"
{
{
/* Remember protocol qualifiers in prototypes. */
/* Remember protocol qualifiers in prototypes. */
remember_protocol_qualifiers
();
remember_protocol_qualifiers
();
...
@@ -4760,7 +4771,7 @@ case 488:
...
@@ -4760,7 +4771,7 @@ case 488:
;
;
break
;}
break
;}
case
489
:
case
489
:
#line 27
33
"objc-parse.y"
#line 27
44
"objc-parse.y"
{
{
/* Forget protocol qualifiers here. */
/* Forget protocol qualifiers here. */
forget_protocol_qualifiers
();
forget_protocol_qualifiers
();
...
@@ -4768,7 +4779,7 @@ case 489:
...
@@ -4768,7 +4779,7 @@ case 489:
;
;
break
;}
break
;}
case
491
:
case
491
:
#line 27
41
"objc-parse.y"
#line 27
52
"objc-parse.y"
{
{
/* Remember protocol qualifiers in prototypes. */
/* Remember protocol qualifiers in prototypes. */
remember_protocol_qualifiers
();
remember_protocol_qualifiers
();
...
@@ -4776,7 +4787,7 @@ case 491:
...
@@ -4776,7 +4787,7 @@ case 491:
;
;
break
;}
break
;}
case
492
:
case
492
:
#line 27
47
"objc-parse.y"
#line 27
58
"objc-parse.y"
{
{
/* Forget protocol qualifiers here. */
/* Forget protocol qualifiers here. */
forget_protocol_qualifiers
();
forget_protocol_qualifiers
();
...
@@ -4784,94 +4795,94 @@ case 492:
...
@@ -4784,94 +4795,94 @@ case 492:
;
;
break
;}
break
;}
case
494
:
case
494
:
#line 27
57
"objc-parse.y"
#line 27
68
"objc-parse.y"
{
{
yyval
.
ttype
=
build_method_decl
(
objc_inherit_code
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
,
NULL_TREE
);
yyval
.
ttype
=
build_method_decl
(
objc_inherit_code
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
;
break
;}
break
;}
case
495
:
case
495
:
#line 27
62
"objc-parse.y"
#line 27
73
"objc-parse.y"
{
{
yyval
.
ttype
=
build_method_decl
(
objc_inherit_code
,
NULL_TREE
,
yyvsp
[
0
].
ttype
,
NULL_TREE
);
yyval
.
ttype
=
build_method_decl
(
objc_inherit_code
,
NULL_TREE
,
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
;
break
;}
break
;}
case
496
:
case
496
:
#line 27
67
"objc-parse.y"
#line 27
78
"objc-parse.y"
{
{
yyval
.
ttype
=
build_method_decl
(
objc_inherit_code
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
yyval
.
ttype
=
build_method_decl
(
objc_inherit_code
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
;
break
;}
break
;}
case
497
:
case
497
:
#line 27
72
"objc-parse.y"
#line 27
83
"objc-parse.y"
{
{
yyval
.
ttype
=
build_method_decl
(
objc_inherit_code
,
NULL_TREE
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
yyval
.
ttype
=
build_method_decl
(
objc_inherit_code
,
NULL_TREE
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
;
break
;}
break
;}
case
506
:
case
506
:
#line 28
02
"objc-parse.y"
#line 28
13
"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
507
:
case
507
:
#line 28
07
"objc-parse.y"
#line 28
18
"objc-parse.y"
{
shadow_tag
(
yyvsp
[
-
1
].
ttype
);
;
{
shadow_tag
(
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
508
:
case
508
:
#line 28
09
"objc-parse.y"
#line 28
20
"objc-parse.y"
{
pedwarn
(
"empty declaration"
);
;
{
pedwarn
(
"empty declaration"
);
;
break
;}
break
;}
case
509
:
case
509
:
#line 28
14
"objc-parse.y"
#line 28
25
"objc-parse.y"
{
push_parm_decl
(
yyvsp
[
0
].
ttype
);
;
{
push_parm_decl
(
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
510
:
case
510
:
#line 28
16
"objc-parse.y"
#line 28
27
"objc-parse.y"
{
push_parm_decl
(
yyvsp
[
0
].
ttype
);
;
{
push_parm_decl
(
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
511
:
case
511
:
#line 28
24
"objc-parse.y"
#line 28
35
"objc-parse.y"
{
yyval
.
ttype
=
build_tree_list
(
build_tree_list
(
current_declspecs
,
{
yyval
.
ttype
=
build_tree_list
(
build_tree_list
(
current_declspecs
,
yyvsp
[
-
1
].
ttype
),
yyvsp
[
-
1
].
ttype
),
build_tree_list
(
prefix_attributes
,
build_tree_list
(
prefix_attributes
,
yyvsp
[
0
].
ttype
));
;
yyvsp
[
0
].
ttype
));
;
break
;}
break
;}
case
512
:
case
512
:
#line 28
29
"objc-parse.y"
#line 28
40
"objc-parse.y"
{
yyval
.
ttype
=
build_tree_list
(
build_tree_list
(
current_declspecs
,
{
yyval
.
ttype
=
build_tree_list
(
build_tree_list
(
current_declspecs
,
yyvsp
[
-
1
].
ttype
),
yyvsp
[
-
1
].
ttype
),
build_tree_list
(
prefix_attributes
,
build_tree_list
(
prefix_attributes
,
yyvsp
[
0
].
ttype
));
;
yyvsp
[
0
].
ttype
));
;
break
;}
break
;}
case
513
:
case
513
:
#line 28
34
"objc-parse.y"
#line 28
45
"objc-parse.y"
{
yyval
.
ttype
=
build_tree_list
(
build_tree_list
(
current_declspecs
,
{
yyval
.
ttype
=
build_tree_list
(
build_tree_list
(
current_declspecs
,
yyvsp
[
-
1
].
ttype
),
yyvsp
[
-
1
].
ttype
),
build_tree_list
(
prefix_attributes
,
build_tree_list
(
prefix_attributes
,
yyvsp
[
0
].
ttype
));
;
yyvsp
[
0
].
ttype
));
;
break
;}
break
;}
case
514
:
case
514
:
#line 28
42
"objc-parse.y"
#line 28
53
"objc-parse.y"
{
{
yyval
.
ttype
=
NULL_TREE
;
yyval
.
ttype
=
NULL_TREE
;
;
;
break
;}
break
;}
case
515
:
case
515
:
#line 28
46
"objc-parse.y"
#line 28
57
"objc-parse.y"
{
{
/* oh what a kludge! */
/* oh what a kludge! */
yyval
.
ttype
=
(
tree
)
1
;
yyval
.
ttype
=
(
tree
)
1
;
;
;
break
;}
break
;}
case
516
:
case
516
:
#line 28
51
"objc-parse.y"
#line 28
62
"objc-parse.y"
{
{
pushlevel
(
0
);
pushlevel
(
0
);
;
;
break
;}
break
;}
case
517
:
case
517
:
#line 28
55
"objc-parse.y"
#line 28
66
"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
;
...
@@ -4879,119 +4890,119 @@ case 517:
...
@@ -4879,119 +4890,119 @@ case 517:
;
;
break
;}
break
;}
case
520
:
case
520
:
#line 28
70
"objc-parse.y"
#line 28
81
"objc-parse.y"
{
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
yyval
.
ttype
=
chainon
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
;
break
;}
break
;}
case
525
:
case
525
:
#line 28
83
"objc-parse.y"
#line 28
94
"objc-parse.y"
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
break
;}
break
;}
case
526
:
case
526
:
#line 28
84
"objc-parse.y"
#line 28
95
"objc-parse.y"
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
break
;}
break
;}
case
527
:
case
527
:
#line 28
85
"objc-parse.y"
#line 28
96
"objc-parse.y"
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
break
;}
break
;}
case
528
:
case
528
:
#line 28
86
"objc-parse.y"
#line 28
97
"objc-parse.y"
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
break
;}
break
;}
case
529
:
case
529
:
#line 28
87
"objc-parse.y"
#line 28
98
"objc-parse.y"
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
break
;}
break
;}
case
530
:
case
530
:
#line 28
88
"objc-parse.y"
#line 28
99
"objc-parse.y"
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
break
;}
break
;}
case
531
:
case
531
:
#line 2
889
"objc-parse.y"
#line 2
900
"objc-parse.y"
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
break
;}
break
;}
case
532
:
case
532
:
#line 2
890
"objc-parse.y"
#line 2
901
"objc-parse.y"
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
break
;}
break
;}
case
533
:
case
533
:
#line 2
891
"objc-parse.y"
#line 2
902
"objc-parse.y"
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
break
;}
break
;}
case
534
:
case
534
:
#line 2
892
"objc-parse.y"
#line 2
903
"objc-parse.y"
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
break
;}
break
;}
case
535
:
case
535
:
#line 2
893
"objc-parse.y"
#line 2
904
"objc-parse.y"
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
break
;}
break
;}
case
536
:
case
536
:
#line 2
894
"objc-parse.y"
#line 2
905
"objc-parse.y"
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
break
;}
break
;}
case
537
:
case
537
:
#line 2
895
"objc-parse.y"
#line 2
906
"objc-parse.y"
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
break
;}
break
;}
case
538
:
case
538
:
#line 2
896
"objc-parse.y"
#line 2
907
"objc-parse.y"
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
break
;}
break
;}
case
539
:
case
539
:
#line 2
897
"objc-parse.y"
#line 2
908
"objc-parse.y"
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
break
;}
break
;}
case
540
:
case
540
:
#line 2
898
"objc-parse.y"
#line 2
909
"objc-parse.y"
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
break
;}
break
;}
case
541
:
case
541
:
#line 2
899
"objc-parse.y"
#line 2
910
"objc-parse.y"
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
break
;}
break
;}
case
542
:
case
542
:
#line 29
00
"objc-parse.y"
#line 29
11
"objc-parse.y"
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
break
;}
break
;}
case
543
:
case
543
:
#line 29
01
"objc-parse.y"
#line 29
12
"objc-parse.y"
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
{
yyval
.
ttype
=
get_identifier
(
token_buffer
);
;
break
;}
break
;}
case
546
:
case
546
:
#line 29
07
"objc-parse.y"
#line 29
18
"objc-parse.y"
{
{
yyval
.
ttype
=
build_keyword_decl
(
yyvsp
[
-
5
].
ttype
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
yyval
.
ttype
=
build_keyword_decl
(
yyvsp
[
-
5
].
ttype
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
;
break
;}
break
;}
case
547
:
case
547
:
#line 29
12
"objc-parse.y"
#line 29
23
"objc-parse.y"
{
{
yyval
.
ttype
=
build_keyword_decl
(
yyvsp
[
-
2
].
ttype
,
NULL_TREE
,
yyvsp
[
0
].
ttype
);
yyval
.
ttype
=
build_keyword_decl
(
yyvsp
[
-
2
].
ttype
,
NULL_TREE
,
yyvsp
[
0
].
ttype
);
;
;
break
;}
break
;}
case
548
:
case
548
:
#line 29
17
"objc-parse.y"
#line 29
28
"objc-parse.y"
{
{
yyval
.
ttype
=
build_keyword_decl
(
NULL_TREE
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
yyval
.
ttype
=
build_keyword_decl
(
NULL_TREE
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
;
break
;}
break
;}
case
549
:
case
549
:
#line 29
22
"objc-parse.y"
#line 29
33
"objc-parse.y"
{
{
yyval
.
ttype
=
build_keyword_decl
(
NULL_TREE
,
NULL_TREE
,
yyvsp
[
0
].
ttype
);
yyval
.
ttype
=
build_keyword_decl
(
NULL_TREE
,
NULL_TREE
,
yyvsp
[
0
].
ttype
);
;
;
break
;}
break
;}
case
553
:
case
553
:
#line 29
35
"objc-parse.y"
#line 29
46
"objc-parse.y"
{
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
yyval
.
ttype
=
chainon
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
;
break
;}
break
;}
case
554
:
case
554
:
#line 29
43
"objc-parse.y"
#line 29
54
"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 */
...
@@ -5002,76 +5013,76 @@ case 554:
...
@@ -5002,76 +5013,76 @@ case 554:
;
;
break
;}
break
;}
case
555
:
case
555
:
#line 29
55
"objc-parse.y"
#line 29
66
"objc-parse.y"
{
{
yyval
.
ttype
=
build_tree_list
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
yyval
.
ttype
=
build_tree_list
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
;
break
;}
break
;}
case
556
:
case
556
:
#line 29
59
"objc-parse.y"
#line 29
70
"objc-parse.y"
{
{
yyval
.
ttype
=
build_tree_list
(
NULL_TREE
,
yyvsp
[
0
].
ttype
);
yyval
.
ttype
=
build_tree_list
(
NULL_TREE
,
yyvsp
[
0
].
ttype
);
;
;
break
;}
break
;}
case
558
:
case
558
:
#line 29
67
"objc-parse.y"
#line 29
78
"objc-parse.y"
{
{
yyval
.
ttype
=
get_class_reference
(
yyvsp
[
0
].
ttype
);
yyval
.
ttype
=
get_class_reference
(
yyvsp
[
0
].
ttype
);
;
;
break
;}
break
;}
case
559
:
case
559
:
#line 29
74
"objc-parse.y"
#line 29
85
"objc-parse.y"
{
objc_receiver_context
=
1
;
;
{
objc_receiver_context
=
1
;
;
break
;}
break
;}
case
560
:
case
560
:
#line 29
76
"objc-parse.y"
#line 29
87
"objc-parse.y"
{
objc_receiver_context
=
0
;
;
{
objc_receiver_context
=
0
;
;
break
;}
break
;}
case
561
:
case
561
:
#line 29
78
"objc-parse.y"
#line 29
89
"objc-parse.y"
{
{
yyval
.
ttype
=
build_tree_list
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
yyval
.
ttype
=
build_tree_list
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
;
break
;}
break
;}
case
565
:
case
565
:
#line
2991
"objc-parse.y"
#line
3002
"objc-parse.y"
{
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
yyval
.
ttype
=
chainon
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
;
break
;}
break
;}
case
566
:
case
566
:
#line
2998
"objc-parse.y"
#line
3009
"objc-parse.y"
{
{
yyval
.
ttype
=
build_tree_list
(
yyvsp
[
-
1
].
ttype
,
NULL_TREE
);
yyval
.
ttype
=
build_tree_list
(
yyvsp
[
-
1
].
ttype
,
NULL_TREE
);
;
;
break
;}
break
;}
case
567
:
case
567
:
#line 30
02
"objc-parse.y"
#line 30
13
"objc-parse.y"
{
{
yyval
.
ttype
=
build_tree_list
(
NULL_TREE
,
NULL_TREE
);
yyval
.
ttype
=
build_tree_list
(
NULL_TREE
,
NULL_TREE
);
;
;
break
;}
break
;}
case
568
:
case
568
:
#line 30
09
"objc-parse.y"
#line 30
20
"objc-parse.y"
{
{
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
;
;
break
;}
break
;}
case
569
:
case
569
:
#line 30
16
"objc-parse.y"
#line 30
27
"objc-parse.y"
{
{
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
;
;
break
;}
break
;}
case
570
:
case
570
:
#line 30
25
"objc-parse.y"
#line 30
36
"objc-parse.y"
{
{
yyval
.
ttype
=
groktypename
(
yyvsp
[
-
1
].
ttype
);
yyval
.
ttype
=
groktypename
(
yyvsp
[
-
1
].
ttype
);
;
;
break
;}
break
;}
}
}
/* the action file gets copied in in place of this dollarsign */
/* the action file gets copied in in place of this dollarsign */
#line 498 "/usr/
cygnus/TBD-TBD/
share/bison.simple"
#line 498 "/usr/share/bison.simple"
yyvsp
-=
yylen
;
yyvsp
-=
yylen
;
yyssp
-=
yylen
;
yyssp
-=
yylen
;
...
@@ -5267,5 +5278,5 @@ yyerrhandle:
...
@@ -5267,5 +5278,5 @@ yyerrhandle:
yystate
=
yyn
;
yystate
=
yyn
;
goto
yynewstate
;
goto
yynewstate
;
}
}
#line 30
30
"objc-parse.y"
#line 30
41
"objc-parse.y"
gcc/objc/objc-parse.y
View file @
afe3d090
...
@@ -41,7 +41,8 @@ Boston, MA 02111-1307, USA. */
...
@@ -41,7 +41,8 @@ Boston, MA 02111-1307, USA. */
#include "flags.h"
#include "flags.h"
#include "output.h"
#include "output.h"
#include "toplev.h"
#include "toplev.h"
#include "ggc.h"
#ifdef MULTIBYTE_CHARS
#ifdef MULTIBYTE_CHARS
#include <locale.h>
#include <locale.h>
#endif
#endif
...
@@ -229,6 +230,16 @@ int objc_public_flag;
...
@@ -229,6 +230,16 @@ int objc_public_flag;
#define YYPRINT(FILE,YYCHAR,YYLVAL) yyprint(FILE,YYCHAR,YYLVAL)
#define YYPRINT(FILE,YYCHAR,YYLVAL) yyprint(FILE,YYCHAR,YYLVAL)
extern
void
yyprint
PROTO
((
FILE
*
,
int
,
YYSTYPE
));
extern
void
yyprint
PROTO
((
FILE
*
,
int
,
YYSTYPE
));
/* Add GC roots for variables local to this file. */
void
c_parse_init
()
{
ggc_add_tree_root
(
&
declspec_stack
,
1
);
ggc_add_tree_root
(
&
current_declspecs
,
1
);
ggc_add_tree_root
(
&
prefix_attributes
,
1
);
}
%
}
%
}
%%
%%
...
...
gcc/toplev.c
View file @
afe3d090
...
@@ -1493,6 +1493,25 @@ decl_name (decl, verbosity)
...
@@ -1493,6 +1493,25 @@ decl_name (decl, verbosity)
return
IDENTIFIER_POINTER
(
DECL_NAME
(
decl
));
return
IDENTIFIER_POINTER
(
DECL_NAME
(
decl
));
}
}
/* Mark P for GC. Also mark main_input_filename and input_filename. */
static
void
mark_file_stack
(
p
)
void
*
p
;
{
struct
file_stack
*
stack
=
*
(
struct
file_stack
**
)
p
;
/* We're only called for input_file_stack, so we can mark the current
input_filename here as well. */
ggc_mark_string
(
main_input_filename
);
ggc_mark_string
(
input_filename
);
while
(
stack
)
{
ggc_mark_string
(
stack
->
name
);
stack
=
stack
->
next
;
}
}
static
int
need_error_newline
;
static
int
need_error_newline
;
/* Function of last error message;
/* Function of last error message;
...
@@ -3055,6 +3074,8 @@ compile_file (name)
...
@@ -3055,6 +3074,8 @@ compile_file (name)
#endif
#endif
}
}
if
(
ggc_p
)
name
=
ggc_alloc_string
(
name
,
strlen
(
name
));
input_filename
=
name
;
input_filename
=
name
;
/* Put an entry on the input file stack for the main input file. */
/* Put an entry on the input file stack for the main input file. */
...
@@ -4772,6 +4793,9 @@ main (argc, argv)
...
@@ -4772,6 +4793,9 @@ main (argc, argv)
flag_short_enums
=
DEFAULT_SHORT_ENUMS
;
flag_short_enums
=
DEFAULT_SHORT_ENUMS
;
#endif
#endif
ggc_add_root
(
&
input_file_stack
,
1
,
sizeof
input_file_stack
,
&
mark_file_stack
);
/* Perform language-specific options intialization. */
/* Perform language-specific options intialization. */
lang_init_options
();
lang_init_options
();
...
...
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