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
3551c177
Commit
3551c177
authored
Jul 27, 1998
by
Jason Merrill
Committed by
Jason Merrill
Jul 27, 1998
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
* typeck2.c (build_functional_cast): Handle default-initialization.
From-SVN: r21427
parent
b3abfd6f
Show whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
553 additions
and
541 deletions
+553
-541
gcc/cp/ChangeLog
+3
-0
gcc/cp/Makefile.in
+1
-1
gcc/cp/parse.c
+540
-540
gcc/cp/typeck2.c
+9
-0
No files found.
gcc/cp/ChangeLog
View file @
3551c177
1998-07-27 Jason Merrill <jason@yorick.cygnus.com>
1998-07-27 Jason Merrill <jason@yorick.cygnus.com>
* typeck2.c (build_functional_cast): Handle default-initialization.
* call.c (build_over_call): Pass 1 to popclass.
* call.c (build_over_call): Pass 1 to popclass.
* parse.y (direct_notype_declarator): Add precedence declaration
* parse.y (direct_notype_declarator): Add precedence declaration
to notype_unqualified_id case.
to notype_unqualified_id case.
* Makefile.in (EXPECT): Adjust.
* tree.c (ovl_member): Fix for single function in OVL.
* tree.c (ovl_member): Fix for single function in OVL.
...
...
gcc/cp/Makefile.in
View file @
3551c177
...
@@ -215,7 +215,7 @@ parse.o : $(PARSE_C) $(CONFIG_H) $(CXX_TREE_H) $(srcdir)/../flags.h lex.h \
...
@@ -215,7 +215,7 @@ parse.o : $(PARSE_C) $(CONFIG_H) $(CXX_TREE_H) $(srcdir)/../flags.h lex.h \
$(CC)
-c
$(ALL_CFLAGS)
$(ALL_CPPFLAGS)
$(INCLUDES)
$(BIG_SWITCHFLAG)
\
$(CC)
-c
$(ALL_CFLAGS)
$(ALL_CPPFLAGS)
$(INCLUDES)
$(BIG_SWITCHFLAG)
\
`
echo
$(PARSE_C)
| sed
's,^\./,,'
`
`
echo
$(PARSE_C)
| sed
's,^\./,,'
`
CONFLICTS
=
expect 2
8
shift
/reduce conflicts and 42 reduce/reduce conflicts.
CONFLICTS
=
expect 2
6
shift
/reduce conflicts and 42 reduce/reduce conflicts.
$(PARSE_H)
:
$(PARSE_C)
$(PARSE_H)
:
$(PARSE_C)
$(PARSE_C)
:
$(srcdir)/parse.y
$(PARSE_C)
:
$(srcdir)/parse.y
@
echo
$(CONFLICTS)
@
echo
$(CONFLICTS)
...
...
gcc/cp/parse.c
View file @
3551c177
...
@@ -659,64 +659,64 @@ static const short yyrline[] = { 0,
...
@@ -659,64 +659,64 @@ static const short yyrline[] = { 0,
1222
,
1224
,
1226
,
1228
,
1230
,
1232
,
1234
,
1236
,
1238
,
1240
,
1222
,
1224
,
1226
,
1228
,
1230
,
1232
,
1234
,
1236
,
1238
,
1240
,
1244
,
1246
,
1248
,
1265
,
1268
,
1269
,
1270
,
1271
,
1272
,
1275
,
1244
,
1246
,
1248
,
1265
,
1268
,
1269
,
1270
,
1271
,
1272
,
1275
,
1278
,
1281
,
1285
,
1288
,
1290
,
1295
,
1297
,
1298
,
1301
,
1303
,
1278
,
1281
,
1285
,
1288
,
1290
,
1295
,
1297
,
1298
,
1301
,
1303
,
1305
,
1307
,
1311
,
1314
,
1318
,
132
0
,
1321
,
1322
,
1326
,
1334
,
1305
,
1307
,
1311
,
1314
,
1318
,
132
2
,
1323
,
1324
,
1328
,
1336
,
133
5
,
1336
,
1344
,
1346
,
1349
,
1351
,
1361
,
1366
,
1368
,
1370
,
133
7
,
1338
,
1346
,
1348
,
1351
,
1353
,
1363
,
1368
,
1370
,
1372
,
137
2
,
1374
,
1376
,
1378
,
1381
,
1383
,
1427
,
1428
,
1432
,
1436
,
137
4
,
1376
,
1378
,
1380
,
1383
,
1385
,
1429
,
1430
,
1434
,
1438
,
144
0
,
1444
,
1446
,
1450
,
1452
,
1454
,
1462
,
1464
,
1466
,
1468
,
144
2
,
1446
,
1448
,
1452
,
1454
,
1456
,
1464
,
1466
,
1468
,
1470
,
147
2
,
1474
,
1476
,
1478
,
1483
,
1485
,
1487
,
1489
,
1492
,
1494
,
147
4
,
1476
,
1478
,
1480
,
1485
,
1487
,
1489
,
1491
,
1494
,
1496
,
149
6
,
1540
,
1543
,
1547
,
1550
,
1554
,
1557
,
1562
,
1564
,
1568
,
149
8
,
1542
,
1545
,
1549
,
1552
,
1556
,
1559
,
1564
,
1566
,
1570
,
158
1
,
1584
,
1591
,
1598
,
1603
,
1605
,
1610
,
1612
,
1619
,
1621
,
158
3
,
1586
,
1593
,
1600
,
1605
,
1607
,
1612
,
1614
,
1621
,
1623
,
162
5
,
1629
,
1635
,
1639
,
1642
,
1645
,
1648
,
1658
,
1660
,
1663
,
162
7
,
1631
,
1637
,
1641
,
1644
,
1647
,
1650
,
1660
,
1662
,
1665
,
166
7
,
1670
,
1673
,
1676
,
1679
,
1685
,
1691
,
1693
,
1698
,
1700
,
166
9
,
1672
,
1675
,
1678
,
1681
,
1687
,
1693
,
1695
,
1700
,
1702
,
17
09
,
1712
,
1714
,
1717
,
1723
,
1725
,
1735
,
1739
,
1742
,
1745
,
17
11
,
1714
,
1716
,
1719
,
1725
,
1727
,
1737
,
1741
,
1744
,
1747
,
175
0
,
1753
,
1761
,
1763
,
1765
,
1767
,
1770
,
1773
,
1788
,
1807
,
175
2
,
1755
,
1763
,
1765
,
1767
,
1769
,
1772
,
1775
,
1790
,
1809
,
181
0
,
1812
,
1815
,
1817
,
1820
,
1822
,
1825
,
1827
,
1830
,
1833
,
181
2
,
1814
,
1817
,
1819
,
1822
,
1824
,
1827
,
1829
,
1832
,
1835
,
183
7
,
1843
,
1844
,
1856
,
1863
,
1866
,
1872
,
1876
,
1881
,
1887
,
183
9
,
1845
,
1846
,
1858
,
1865
,
1868
,
1874
,
1878
,
1883
,
1889
,
18
88
,
1896
,
1899
,
1903
,
1906
,
1910
,
1915
,
1918
,
1922
,
1925
,
18
90
,
1898
,
1901
,
1905
,
1908
,
1912
,
1917
,
1920
,
1924
,
1927
,
192
7
,
1929
,
1931
,
1938
,
1940
,
1941
,
1942
,
1946
,
1949
,
1953
,
192
9
,
1931
,
1933
,
1940
,
1942
,
1943
,
1944
,
1948
,
1951
,
1955
,
195
6
,
1962
,
1964
,
1967
,
1970
,
1973
,
1979
,
1982
,
1985
,
1987
,
195
8
,
1964
,
1966
,
1969
,
1972
,
1975
,
1981
,
1984
,
1987
,
1989
,
19
89
,
1993
,
1999
,
2007
,
2009
,
2013
,
2015
,
2020
,
2023
,
2026
,
19
91
,
1995
,
2001
,
2009
,
2011
,
2015
,
2017
,
2022
,
2025
,
2028
,
20
28
,
2030
,
2034
,
2038
,
2043
,
2047
,
2050
,
2055
,
2059
,
2062
,
20
30
,
2032
,
2036
,
2040
,
2045
,
2049
,
2052
,
2057
,
2061
,
2064
,
206
5
,
2069
,
2081
,
2083
,
2086
,
2106
,
2108
,
2111
,
2113
,
2118
,
206
7
,
2071
,
2083
,
2085
,
2088
,
2108
,
2110
,
2113
,
2115
,
2120
,
212
0
,
2122
,
2124
,
2126
,
2128
,
2132
,
2137
,
2140
,
2142
,
2146
,
212
2
,
2124
,
2126
,
2128
,
2130
,
2134
,
2139
,
2142
,
2144
,
2148
,
215
2
,
2157
,
2162
,
2164
,
2168
,
2173
,
2176
,
2183
,
2211
,
2217
,
215
4
,
2159
,
2164
,
2166
,
2170
,
2175
,
2178
,
2185
,
2213
,
2219
,
22
19
,
2222
,
2225
,
2227
,
2231
,
2233
,
2237
,
2270
,
2306
,
2309
,
22
21
,
2224
,
2227
,
2229
,
2233
,
2235
,
2239
,
2272
,
2308
,
2311
,
231
0
,
2331
,
2354
,
2356
,
2360
,
2371
,
2385
,
2390
,
2397
,
2400
,
231
2
,
2333
,
2356
,
2358
,
2362
,
2373
,
2387
,
2392
,
2399
,
2402
,
24
08
,
2419
,
2428
,
2432
,
2447
,
2450
,
2455
,
2457
,
2459
,
2461
,
24
10
,
2421
,
2430
,
2434
,
2449
,
2452
,
2457
,
2459
,
2461
,
2463
,
246
3
,
2465
,
2468
,
2470
,
2474
,
2480
,
2482
,
2485
,
2488
,
2490
,
246
5
,
2467
,
2470
,
2472
,
2476
,
2482
,
2484
,
2487
,
2490
,
2492
,
250
1
,
2506
,
2509
,
2514
,
2517
,
2518
,
2529
,
2532
,
2533
,
2544
,
250
3
,
2508
,
2511
,
2516
,
2519
,
2520
,
2531
,
2534
,
2535
,
2546
,
254
6
,
2549
,
2551
,
2554
,
2561
,
2569
,
2576
,
2582
,
2588
,
2596
,
254
8
,
2551
,
2553
,
2556
,
2563
,
2571
,
2578
,
2584
,
2590
,
2598
,
260
0
,
2605
,
2609
,
2612
,
2621
,
2623
,
2627
,
2630
,
2635
,
2639
,
260
2
,
2607
,
2611
,
2614
,
2623
,
2625
,
2629
,
2632
,
2637
,
2641
,
264
5
,
2656
,
2659
,
2663
,
2667
,
2675
,
2680
,
2686
,
2689
,
2691
,
264
7
,
2658
,
2661
,
2665
,
2669
,
2677
,
2682
,
2688
,
2691
,
2693
,
269
3
,
2699
,
2702
,
2704
,
2706
,
2708
,
2712
,
2715
,
2733
,
2743
,
269
5
,
2701
,
2704
,
2706
,
2708
,
2710
,
2714
,
2717
,
2735
,
2745
,
274
5
,
2746
,
2750
,
2755
,
2758
,
2760
,
2762
,
2764
,
2768
,
2774
,
274
7
,
2748
,
2752
,
2757
,
2760
,
2762
,
2764
,
2766
,
2770
,
2776
,
277
7
,
2779
,
2781
,
2783
,
2787
,
2790
,
2793
,
2795
,
2797
,
2799
,
277
9
,
2781
,
2783
,
2785
,
2789
,
2792
,
2795
,
2797
,
2799
,
2801
,
280
3
,
2806
,
2809
,
2811
,
2813
,
2815
,
2827
,
2838
,
2842
,
2847
,
280
5
,
2808
,
2811
,
2813
,
2815
,
2817
,
2829
,
2840
,
2844
,
2849
,
285
1
,
2856
,
2858
,
2862
,
2865
,
2867
,
2871
,
2873
,
2874
,
2877
,
285
3
,
2858
,
2860
,
2864
,
2867
,
2869
,
2873
,
2875
,
2876
,
2879
,
28
79
,
2881
,
2887
,
2902
,
2908
,
2914
,
2928
,
2930
,
2934
,
2948
,
28
81
,
2883
,
2889
,
2904
,
2910
,
2916
,
2930
,
2932
,
2936
,
2950
,
295
0
,
2952
,
2956
,
2962
,
2975
,
2977
,
2981
,
2994
,
3000
,
3002
,
295
2
,
2954
,
2958
,
2964
,
2977
,
2979
,
2983
,
2996
,
3002
,
3004
,
300
3
,
3004
,
3012
,
3017
,
3026
,
3027
,
3031
,
3034
,
3040
,
3046
,
300
5
,
3006
,
3014
,
3019
,
3028
,
3029
,
3033
,
3036
,
3042
,
3048
,
30
49
,
3051
,
3053
,
3055
,
3059
,
3063
,
3067
,
3070
,
3075
,
3078
,
30
51
,
3053
,
3055
,
3057
,
3061
,
3065
,
3069
,
3072
,
3077
,
3080
,
308
0
,
3082
,
3084
,
3086
,
3088
,
3090
,
3092
,
3096
,
3100
,
3104
,
308
2
,
3084
,
3086
,
3088
,
3090
,
3092
,
3094
,
3098
,
3102
,
3106
,
31
08
,
3109
,
3111
,
3113
,
3115
,
3117
,
3119
,
3121
,
3123
,
3125
,
31
10
,
3111
,
3113
,
3115
,
3117
,
3119
,
3121
,
3123
,
3125
,
3127
,
313
3
,
3135
,
3136
,
3137
,
3140
,
3146
,
3148
,
3153
,
3155
,
3158
,
313
5
,
3137
,
3138
,
3139
,
3142
,
3148
,
3150
,
3155
,
3157
,
3160
,
317
2
,
3175
,
3178
,
3182
,
3185
,
3192
,
3194
,
3197
,
3199
,
3201
,
317
4
,
3177
,
3180
,
3184
,
3187
,
3194
,
3196
,
3199
,
3201
,
3203
,
320
4
,
3207
,
3210
,
3213
,
3215
,
3218
,
3222
,
3224
,
3230
,
3232
,
320
6
,
3209
,
3212
,
3215
,
3217
,
3220
,
3224
,
3226
,
3232
,
3234
,
323
3
,
3235
,
3240
,
3242
,
3244
,
3246
,
3248
,
3251
,
3252
,
3254
,
323
5
,
3237
,
3242
,
3244
,
3246
,
3248
,
3250
,
3253
,
3254
,
3256
,
325
7
,
3258
,
3261
,
3261
,
3264
,
3264
,
3267
,
3267
,
3269
,
3271
,
325
9
,
3260
,
3263
,
3263
,
3266
,
3266
,
3269
,
3269
,
3271
,
3273
,
327
3
,
3275
,
3281
,
3287
,
3290
,
3293
,
3299
,
3301
,
3303
,
3307
,
327
5
,
3277
,
3283
,
3289
,
3292
,
3295
,
3301
,
3303
,
3305
,
3309
,
33
09
,
3310
,
3311
,
3313
,
3316
,
3323
,
3328
,
3336
,
3340
,
3342
,
33
11
,
3312
,
3313
,
3315
,
3318
,
3325
,
3330
,
3338
,
3342
,
3344
,
334
5
,
3347
,
3350
,
3354
,
3356
,
3359
,
3361
,
3364
,
3381
,
3387
,
334
7
,
3349
,
3352
,
3356
,
3358
,
3361
,
3363
,
3366
,
3383
,
3389
,
339
5
,
3397
,
3399
,
3403
,
3406
,
3407
,
3415
,
3419
,
3423
,
3426
,
339
7
,
3399
,
3401
,
3405
,
3408
,
3409
,
3417
,
3421
,
3425
,
3428
,
342
7
,
3433
,
3436
,
3439
,
3441
,
3445
,
3450
,
3453
,
3463
,
3468
,
342
9
,
3435
,
3438
,
3441
,
3443
,
3447
,
3452
,
3455
,
3465
,
3470
,
34
69
,
3476
,
3479
,
3482
,
3484
,
3487
,
3489
,
3499
,
3513
,
3517
,
34
71
,
3478
,
3481
,
3484
,
3486
,
3489
,
3491
,
3501
,
3515
,
3519
,
352
0
,
3522
,
3526
,
3530
,
3533
,
3536
,
3538
,
3542
,
3544
,
3551
,
352
2
,
3524
,
3528
,
3532
,
3535
,
3538
,
3540
,
3544
,
3546
,
3553
,
35
58
,
3561
,
3564
,
3568
,
3572
,
3578
,
3582
,
3587
,
3589
,
3592
,
35
60
,
3563
,
3566
,
3570
,
3574
,
3580
,
3584
,
3589
,
3591
,
3594
,
359
7
,
3603
,
3614
,
3617
,
3619
,
3623
,
3628
,
3630
,
3637
,
3640
,
359
9
,
3605
,
3616
,
3619
,
3621
,
3625
,
3630
,
3632
,
3639
,
3642
,
364
2
,
3644
,
3650
,
3655
,
3658
,
3660
,
3662
,
3664
,
3666
,
3668
,
364
4
,
3646
,
3652
,
3657
,
3660
,
3662
,
3664
,
3666
,
3668
,
3670
,
367
0
,
3672
,
3674
,
3676
,
3678
,
3680
,
3682
,
3684
,
3686
,
3688
,
367
2
,
3674
,
3676
,
3678
,
3680
,
3682
,
3684
,
3686
,
3688
,
3690
,
369
0
,
3692
,
3694
,
3696
,
3698
,
3700
,
3702
,
3704
,
3706
,
3708
,
369
2
,
3694
,
3696
,
3698
,
3700
,
3702
,
3704
,
3706
,
3708
,
3710
,
371
0
,
3712
,
3714
,
3716
,
3718
,
3720
,
3723
,
3725
371
2
,
3714
,
3716
,
3718
,
3720
,
3722
,
3725
,
3727
};
};
#endif
#endif
...
@@ -5119,11 +5119,11 @@ case 284:
...
@@ -5119,11 +5119,11 @@ case 284:
{
yyval
.
ttype
=
lookup_template_function
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
lookup_template_function
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
288
:
case
288
:
#line 132
3
"parse.y"
#line 132
5
"parse.y"
{
yyval
.
ttype
=
finish_decl_parsing
(
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
finish_decl_parsing
(
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
289
:
case
289
:
#line 13
28
"parse.y"
#line 13
30
"parse.y"
{
{
if
(
TREE_CODE
(
yyvsp
[
0
].
ttype
)
==
BIT_NOT_EXPR
)
if
(
TREE_CODE
(
yyvsp
[
0
].
ttype
)
==
BIT_NOT_EXPR
)
yyval
.
ttype
=
build_x_unary_op
(
BIT_NOT_EXPR
,
TREE_OPERAND
(
yyvsp
[
0
].
ttype
,
0
));
yyval
.
ttype
=
build_x_unary_op
(
BIT_NOT_EXPR
,
TREE_OPERAND
(
yyvsp
[
0
].
ttype
,
0
));
...
@@ -5132,7 +5132,7 @@ case 289:
...
@@ -5132,7 +5132,7 @@ case 289:
;
;
break
;}
break
;}
case
292
:
case
292
:
#line 133
7
"parse.y"
#line 133
9
"parse.y"
{
{
if
(
processing_template_decl
)
if
(
processing_template_decl
)
push_obstacks
(
&
permanent_obstack
,
&
permanent_obstack
);
push_obstacks
(
&
permanent_obstack
,
&
permanent_obstack
);
...
@@ -5142,20 +5142,20 @@ case 292:
...
@@ -5142,20 +5142,20 @@ case 292:
;
;
break
;}
break
;}
case
293
:
case
293
:
#line 134
5
"parse.y"
#line 134
7
"parse.y"
{
yyval
.
ttype
=
finish_parenthesized_expr
(
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
finish_parenthesized_expr
(
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
294
:
case
294
:
#line 134
7
"parse.y"
#line 134
9
"parse.y"
{
yyvsp
[
-
1
].
ttype
=
reparse_decl_as_expr
(
NULL_TREE
,
yyvsp
[
-
1
].
ttype
);
{
yyvsp
[
-
1
].
ttype
=
reparse_decl_as_expr
(
NULL_TREE
,
yyvsp
[
-
1
].
ttype
);
yyval
.
ttype
=
finish_parenthesized_expr
(
yyvsp
[
-
1
].
ttype
);
;
yyval
.
ttype
=
finish_parenthesized_expr
(
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
295
:
case
295
:
#line 135
0
"parse.y"
#line 135
2
"parse.y"
{
yyval
.
ttype
=
error_mark_node
;
;
{
yyval
.
ttype
=
error_mark_node
;
;
break
;}
break
;}
case
296
:
case
296
:
#line 135
2
"parse.y"
#line 135
4
"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"
);
...
@@ -5167,43 +5167,43 @@ case 296:
...
@@ -5167,43 +5167,43 @@ case 296:
;
;
break
;}
break
;}
case
297
:
case
297
:
#line 136
2
"parse.y"
#line 136
4
"parse.y"
{
yyval
.
ttype
=
finish_stmt_expr
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
finish_stmt_expr
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
298
:
case
298
:
#line 136
7
"parse.y"
#line 136
9
"parse.y"
{
yyval
.
ttype
=
finish_call_expr
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
,
1
);
;
{
yyval
.
ttype
=
finish_call_expr
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
,
1
);
;
break
;}
break
;}
case
299
:
case
299
:
#line 13
69
"parse.y"
#line 13
71
"parse.y"
{
yyval
.
ttype
=
finish_call_expr
(
yyvsp
[
-
1
].
ttype
,
NULL_TREE
,
1
);
;
{
yyval
.
ttype
=
finish_call_expr
(
yyvsp
[
-
1
].
ttype
,
NULL_TREE
,
1
);
;
break
;}
break
;}
case
300
:
case
300
:
#line 137
1
"parse.y"
#line 137
3
"parse.y"
{
yyval
.
ttype
=
finish_call_expr
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
,
0
);
;
{
yyval
.
ttype
=
finish_call_expr
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
,
0
);
;
break
;}
break
;}
case
301
:
case
301
:
#line 137
3
"parse.y"
#line 137
5
"parse.y"
{
yyval
.
ttype
=
finish_call_expr
(
yyvsp
[
-
1
].
ttype
,
NULL_TREE
,
0
);
;
{
yyval
.
ttype
=
finish_call_expr
(
yyvsp
[
-
1
].
ttype
,
NULL_TREE
,
0
);
;
break
;}
break
;}
case
302
:
case
302
:
#line 137
5
"parse.y"
#line 137
7
"parse.y"
{
yyval
.
ttype
=
grok_array_decl
(
yyval
.
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
grok_array_decl
(
yyval
.
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
303
:
case
303
:
#line 137
7
"parse.y"
#line 137
9
"parse.y"
{
yyval
.
ttype
=
finish_increment_expr
(
yyvsp
[
-
1
].
ttype
,
POSTINCREMENT_EXPR
);
;
{
yyval
.
ttype
=
finish_increment_expr
(
yyvsp
[
-
1
].
ttype
,
POSTINCREMENT_EXPR
);
;
break
;}
break
;}
case
304
:
case
304
:
#line 13
79
"parse.y"
#line 13
81
"parse.y"
{
yyval
.
ttype
=
finish_increment_expr
(
yyvsp
[
-
1
].
ttype
,
POSTDECREMENT_EXPR
);
;
{
yyval
.
ttype
=
finish_increment_expr
(
yyvsp
[
-
1
].
ttype
,
POSTDECREMENT_EXPR
);
;
break
;}
break
;}
case
305
:
case
305
:
#line 138
2
"parse.y"
#line 138
4
"parse.y"
{
yyval
.
ttype
=
finish_this_expr
();
;
{
yyval
.
ttype
=
finish_this_expr
();
;
break
;}
break
;}
case
306
:
case
306
:
#line 138
4
"parse.y"
#line 138
6
"parse.y"
{
{
tree
type
=
NULL_TREE
;
tree
type
=
NULL_TREE
;
tree
id
=
yyval
.
ttype
;
tree
id
=
yyval
.
ttype
;
...
@@ -5249,49 +5249,49 @@ case 306:
...
@@ -5249,49 +5249,49 @@ case 306:
;
;
break
;}
break
;}
case
308
:
case
308
:
#line 14
29
"parse.y"
#line 14
31
"parse.y"
{
tree
type
=
groktypename
(
yyvsp
[
-
4
].
ftype
.
t
);
{
tree
type
=
groktypename
(
yyvsp
[
-
4
].
ftype
.
t
);
check_for_new_type
(
"dynamic_cast"
,
yyvsp
[
-
4
].
ftype
);
check_for_new_type
(
"dynamic_cast"
,
yyvsp
[
-
4
].
ftype
);
yyval
.
ttype
=
build_dynamic_cast
(
type
,
yyvsp
[
-
1
].
ttype
);
;
yyval
.
ttype
=
build_dynamic_cast
(
type
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
309
:
case
309
:
#line 143
3
"parse.y"
#line 143
5
"parse.y"
{
tree
type
=
groktypename
(
yyvsp
[
-
4
].
ftype
.
t
);
{
tree
type
=
groktypename
(
yyvsp
[
-
4
].
ftype
.
t
);
check_for_new_type
(
"static_cast"
,
yyvsp
[
-
4
].
ftype
);
check_for_new_type
(
"static_cast"
,
yyvsp
[
-
4
].
ftype
);
yyval
.
ttype
=
build_static_cast
(
type
,
yyvsp
[
-
1
].
ttype
);
;
yyval
.
ttype
=
build_static_cast
(
type
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
310
:
case
310
:
#line 143
7
"parse.y"
#line 143
9
"parse.y"
{
tree
type
=
groktypename
(
yyvsp
[
-
4
].
ftype
.
t
);
{
tree
type
=
groktypename
(
yyvsp
[
-
4
].
ftype
.
t
);
check_for_new_type
(
"reinterpret_cast"
,
yyvsp
[
-
4
].
ftype
);
check_for_new_type
(
"reinterpret_cast"
,
yyvsp
[
-
4
].
ftype
);
yyval
.
ttype
=
build_reinterpret_cast
(
type
,
yyvsp
[
-
1
].
ttype
);
;
yyval
.
ttype
=
build_reinterpret_cast
(
type
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
311
:
case
311
:
#line 144
1
"parse.y"
#line 144
3
"parse.y"
{
tree
type
=
groktypename
(
yyvsp
[
-
4
].
ftype
.
t
);
{
tree
type
=
groktypename
(
yyvsp
[
-
4
].
ftype
.
t
);
check_for_new_type
(
"const_cast"
,
yyvsp
[
-
4
].
ftype
);
check_for_new_type
(
"const_cast"
,
yyvsp
[
-
4
].
ftype
);
yyval
.
ttype
=
build_const_cast
(
type
,
yyvsp
[
-
1
].
ttype
);
;
yyval
.
ttype
=
build_const_cast
(
type
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
312
:
case
312
:
#line 144
5
"parse.y"
#line 144
7
"parse.y"
{
yyval
.
ttype
=
build_x_typeid
(
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
build_x_typeid
(
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
313
:
case
313
:
#line 144
7
"parse.y"
#line 144
9
"parse.y"
{
tree
type
=
groktypename
(
yyvsp
[
-
1
].
ftype
.
t
);
{
tree
type
=
groktypename
(
yyvsp
[
-
1
].
ftype
.
t
);
check_for_new_type
(
"typeid"
,
yyvsp
[
-
1
].
ftype
);
check_for_new_type
(
"typeid"
,
yyvsp
[
-
1
].
ftype
);
yyval
.
ttype
=
get_typeid
(
TYPE_MAIN_VARIANT
(
type
));
;
yyval
.
ttype
=
get_typeid
(
TYPE_MAIN_VARIANT
(
type
));
;
break
;}
break
;}
case
314
:
case
314
:
#line 145
1
"parse.y"
#line 145
3
"parse.y"
{
yyval
.
ttype
=
do_scoped_id
(
yyvsp
[
0
].
ttype
,
1
);
;
{
yyval
.
ttype
=
do_scoped_id
(
yyvsp
[
0
].
ttype
,
1
);
;
break
;}
break
;}
case
315
:
case
315
:
#line 145
3
"parse.y"
#line 145
5
"parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
316
:
case
316
:
#line 145
5
"parse.y"
#line 145
7
"parse.y"
{
{
got_scope
=
NULL_TREE
;
got_scope
=
NULL_TREE
;
if
(
TREE_CODE
(
yyvsp
[
0
].
ttype
)
==
IDENTIFIER_NODE
)
if
(
TREE_CODE
(
yyvsp
[
0
].
ttype
)
==
IDENTIFIER_NODE
)
...
@@ -5301,102 +5301,102 @@ case 316:
...
@@ -5301,102 +5301,102 @@ case 316:
;
;
break
;}
break
;}
case
317
:
case
317
:
#line 146
3
"parse.y"
#line 146
5
"parse.y"
{
yyval
.
ttype
=
build_offset_ref
(
OP0
(
yyval
.
ttype
),
OP1
(
yyval
.
ttype
));
;
{
yyval
.
ttype
=
build_offset_ref
(
OP0
(
yyval
.
ttype
),
OP1
(
yyval
.
ttype
));
;
break
;}
break
;}
case
318
:
case
318
:
#line 146
5
"parse.y"
#line 146
7
"parse.y"
{
yyval
.
ttype
=
finish_globally_qualified_member_call_expr
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
finish_globally_qualified_member_call_expr
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
319
:
case
319
:
#line 146
7
"parse.y"
#line 146
9
"parse.y"
{
yyval
.
ttype
=
finish_globally_qualified_member_call_expr
(
yyvsp
[
-
1
].
ttype
,
NULL_TREE
);
;
{
yyval
.
ttype
=
finish_globally_qualified_member_call_expr
(
yyvsp
[
-
1
].
ttype
,
NULL_TREE
);
;
break
;}
break
;}
case
320
:
case
320
:
#line 14
69
"parse.y"
#line 14
71
"parse.y"
{
{
yyval
.
ttype
=
build_x_component_ref
(
yyval
.
ttype
,
yyvsp
[
0
].
ttype
,
NULL_TREE
,
1
);
yyval
.
ttype
=
build_x_component_ref
(
yyval
.
ttype
,
yyvsp
[
0
].
ttype
,
NULL_TREE
,
1
);
;
;
break
;}
break
;}
case
321
:
case
321
:
#line 147
3
"parse.y"
#line 147
5
"parse.y"
{
yyval
.
ttype
=
finish_object_call_expr
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
4
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
finish_object_call_expr
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
4
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
322
:
case
322
:
#line 147
5
"parse.y"
#line 147
7
"parse.y"
{
yyval
.
ttype
=
finish_object_call_expr
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
-
2
].
ttype
,
NULL_TREE
);
;
{
yyval
.
ttype
=
finish_object_call_expr
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
-
2
].
ttype
,
NULL_TREE
);
;
break
;}
break
;}
case
323
:
case
323
:
#line 147
7
"parse.y"
#line 147
9
"parse.y"
{
yyval
.
ttype
=
build_x_component_ref
(
yyval
.
ttype
,
yyvsp
[
0
].
ttype
,
NULL_TREE
,
1
);
;
{
yyval
.
ttype
=
build_x_component_ref
(
yyval
.
ttype
,
yyvsp
[
0
].
ttype
,
NULL_TREE
,
1
);
;
break
;}
break
;}
case
324
:
case
324
:
#line 14
79
"parse.y"
#line 14
81
"parse.y"
{
if
(
processing_template_decl
)
{
if
(
processing_template_decl
)
yyval
.
ttype
=
build_min_nt
(
COMPONENT_REF
,
yyvsp
[
-
1
].
ttype
,
copy_to_permanent
(
yyvsp
[
0
].
ttype
));
yyval
.
ttype
=
build_min_nt
(
COMPONENT_REF
,
yyvsp
[
-
1
].
ttype
,
copy_to_permanent
(
yyvsp
[
0
].
ttype
));
else
else
yyval
.
ttype
=
build_object_ref
(
yyval
.
ttype
,
OP0
(
yyvsp
[
0
].
ttype
),
OP1
(
yyvsp
[
0
].
ttype
));
;
yyval
.
ttype
=
build_object_ref
(
yyval
.
ttype
,
OP0
(
yyvsp
[
0
].
ttype
),
OP1
(
yyvsp
[
0
].
ttype
));
;
break
;}
break
;}
case
325
:
case
325
:
#line 148
4
"parse.y"
#line 148
6
"parse.y"
{
yyval
.
ttype
=
finish_object_call_expr
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
4
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
finish_object_call_expr
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
4
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
326
:
case
326
:
#line 148
6
"parse.y"
#line 148
8
"parse.y"
{
yyval
.
ttype
=
finish_object_call_expr
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
-
2
].
ttype
,
NULL_TREE
);
;
{
yyval
.
ttype
=
finish_object_call_expr
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
-
2
].
ttype
,
NULL_TREE
);
;
break
;}
break
;}
case
327
:
case
327
:
#line 14
88
"parse.y"
#line 14
90
"parse.y"
{
yyval
.
ttype
=
finish_qualified_object_call_expr
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
4
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
finish_qualified_object_call_expr
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
4
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
328
:
case
328
:
#line 149
0
"parse.y"
#line 149
2
"parse.y"
{
yyval
.
ttype
=
finish_qualified_object_call_expr
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
-
2
].
ttype
,
NULL_TREE
);
;
{
yyval
.
ttype
=
finish_qualified_object_call_expr
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
-
2
].
ttype
,
NULL_TREE
);
;
break
;}
break
;}
case
329
:
case
329
:
#line 149
3
"parse.y"
#line 149
5
"parse.y"
{
yyval
.
ttype
=
finish_pseudo_destructor_call_expr
(
yyvsp
[
-
3
].
ttype
,
NULL_TREE
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
finish_pseudo_destructor_call_expr
(
yyvsp
[
-
3
].
ttype
,
NULL_TREE
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
330
:
case
330
:
#line 149
5
"parse.y"
#line 149
7
"parse.y"
{
yyval
.
ttype
=
finish_pseudo_destructor_call_expr
(
yyvsp
[
-
5
].
ttype
,
yyvsp
[
-
4
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
finish_pseudo_destructor_call_expr
(
yyvsp
[
-
5
].
ttype
,
yyvsp
[
-
4
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
331
:
case
331
:
#line 149
7
"parse.y"
#line 149
9
"parse.y"
{
{
yyval
.
ttype
=
error_mark_node
;
yyval
.
ttype
=
error_mark_node
;
;
;
break
;}
break
;}
case
332
:
case
332
:
#line 154
2
"parse.y"
#line 154
4
"parse.y"
{
yyval
.
itype
=
0
;
;
{
yyval
.
itype
=
0
;
;
break
;}
break
;}
case
333
:
case
333
:
#line 154
4
"parse.y"
#line 154
6
"parse.y"
{
got_scope
=
NULL_TREE
;
yyval
.
itype
=
1
;
;
{
got_scope
=
NULL_TREE
;
yyval
.
itype
=
1
;
;
break
;}
break
;}
case
334
:
case
334
:
#line 15
49
"parse.y"
#line 15
51
"parse.y"
{
yyval
.
itype
=
0
;
;
{
yyval
.
itype
=
0
;
;
break
;}
break
;}
case
335
:
case
335
:
#line 155
1
"parse.y"
#line 155
3
"parse.y"
{
got_scope
=
NULL_TREE
;
yyval
.
itype
=
1
;
;
{
got_scope
=
NULL_TREE
;
yyval
.
itype
=
1
;
;
break
;}
break
;}
case
336
:
case
336
:
#line 155
6
"parse.y"
#line 155
8
"parse.y"
{
yyval
.
ttype
=
boolean_true_node
;
;
{
yyval
.
ttype
=
boolean_true_node
;
;
break
;}
break
;}
case
337
:
case
337
:
#line 15
58
"parse.y"
#line 15
60
"parse.y"
{
yyval
.
ttype
=
boolean_false_node
;
;
{
yyval
.
ttype
=
boolean_false_node
;
;
break
;}
break
;}
case
339
:
case
339
:
#line 156
5
"parse.y"
#line 156
7
"parse.y"
{
yyval
.
ttype
=
chainon
(
yyval
.
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
chainon
(
yyval
.
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
340
:
case
340
:
#line 157
0
"parse.y"
#line 157
2
"parse.y"
{
{
if
(
!
current_function_parms_stored
)
if
(
!
current_function_parms_stored
)
store_parm_decls
();
store_parm_decls
();
...
@@ -5408,18 +5408,18 @@ case 340:
...
@@ -5408,18 +5408,18 @@ case 340:
;
;
break
;}
break
;}
case
341
:
case
341
:
#line 158
3
"parse.y"
#line 158
5
"parse.y"
{
got_object
=
TREE_TYPE
(
yyval
.
ttype
);
;
{
got_object
=
TREE_TYPE
(
yyval
.
ttype
);
;
break
;}
break
;}
case
342
:
case
342
:
#line 158
5
"parse.y"
#line 158
7
"parse.y"
{
{
yyval
.
ttype
=
build_x_arrow
(
yyval
.
ttype
);
yyval
.
ttype
=
build_x_arrow
(
yyval
.
ttype
);
got_object
=
TREE_TYPE
(
yyval
.
ttype
);
got_object
=
TREE_TYPE
(
yyval
.
ttype
);
;
;
break
;}
break
;}
case
343
:
case
343
:
#line 159
3
"parse.y"
#line 159
5
"parse.y"
{
{
resume_momentary
(
yyvsp
[
-
1
].
itype
);
resume_momentary
(
yyvsp
[
-
1
].
itype
);
if
(
yyvsp
[
-
2
].
ftype
.
t
&&
IS_AGGR_TYPE_CODE
(
TREE_CODE
(
yyvsp
[
-
2
].
ftype
.
t
)))
if
(
yyvsp
[
-
2
].
ftype
.
t
&&
IS_AGGR_TYPE_CODE
(
TREE_CODE
(
yyvsp
[
-
2
].
ftype
.
t
)))
...
@@ -5427,138 +5427,138 @@ case 343:
...
@@ -5427,138 +5427,138 @@ case 343:
;
;
break
;}
break
;}
case
344
:
case
344
:
#line 1
599
"parse.y"
#line 1
601
"parse.y"
{
{
resume_momentary
(
yyvsp
[
-
1
].
itype
);
resume_momentary
(
yyvsp
[
-
1
].
itype
);
note_list_got_semicolon
(
yyvsp
[
-
2
].
ftype
.
t
);
note_list_got_semicolon
(
yyvsp
[
-
2
].
ftype
.
t
);
;
;
break
;}
break
;}
case
345
:
case
345
:
#line 160
4
"parse.y"
#line 160
6
"parse.y"
{
resume_momentary
(
yyvsp
[
-
1
].
itype
);
;
{
resume_momentary
(
yyvsp
[
-
1
].
itype
);
;
break
;}
break
;}
case
346
:
case
346
:
#line 160
6
"parse.y"
#line 160
8
"parse.y"
{
{
shadow_tag
(
yyvsp
[
-
1
].
ftype
.
t
);
shadow_tag
(
yyvsp
[
-
1
].
ftype
.
t
);
note_list_got_semicolon
(
yyvsp
[
-
1
].
ftype
.
t
);
note_list_got_semicolon
(
yyvsp
[
-
1
].
ftype
.
t
);
;
;
break
;}
break
;}
case
347
:
case
347
:
#line 161
1
"parse.y"
#line 161
3
"parse.y"
{
warning
(
"empty declaration"
);
;
{
warning
(
"empty declaration"
);
;
break
;}
break
;}
case
348
:
case
348
:
#line 161
3
"parse.y"
#line 161
5
"parse.y"
{
pedantic
=
yyvsp
[
-
1
].
itype
;
;
{
pedantic
=
yyvsp
[
-
1
].
itype
;
;
break
;}
break
;}
case
351
:
case
351
:
#line 162
7
"parse.y"
#line 162
9
"parse.y"
{
yyval
.
ttype
=
make_call_declarator
(
NULL_TREE
,
empty_parms
(),
{
yyval
.
ttype
=
make_call_declarator
(
NULL_TREE
,
empty_parms
(),
NULL_TREE
,
NULL_TREE
);
;
NULL_TREE
,
NULL_TREE
);
;
break
;}
break
;}
case
352
:
case
352
:
#line 163
0
"parse.y"
#line 163
2
"parse.y"
{
yyval
.
ttype
=
make_call_declarator
(
yyval
.
ttype
,
empty_parms
(),
NULL_TREE
,
{
yyval
.
ttype
=
make_call_declarator
(
yyval
.
ttype
,
empty_parms
(),
NULL_TREE
,
NULL_TREE
);
;
NULL_TREE
);
;
break
;}
break
;}
case
353
:
case
353
:
#line 163
7
"parse.y"
#line 163
9
"parse.y"
{
yyval
.
ftype
.
t
=
build_decl_list
(
yyvsp
[
-
1
].
ftype
.
t
,
yyvsp
[
0
].
ttype
);
{
yyval
.
ftype
.
t
=
build_decl_list
(
yyvsp
[
-
1
].
ftype
.
t
,
yyvsp
[
0
].
ttype
);
yyval
.
ftype
.
new_type_flag
=
yyvsp
[
-
1
].
ftype
.
new_type_flag
;
;
yyval
.
ftype
.
new_type_flag
=
yyvsp
[
-
1
].
ftype
.
new_type_flag
;
;
break
;}
break
;}
case
354
:
case
354
:
#line 164
0
"parse.y"
#line 164
2
"parse.y"
{
yyval
.
ftype
.
t
=
build_decl_list
(
yyvsp
[
-
1
].
ftype
.
t
,
yyvsp
[
0
].
ttype
);
{
yyval
.
ftype
.
t
=
build_decl_list
(
yyvsp
[
-
1
].
ftype
.
t
,
yyvsp
[
0
].
ttype
);
yyval
.
ftype
.
new_type_flag
=
yyvsp
[
-
1
].
ftype
.
new_type_flag
;
;
yyval
.
ftype
.
new_type_flag
=
yyvsp
[
-
1
].
ftype
.
new_type_flag
;
;
break
;}
break
;}
case
355
:
case
355
:
#line 164
3
"parse.y"
#line 164
5
"parse.y"
{
yyval
.
ftype
.
t
=
build_decl_list
(
get_decl_list
(
yyvsp
[
-
1
].
ftype
.
t
),
yyvsp
[
0
].
ttype
);
{
yyval
.
ftype
.
t
=
build_decl_list
(
get_decl_list
(
yyvsp
[
-
1
].
ftype
.
t
),
yyvsp
[
0
].
ttype
);
yyval
.
ftype
.
new_type_flag
=
yyvsp
[
-
1
].
ftype
.
new_type_flag
;
;
yyval
.
ftype
.
new_type_flag
=
yyvsp
[
-
1
].
ftype
.
new_type_flag
;
;
break
;}
break
;}
case
356
:
case
356
:
#line 164
6
"parse.y"
#line 164
8
"parse.y"
{
yyval
.
ftype
.
t
=
build_decl_list
(
yyvsp
[
0
].
ftype
.
t
,
NULL_TREE
);
{
yyval
.
ftype
.
t
=
build_decl_list
(
yyvsp
[
0
].
ftype
.
t
,
NULL_TREE
);
yyval
.
ftype
.
new_type_flag
=
yyvsp
[
0
].
ftype
.
new_type_flag
;
;
yyval
.
ftype
.
new_type_flag
=
yyvsp
[
0
].
ftype
.
new_type_flag
;
;
break
;}
break
;}
case
357
:
case
357
:
#line 16
49
"parse.y"
#line 16
51
"parse.y"
{
yyval
.
ftype
.
t
=
build_decl_list
(
yyvsp
[
0
].
ftype
.
t
,
NULL_TREE
);
{
yyval
.
ftype
.
t
=
build_decl_list
(
yyvsp
[
0
].
ftype
.
t
,
NULL_TREE
);
yyval
.
ftype
.
new_type_flag
=
yyvsp
[
0
].
ftype
.
new_type_flag
;
;
yyval
.
ftype
.
new_type_flag
=
yyvsp
[
0
].
ftype
.
new_type_flag
;
;
break
;}
break
;}
case
360
:
case
360
:
#line 166
5
"parse.y"
#line 166
7
"parse.y"
{
yyval
.
ftype
.
t
=
decl_tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ftype
.
t
,
yyvsp
[
-
1
].
ttype
);
{
yyval
.
ftype
.
t
=
decl_tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ftype
.
t
,
yyvsp
[
-
1
].
ttype
);
yyval
.
ftype
.
new_type_flag
=
yyvsp
[
0
].
ftype
.
new_type_flag
;
;
yyval
.
ftype
.
new_type_flag
=
yyvsp
[
0
].
ftype
.
new_type_flag
;
;
break
;}
break
;}
case
361
:
case
361
:
#line 16
68
"parse.y"
#line 16
70
"parse.y"
{
yyval
.
ftype
.
t
=
decl_tree_cons
(
NULL_TREE
,
yyvsp
[
-
1
].
ftype
.
t
,
yyvsp
[
0
].
ttype
);
{
yyval
.
ftype
.
t
=
decl_tree_cons
(
NULL_TREE
,
yyvsp
[
-
1
].
ftype
.
t
,
yyvsp
[
0
].
ttype
);
yyval
.
ftype
.
new_type_flag
=
yyvsp
[
-
1
].
ftype
.
new_type_flag
;
;
yyval
.
ftype
.
new_type_flag
=
yyvsp
[
-
1
].
ftype
.
new_type_flag
;
;
break
;}
break
;}
case
362
:
case
362
:
#line 167
1
"parse.y"
#line 167
3
"parse.y"
{
yyval
.
ftype
.
t
=
decl_tree_cons
(
NULL_TREE
,
yyvsp
[
-
2
].
ftype
.
t
,
chainon
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
));
{
yyval
.
ftype
.
t
=
decl_tree_cons
(
NULL_TREE
,
yyvsp
[
-
2
].
ftype
.
t
,
chainon
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
));
yyval
.
ftype
.
new_type_flag
=
yyvsp
[
-
2
].
ftype
.
new_type_flag
;
;
yyval
.
ftype
.
new_type_flag
=
yyvsp
[
-
2
].
ftype
.
new_type_flag
;
;
break
;}
break
;}
case
363
:
case
363
:
#line 167
4
"parse.y"
#line 167
6
"parse.y"
{
yyval
.
ftype
.
t
=
decl_tree_cons
(
NULL_TREE
,
yyvsp
[
-
1
].
ftype
.
t
,
chainon
(
yyvsp
[
0
].
ttype
,
yyvsp
[
-
2
].
ttype
));
{
yyval
.
ftype
.
t
=
decl_tree_cons
(
NULL_TREE
,
yyvsp
[
-
1
].
ftype
.
t
,
chainon
(
yyvsp
[
0
].
ttype
,
yyvsp
[
-
2
].
ttype
));
yyval
.
ftype
.
new_type_flag
=
yyvsp
[
-
1
].
ftype
.
new_type_flag
;
;
yyval
.
ftype
.
new_type_flag
=
yyvsp
[
-
1
].
ftype
.
new_type_flag
;
;
break
;}
break
;}
case
364
:
case
364
:
#line 167
7
"parse.y"
#line 167
9
"parse.y"
{
yyval
.
ftype
.
t
=
decl_tree_cons
(
NULL_TREE
,
yyvsp
[
-
1
].
ftype
.
t
,
chainon
(
yyvsp
[
0
].
ttype
,
yyvsp
[
-
2
].
ttype
));
{
yyval
.
ftype
.
t
=
decl_tree_cons
(
NULL_TREE
,
yyvsp
[
-
1
].
ftype
.
t
,
chainon
(
yyvsp
[
0
].
ttype
,
yyvsp
[
-
2
].
ttype
));
yyval
.
ftype
.
new_type_flag
=
yyvsp
[
-
1
].
ftype
.
new_type_flag
;
;
yyval
.
ftype
.
new_type_flag
=
yyvsp
[
-
1
].
ftype
.
new_type_flag
;
;
break
;}
break
;}
case
365
:
case
365
:
#line 168
0
"parse.y"
#line 168
2
"parse.y"
{
yyval
.
ftype
.
t
=
decl_tree_cons
(
NULL_TREE
,
yyvsp
[
-
2
].
ftype
.
t
,
{
yyval
.
ftype
.
t
=
decl_tree_cons
(
NULL_TREE
,
yyvsp
[
-
2
].
ftype
.
t
,
chainon
(
yyvsp
[
-
1
].
ttype
,
chainon
(
yyvsp
[
0
].
ttype
,
yyvsp
[
-
3
].
ttype
)));
chainon
(
yyvsp
[
-
1
].
ttype
,
chainon
(
yyvsp
[
0
].
ttype
,
yyvsp
[
-
3
].
ttype
)));
yyval
.
ftype
.
new_type_flag
=
yyvsp
[
-
2
].
ftype
.
new_type_flag
;
;
yyval
.
ftype
.
new_type_flag
=
yyvsp
[
-
2
].
ftype
.
new_type_flag
;
;
break
;}
break
;}
case
366
:
case
366
:
#line 168
7
"parse.y"
#line 168
9
"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
(
yyval
.
ttype
));
IDENTIFIER_POINTER
(
yyval
.
ttype
));
yyval
.
ttype
=
build_decl_list
(
NULL_TREE
,
yyval
.
ttype
);
;
yyval
.
ttype
=
build_decl_list
(
NULL_TREE
,
yyval
.
ttype
);
;
break
;}
break
;}
case
367
:
case
367
:
#line 169
2
"parse.y"
#line 169
4
"parse.y"
{
yyval
.
ttype
=
decl_tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ftype
.
t
,
yyval
.
ttype
);
;
{
yyval
.
ttype
=
decl_tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ftype
.
t
,
yyval
.
ttype
);
;
break
;}
break
;}
case
368
:
case
368
:
#line 169
4
"parse.y"
#line 169
6
"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
=
decl_tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyval
.
ttype
);
;
yyval
.
ttype
=
decl_tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyval
.
ttype
);
;
break
;}
break
;}
case
369
:
case
369
:
#line 1
699
"parse.y"
#line 1
701
"parse.y"
{
yyval
.
ttype
=
decl_tree_cons
(
yyvsp
[
0
].
ttype
,
NULL_TREE
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
decl_tree_cons
(
yyvsp
[
0
].
ttype
,
NULL_TREE
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
370
:
case
370
:
#line 170
1
"parse.y"
#line 170
3
"parse.y"
{
yyval
.
ttype
=
decl_tree_cons
(
yyvsp
[
0
].
ttype
,
NULL_TREE
,
NULL_TREE
);
;
{
yyval
.
ttype
=
decl_tree_cons
(
yyvsp
[
0
].
ttype
,
NULL_TREE
,
NULL_TREE
);
;
break
;}
break
;}
case
371
:
case
371
:
#line 171
1
"parse.y"
#line 171
3
"parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ftype
.
t
;
TREE_STATIC
(
yyval
.
ttype
)
=
1
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ftype
.
t
;
TREE_STATIC
(
yyval
.
ttype
)
=
1
;
;
break
;}
break
;}
case
372
:
case
372
:
#line 171
3
"parse.y"
#line 171
5
"parse.y"
{
yyval
.
ttype
=
IDENTIFIER_AS_LIST
(
yyval
.
ttype
);
;
{
yyval
.
ttype
=
IDENTIFIER_AS_LIST
(
yyval
.
ttype
);
;
break
;}
break
;}
case
373
:
case
373
:
#line 171
5
"parse.y"
#line 171
7
"parse.y"
{
yyval
.
ttype
=
decl_tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyval
.
ttype
);
{
yyval
.
ttype
=
decl_tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyval
.
ttype
);
TREE_STATIC
(
yyval
.
ttype
)
=
1
;
;
TREE_STATIC
(
yyval
.
ttype
)
=
1
;
;
break
;}
break
;}
case
374
:
case
374
:
#line 17
18
"parse.y"
#line 17
20
"parse.y"
{
if
(
extra_warnings
&&
TREE_STATIC
(
yyval
.
ttype
))
{
if
(
extra_warnings
&&
TREE_STATIC
(
yyval
.
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
));
...
@@ -5566,61 +5566,61 @@ case 374:
...
@@ -5566,61 +5566,61 @@ case 374:
TREE_STATIC
(
yyval
.
ttype
)
=
TREE_STATIC
(
yyvsp
[
-
1
].
ttype
);
;
TREE_STATIC
(
yyval
.
ttype
)
=
TREE_STATIC
(
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
375
:
case
375
:
#line 172
4
"parse.y"
#line 172
6
"parse.y"
{
yyval
.
ttype
=
decl_tree_cons
(
yyvsp
[
0
].
ttype
,
NULL_TREE
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
decl_tree_cons
(
yyvsp
[
0
].
ttype
,
NULL_TREE
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
376
:
case
376
:
#line 172
6
"parse.y"
#line 172
8
"parse.y"
{
yyval
.
ttype
=
decl_tree_cons
(
yyvsp
[
0
].
ttype
,
NULL_TREE
,
NULL_TREE
);
;
{
yyval
.
ttype
=
decl_tree_cons
(
yyvsp
[
0
].
ttype
,
NULL_TREE
,
NULL_TREE
);
;
break
;}
break
;}
case
377
:
case
377
:
#line 173
7
"parse.y"
#line 173
9
"parse.y"
{
yyval
.
ftype
.
t
=
get_decl_list
(
yyvsp
[
0
].
ftype
.
t
);
{
yyval
.
ftype
.
t
=
get_decl_list
(
yyvsp
[
0
].
ftype
.
t
);
yyval
.
ftype
.
new_type_flag
=
yyvsp
[
0
].
ftype
.
new_type_flag
;
;
yyval
.
ftype
.
new_type_flag
=
yyvsp
[
0
].
ftype
.
new_type_flag
;
;
break
;}
break
;}
case
378
:
case
378
:
#line 174
0
"parse.y"
#line 174
2
"parse.y"
{
yyval
.
ftype
.
t
=
decl_tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ftype
.
t
,
yyvsp
[
-
1
].
ftype
.
t
);
{
yyval
.
ftype
.
t
=
decl_tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ftype
.
t
,
yyvsp
[
-
1
].
ftype
.
t
);
yyval
.
ftype
.
new_type_flag
=
yyvsp
[
0
].
ftype
.
new_type_flag
;
;
yyval
.
ftype
.
new_type_flag
=
yyvsp
[
0
].
ftype
.
new_type_flag
;
;
break
;}
break
;}
case
379
:
case
379
:
#line 174
3
"parse.y"
#line 174
5
"parse.y"
{
yyval
.
ftype
.
t
=
decl_tree_cons
(
NULL_TREE
,
yyvsp
[
-
1
].
ftype
.
t
,
yyvsp
[
0
].
ttype
);
{
yyval
.
ftype
.
t
=
decl_tree_cons
(
NULL_TREE
,
yyvsp
[
-
1
].
ftype
.
t
,
yyvsp
[
0
].
ttype
);
yyval
.
ftype
.
new_type_flag
=
yyvsp
[
-
1
].
ftype
.
new_type_flag
;
;
yyval
.
ftype
.
new_type_flag
=
yyvsp
[
-
1
].
ftype
.
new_type_flag
;
;
break
;}
break
;}
case
380
:
case
380
:
#line 174
6
"parse.y"
#line 174
8
"parse.y"
{
yyval
.
ftype
.
t
=
decl_tree_cons
(
NULL_TREE
,
yyvsp
[
-
1
].
ftype
.
t
,
chainon
(
yyvsp
[
0
].
ttype
,
yyvsp
[
-
2
].
ftype
.
t
));
{
yyval
.
ftype
.
t
=
decl_tree_cons
(
NULL_TREE
,
yyvsp
[
-
1
].
ftype
.
t
,
chainon
(
yyvsp
[
0
].
ttype
,
yyvsp
[
-
2
].
ftype
.
t
));
yyval
.
ftype
.
new_type_flag
=
yyvsp
[
-
2
].
ftype
.
new_type_flag
;
;
yyval
.
ftype
.
new_type_flag
=
yyvsp
[
-
2
].
ftype
.
new_type_flag
;
;
break
;}
break
;}
case
381
:
case
381
:
#line 175
2
"parse.y"
#line 175
4
"parse.y"
{
yyval
.
ttype
=
build_decl_list
(
NULL_TREE
,
yyvsp
[
0
].
ftype
.
t
);
;
{
yyval
.
ttype
=
build_decl_list
(
NULL_TREE
,
yyvsp
[
0
].
ftype
.
t
);
;
break
;}
break
;}
case
382
:
case
382
:
#line 175
4
"parse.y"
#line 175
6
"parse.y"
{
yyval
.
ttype
=
decl_tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ftype
.
t
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
decl_tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ftype
.
t
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
384
:
case
384
:
#line 176
4
"parse.y"
#line 176
6
"parse.y"
{
yyval
.
ftype
.
t
=
yyvsp
[
0
].
ttype
;
yyval
.
ftype
.
new_type_flag
=
0
;
;
{
yyval
.
ftype
.
t
=
yyvsp
[
0
].
ttype
;
yyval
.
ftype
.
new_type_flag
=
0
;
;
break
;}
break
;}
case
385
:
case
385
:
#line 176
6
"parse.y"
#line 176
8
"parse.y"
{
yyval
.
ftype
.
t
=
yyvsp
[
0
].
ttype
;
yyval
.
ftype
.
new_type_flag
=
0
;
;
{
yyval
.
ftype
.
t
=
yyvsp
[
0
].
ttype
;
yyval
.
ftype
.
new_type_flag
=
0
;
;
break
;}
break
;}
case
386
:
case
386
:
#line 17
68
"parse.y"
#line 17
70
"parse.y"
{
yyval
.
ftype
.
t
=
TREE_TYPE
(
yyvsp
[
-
1
].
ttype
);
{
yyval
.
ftype
.
t
=
TREE_TYPE
(
yyvsp
[
-
1
].
ttype
);
yyval
.
ftype
.
new_type_flag
=
0
;
;
yyval
.
ftype
.
new_type_flag
=
0
;
;
break
;}
break
;}
case
387
:
case
387
:
#line 177
1
"parse.y"
#line 177
3
"parse.y"
{
yyval
.
ftype
.
t
=
groktypename
(
yyvsp
[
-
1
].
ftype
.
t
);
{
yyval
.
ftype
.
t
=
groktypename
(
yyvsp
[
-
1
].
ftype
.
t
);
yyval
.
ftype
.
new_type_flag
=
0
;
;
yyval
.
ftype
.
new_type_flag
=
0
;
;
break
;}
break
;}
case
388
:
case
388
:
#line 177
4
"parse.y"
#line 177
6
"parse.y"
{
tree
type
=
TREE_TYPE
(
yyvsp
[
-
1
].
ttype
);
{
tree
type
=
TREE_TYPE
(
yyvsp
[
-
1
].
ttype
);
yyval
.
ftype
.
new_type_flag
=
0
;
yyval
.
ftype
.
new_type_flag
=
0
;
...
@@ -5637,7 +5637,7 @@ case 388:
...
@@ -5637,7 +5637,7 @@ case 388:
;
;
break
;}
break
;}
case
389
:
case
389
:
#line 17
89
"parse.y"
#line 17
91
"parse.y"
{
tree
type
=
groktypename
(
yyvsp
[
-
1
].
ftype
.
t
);
{
tree
type
=
groktypename
(
yyvsp
[
-
1
].
ftype
.
t
);
yyval
.
ftype
.
new_type_flag
=
0
;
yyval
.
ftype
.
new_type_flag
=
0
;
...
@@ -5654,188 +5654,188 @@ case 389:
...
@@ -5654,188 +5654,188 @@ case 389:
;
;
break
;}
break
;}
case
390
:
case
390
:
#line 18
09
"parse.y"
#line 18
11
"parse.y"
{
yyval
.
ftype
.
t
=
yyvsp
[
0
].
ttype
;
yyval
.
ftype
.
new_type_flag
=
0
;
;
{
yyval
.
ftype
.
t
=
yyvsp
[
0
].
ttype
;
yyval
.
ftype
.
new_type_flag
=
0
;
;
break
;}
break
;}
case
391
:
case
391
:
#line 181
1
"parse.y"
#line 181
3
"parse.y"
{
yyval
.
ftype
.
t
=
yyvsp
[
0
].
ttype
;
yyval
.
ftype
.
new_type_flag
=
0
;
;
{
yyval
.
ftype
.
t
=
yyvsp
[
0
].
ttype
;
yyval
.
ftype
.
new_type_flag
=
0
;
;
break
;}
break
;}
case
399
:
case
399
:
#line 183
2
"parse.y"
#line 183
4
"parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
400
:
case
400
:
#line 183
4
"parse.y"
#line 183
6
"parse.y"
{
if
(
TREE_CHAIN
(
yyvsp
[
-
1
].
ttype
))
yyvsp
[
-
1
].
ttype
=
combine_strings
(
yyvsp
[
-
1
].
ttype
);
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
;
{
if
(
TREE_CHAIN
(
yyvsp
[
-
1
].
ttype
))
yyvsp
[
-
1
].
ttype
=
combine_strings
(
yyvsp
[
-
1
].
ttype
);
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
;
break
;}
break
;}
case
401
:
case
401
:
#line 18
39
"parse.y"
#line 18
41
"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
);
;
break
;}
break
;}
case
402
:
case
402
:
#line 184
3
"parse.y"
#line 184
5
"parse.y"
{
cp_finish_decl
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
4
].
ttype
,
1
,
LOOKUP_ONLYCONVERTING
);
;
{
cp_finish_decl
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
4
].
ttype
,
1
,
LOOKUP_ONLYCONVERTING
);
;
break
;}
break
;}
case
403
:
case
403
:
#line 184
5
"parse.y"
#line 184
7
"parse.y"
{
yyval
.
ttype
=
start_decl
(
yyvsp
[
-
2
].
ttype
,
current_declspecs
,
0
,
{
yyval
.
ttype
=
start_decl
(
yyvsp
[
-
2
].
ttype
,
current_declspecs
,
0
,
yyvsp
[
0
].
ttype
,
prefix_attributes
);
yyvsp
[
0
].
ttype
,
prefix_attributes
);
cp_finish_decl
(
yyval
.
ttype
,
NULL_TREE
,
yyvsp
[
-
1
].
ttype
,
1
,
0
);
;
cp_finish_decl
(
yyval
.
ttype
,
NULL_TREE
,
yyvsp
[
-
1
].
ttype
,
1
,
0
);
;
break
;}
break
;}
case
404
:
case
404
:
#line 18
58
"parse.y"
#line 18
60
"parse.y"
{
yyvsp
[
0
].
itype
=
parse_decl
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
4
].
ttype
,
{
yyvsp
[
0
].
itype
=
parse_decl
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
4
].
ttype
,
yyvsp
[
-
1
].
ttype
,
1
,
&
yyval
.
ttype
);
;
yyvsp
[
-
1
].
ttype
,
1
,
&
yyval
.
ttype
);
;
break
;}
break
;}
case
405
:
case
405
:
#line 186
3
"parse.y"
#line 186
5
"parse.y"
{
cp_finish_decl
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
4
].
ttype
,
1
,
{
cp_finish_decl
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
4
].
ttype
,
1
,
LOOKUP_ONLYCONVERTING
);
LOOKUP_ONLYCONVERTING
);
yyval
.
itype
=
yyvsp
[
-
2
].
itype
;
;
yyval
.
itype
=
yyvsp
[
-
2
].
itype
;
;
break
;}
break
;}
case
406
:
case
406
:
#line 186
7
"parse.y"
#line 186
9
"parse.y"
{
tree
d
;
{
tree
d
;
yyval
.
itype
=
parse_decl
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
0
].
ttype
,
0
,
&
d
);
yyval
.
itype
=
parse_decl
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
0
].
ttype
,
0
,
&
d
);
cp_finish_decl
(
d
,
NULL_TREE
,
yyvsp
[
-
1
].
ttype
,
1
,
0
);
;
cp_finish_decl
(
d
,
NULL_TREE
,
yyvsp
[
-
1
].
ttype
,
1
,
0
);
;
break
;}
break
;}
case
407
:
case
407
:
#line 187
4
"parse.y"
#line 187
6
"parse.y"
{
yyval
.
itype
=
yyvsp
[
0
].
itype
;
;
{
yyval
.
itype
=
yyvsp
[
0
].
itype
;
;
break
;}
break
;}
case
408
:
case
408
:
#line 18
78
"parse.y"
#line 18
80
"parse.y"
{
yyval
.
itype
=
yyvsp
[
0
].
itype
;
;
{
yyval
.
itype
=
yyvsp
[
0
].
itype
;
;
break
;}
break
;}
case
409
:
case
409
:
#line 188
3
"parse.y"
#line 188
5
"parse.y"
{
/* Set things up as initdcl0_innards expects. */
{
/* Set things up as initdcl0_innards expects. */
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
yyvsp
[
-
1
].
ttype
=
NULL_TREE
;
;
yyvsp
[
-
1
].
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
410
:
case
410
:
#line 188
7
"parse.y"
#line 188
9
"parse.y"
{;
{;
break
;}
break
;}
case
411
:
case
411
:
#line 18
89
"parse.y"
#line 18
91
"parse.y"
{
tree
d
;
{
tree
d
;
parse_decl
(
yyvsp
[
-
2
].
ttype
,
NULL_TREE
,
yyvsp
[
0
].
ttype
,
0
,
&
d
);
parse_decl
(
yyvsp
[
-
2
].
ttype
,
NULL_TREE
,
yyvsp
[
0
].
ttype
,
0
,
&
d
);
cp_finish_decl
(
d
,
NULL_TREE
,
yyvsp
[
-
1
].
ttype
,
1
,
0
);
;
cp_finish_decl
(
d
,
NULL_TREE
,
yyvsp
[
-
1
].
ttype
,
1
,
0
);
;
break
;}
break
;}
case
412
:
case
412
:
#line 1
898
"parse.y"
#line 1
900
"parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
413
:
case
413
:
#line 190
0
"parse.y"
#line 190
2
"parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
414
:
case
414
:
#line 190
5
"parse.y"
#line 190
7
"parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
415
:
case
415
:
#line 190
7
"parse.y"
#line 190
9
"parse.y"
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
416
:
case
416
:
#line 191
2
"parse.y"
#line 191
4
"parse.y"
{
yyval
.
ttype
=
yyvsp
[
-
2
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
-
2
].
ttype
;
;
break
;}
break
;}
case
417
:
case
417
:
#line 191
7
"parse.y"
#line 191
9
"parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
418
:
case
418
:
#line 19
19
"parse.y"
#line 19
21
"parse.y"
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
419
:
case
419
:
#line 192
4
"parse.y"
#line 192
6
"parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
420
:
case
420
:
#line 192
6
"parse.y"
#line 192
8
"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
421
:
case
421
:
#line 19
28
"parse.y"
#line 19
30
"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
422
:
case
422
:
#line 193
0
"parse.y"
#line 193
2
"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
423
:
case
423
:
#line 193
2
"parse.y"
#line 193
4
"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
428
:
case
428
:
#line 19
48
"parse.y"
#line 19
50
"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
429
:
case
429
:
#line 195
0
"parse.y"
#line 195
2
"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
430
:
case
430
:
#line 195
5
"parse.y"
#line 195
7
"parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
431
:
case
431
:
#line 195
7
"parse.y"
#line 195
9
"parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
433
:
case
433
:
#line 196
5
"parse.y"
#line 196
7
"parse.y"
{
yyval
.
ttype
=
build_nt
(
CONSTRUCTOR
,
NULL_TREE
,
NULL_TREE
);
{
yyval
.
ttype
=
build_nt
(
CONSTRUCTOR
,
NULL_TREE
,
NULL_TREE
);
TREE_HAS_CONSTRUCTOR
(
yyval
.
ttype
)
=
1
;
;
TREE_HAS_CONSTRUCTOR
(
yyval
.
ttype
)
=
1
;
;
break
;}
break
;}
case
434
:
case
434
:
#line 19
68
"parse.y"
#line 19
70
"parse.y"
{
yyval
.
ttype
=
build_nt
(
CONSTRUCTOR
,
NULL_TREE
,
nreverse
(
yyvsp
[
-
1
].
ttype
));
{
yyval
.
ttype
=
build_nt
(
CONSTRUCTOR
,
NULL_TREE
,
nreverse
(
yyvsp
[
-
1
].
ttype
));
TREE_HAS_CONSTRUCTOR
(
yyval
.
ttype
)
=
1
;
;
TREE_HAS_CONSTRUCTOR
(
yyval
.
ttype
)
=
1
;
;
break
;}
break
;}
case
435
:
case
435
:
#line 197
1
"parse.y"
#line 197
3
"parse.y"
{
yyval
.
ttype
=
build_nt
(
CONSTRUCTOR
,
NULL_TREE
,
nreverse
(
yyvsp
[
-
2
].
ttype
));
{
yyval
.
ttype
=
build_nt
(
CONSTRUCTOR
,
NULL_TREE
,
nreverse
(
yyvsp
[
-
2
].
ttype
));
TREE_HAS_CONSTRUCTOR
(
yyval
.
ttype
)
=
1
;
;
TREE_HAS_CONSTRUCTOR
(
yyval
.
ttype
)
=
1
;
;
break
;}
break
;}
case
436
:
case
436
:
#line 197
4
"parse.y"
#line 197
6
"parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
437
:
case
437
:
#line 198
1
"parse.y"
#line 198
3
"parse.y"
{
yyval
.
ttype
=
build_tree_list
(
NULL_TREE
,
yyval
.
ttype
);
;
{
yyval
.
ttype
=
build_tree_list
(
NULL_TREE
,
yyval
.
ttype
);
;
break
;}
break
;}
case
438
:
case
438
:
#line 198
3
"parse.y"
#line 198
5
"parse.y"
{
yyval
.
ttype
=
expr_tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyval
.
ttype
);
;
{
yyval
.
ttype
=
expr_tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyval
.
ttype
);
;
break
;}
break
;}
case
439
:
case
439
:
#line 198
6
"parse.y"
#line 198
8
"parse.y"
{
yyval
.
ttype
=
build_expr_list
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
build_expr_list
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
440
:
case
440
:
#line 19
88
"parse.y"
#line 19
90
"parse.y"
{
yyval
.
ttype
=
build_expr_list
(
yyval
.
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
build_expr_list
(
yyval
.
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
441
:
case
441
:
#line 199
0
"parse.y"
#line 199
2
"parse.y"
{
yyval
.
ttype
=
expr_tree_cons
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
,
yyval
.
ttype
);
;
{
yyval
.
ttype
=
expr_tree_cons
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
,
yyval
.
ttype
);
;
break
;}
break
;}
case
442
:
case
442
:
#line 199
5
"parse.y"
#line 199
7
"parse.y"
{
start_function
(
NULL_TREE
,
TREE_VALUE
(
yyvsp
[
0
].
ttype
),
{
start_function
(
NULL_TREE
,
TREE_VALUE
(
yyvsp
[
0
].
ttype
),
NULL_TREE
,
1
);
NULL_TREE
,
1
);
reinit_parse_for_function
();
;
reinit_parse_for_function
();
;
break
;}
break
;}
case
443
:
case
443
:
#line 200
1
"parse.y"
#line 200
3
"parse.y"
{
{
int
nested
=
(
hack_decl_function_context
int
nested
=
(
hack_decl_function_context
(
current_function_decl
)
!=
NULL_TREE
);
(
current_function_decl
)
!=
NULL_TREE
);
...
@@ -5844,82 +5844,82 @@ case 443:
...
@@ -5844,82 +5844,82 @@ case 443:
;
;
break
;}
break
;}
case
444
:
case
444
:
#line 20
08
"parse.y"
#line 20
10
"parse.y"
{
process_next_inline
(
yyvsp
[
-
2
].
ttype
);
;
{
process_next_inline
(
yyvsp
[
-
2
].
ttype
);
;
break
;}
break
;}
case
445
:
case
445
:
#line 201
0
"parse.y"
#line 201
2
"parse.y"
{
process_next_inline
(
yyvsp
[
-
2
].
ttype
);
;
{
process_next_inline
(
yyvsp
[
-
2
].
ttype
);
;
break
;}
break
;}
case
448
:
case
448
:
#line 202
2
"parse.y"
#line 202
4
"parse.y"
{
replace_defarg
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
replace_defarg
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
449
:
case
449
:
#line 202
4
"parse.y"
#line 202
6
"parse.y"
{
replace_defarg
(
yyvsp
[
-
2
].
ttype
,
error_mark_node
);
;
{
replace_defarg
(
yyvsp
[
-
2
].
ttype
,
error_mark_node
);
;
break
;}
break
;}
case
451
:
case
451
:
#line 20
29
"parse.y"
#line 20
31
"parse.y"
{
do_pending_defargs
();
;
{
do_pending_defargs
();
;
break
;}
break
;}
case
452
:
case
452
:
#line 203
1
"parse.y"
#line 203
3
"parse.y"
{
do_pending_defargs
();
;
{
do_pending_defargs
();
;
break
;}
break
;}
case
453
:
case
453
:
#line 203
6
"parse.y"
#line 203
8
"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
454
:
case
454
:
#line 20
39
"parse.y"
#line 20
41
"parse.y"
{
yyval
.
ftype
.
t
=
finish_enum
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
2
].
ttype
);
{
yyval
.
ftype
.
t
=
finish_enum
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
2
].
ttype
);
yyval
.
ftype
.
new_type_flag
=
1
;
yyval
.
ftype
.
new_type_flag
=
1
;
resume_momentary
((
int
)
yyvsp
[
-
4
].
itype
);
resume_momentary
((
int
)
yyvsp
[
-
4
].
itype
);
check_for_missing_semicolon
(
yyvsp
[
-
3
].
ttype
);
;
check_for_missing_semicolon
(
yyvsp
[
-
3
].
ttype
);
;
break
;}
break
;}
case
455
:
case
455
:
#line 204
4
"parse.y"
#line 204
6
"parse.y"
{
yyval
.
ftype
.
t
=
finish_enum
(
start_enum
(
yyvsp
[
-
2
].
ttype
),
NULL_TREE
);
{
yyval
.
ftype
.
t
=
finish_enum
(
start_enum
(
yyvsp
[
-
2
].
ttype
),
NULL_TREE
);
yyval
.
ftype
.
new_type_flag
=
1
;
yyval
.
ftype
.
new_type_flag
=
1
;
check_for_missing_semicolon
(
yyval
.
ftype
.
t
);
;
check_for_missing_semicolon
(
yyval
.
ftype
.
t
);
;
break
;}
break
;}
case
456
:
case
456
:
#line 20
48
"parse.y"
#line 20
50
"parse.y"
{
yyvsp
[
0
].
itype
=
suspend_momentary
();
{
yyvsp
[
0
].
itype
=
suspend_momentary
();
yyval
.
ttype
=
start_enum
(
make_anon_name
());
;
yyval
.
ttype
=
start_enum
(
make_anon_name
());
;
break
;}
break
;}
case
457
:
case
457
:
#line 205
1
"parse.y"
#line 205
3
"parse.y"
{
yyval
.
ftype
.
t
=
finish_enum
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
2
].
ttype
);
{
yyval
.
ftype
.
t
=
finish_enum
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
2
].
ttype
);
resume_momentary
((
int
)
yyvsp
[
-
5
].
itype
);
resume_momentary
((
int
)
yyvsp
[
-
5
].
itype
);
check_for_missing_semicolon
(
yyvsp
[
-
3
].
ttype
);
check_for_missing_semicolon
(
yyvsp
[
-
3
].
ttype
);
yyval
.
ftype
.
new_type_flag
=
1
;
;
yyval
.
ftype
.
new_type_flag
=
1
;
;
break
;}
break
;}
case
458
:
case
458
:
#line 205
6
"parse.y"
#line 205
8
"parse.y"
{
yyval
.
ftype
.
t
=
finish_enum
(
start_enum
(
make_anon_name
()),
NULL_TREE
);
{
yyval
.
ftype
.
t
=
finish_enum
(
start_enum
(
make_anon_name
()),
NULL_TREE
);
yyval
.
ftype
.
new_type_flag
=
1
;
yyval
.
ftype
.
new_type_flag
=
1
;
check_for_missing_semicolon
(
yyval
.
ftype
.
t
);
;
check_for_missing_semicolon
(
yyval
.
ftype
.
t
);
;
break
;}
break
;}
case
459
:
case
459
:
#line 206
0
"parse.y"
#line 206
2
"parse.y"
{
yyval
.
ftype
.
t
=
xref_tag
(
enum_type_node
,
yyvsp
[
0
].
ttype
,
NULL_TREE
,
1
);
{
yyval
.
ftype
.
t
=
xref_tag
(
enum_type_node
,
yyvsp
[
0
].
ttype
,
NULL_TREE
,
1
);
yyval
.
ftype
.
new_type_flag
=
0
;
;
yyval
.
ftype
.
new_type_flag
=
0
;
;
break
;}
break
;}
case
460
:
case
460
:
#line 206
3
"parse.y"
#line 206
5
"parse.y"
{
yyval
.
ftype
.
t
=
xref_tag
(
enum_type_node
,
yyvsp
[
0
].
ttype
,
NULL_TREE
,
1
);
{
yyval
.
ftype
.
t
=
xref_tag
(
enum_type_node
,
yyvsp
[
0
].
ttype
,
NULL_TREE
,
1
);
yyval
.
ftype
.
new_type_flag
=
0
;
;
yyval
.
ftype
.
new_type_flag
=
0
;
;
break
;}
break
;}
case
461
:
case
461
:
#line 206
6
"parse.y"
#line 206
8
"parse.y"
{
yyval
.
ftype
.
t
=
yyvsp
[
0
].
ttype
;
{
yyval
.
ftype
.
t
=
yyvsp
[
0
].
ttype
;
yyval
.
ftype
.
new_type_flag
=
0
;
;
yyval
.
ftype
.
new_type_flag
=
0
;
;
break
;}
break
;}
case
462
:
case
462
:
#line 207
1
"parse.y"
#line 207
3
"parse.y"
{
{
int
semi
;
int
semi
;
...
@@ -5931,17 +5931,17 @@ case 462:
...
@@ -5931,17 +5931,17 @@ case 462:
;
;
break
;}
break
;}
case
463
:
case
463
:
#line 208
1
"parse.y"
#line 208
3
"parse.y"
{
finish_default_args
();
;
{
finish_default_args
();
;
break
;}
break
;}
case
464
:
case
464
:
#line 208
3
"parse.y"
#line 208
5
"parse.y"
{
yyval
.
ftype
.
t
=
yyvsp
[
-
3
].
ttype
;
{
yyval
.
ftype
.
t
=
yyvsp
[
-
3
].
ttype
;
yyval
.
ftype
.
new_type_flag
=
1
;
yyval
.
ftype
.
new_type_flag
=
1
;
begin_inline_definitions
();
;
begin_inline_definitions
();
;
break
;}
break
;}
case
465
:
case
465
:
#line 208
7
"parse.y"
#line 208
9
"parse.y"
{
{
yyval
.
ftype
.
new_type_flag
=
0
;
yyval
.
ftype
.
new_type_flag
=
0
;
if
(
TYPE_BINFO
(
yyvsp
[
0
].
ttype
)
==
NULL_TREE
)
if
(
TYPE_BINFO
(
yyvsp
[
0
].
ttype
)
==
NULL_TREE
)
...
@@ -5961,85 +5961,85 @@ case 465:
...
@@ -5961,85 +5961,85 @@ case 465:
;
;
break
;}
break
;}
case
469
:
case
469
:
#line 211
4
"parse.y"
#line 211
6
"parse.y"
{
if
(
pedantic
&&
!
in_system_header
)
{
if
(
pedantic
&&
!
in_system_header
)
pedwarn
(
"comma at end of enumerator list"
);
;
pedwarn
(
"comma at end of enumerator list"
);
;
break
;}
break
;}
case
471
:
case
471
:
#line 212
1
"parse.y"
#line 212
3
"parse.y"
{
error
(
"storage class specifier `%s' not allowed after struct or class"
,
IDENTIFIER_POINTER
(
yyvsp
[
0
].
ttype
));
;
{
error
(
"storage class specifier `%s' not allowed after struct or class"
,
IDENTIFIER_POINTER
(
yyvsp
[
0
].
ttype
));
;
break
;}
break
;}
case
472
:
case
472
:
#line 212
3
"parse.y"
#line 212
5
"parse.y"
{
error
(
"type specifier `%s' not allowed after struct or class"
,
IDENTIFIER_POINTER
(
yyvsp
[
0
].
ttype
));
;
{
error
(
"type specifier `%s' not allowed after struct or class"
,
IDENTIFIER_POINTER
(
yyvsp
[
0
].
ttype
));
;
break
;}
break
;}
case
473
:
case
473
:
#line 212
5
"parse.y"
#line 212
7
"parse.y"
{
error
(
"type qualifier `%s' not allowed after struct or class"
,
IDENTIFIER_POINTER
(
yyvsp
[
0
].
ttype
));
;
{
error
(
"type qualifier `%s' not allowed after struct or class"
,
IDENTIFIER_POINTER
(
yyvsp
[
0
].
ttype
));
;
break
;}
break
;}
case
474
:
case
474
:
#line 212
7
"parse.y"
#line 212
9
"parse.y"
{
error
(
"no body nor ';' separates two class, struct or union declarations"
);
;
{
error
(
"no body nor ';' separates two class, struct or union declarations"
);
;
break
;}
break
;}
case
475
:
case
475
:
#line 21
29
"parse.y"
#line 21
31
"parse.y"
{
yyval
.
ttype
=
build_decl_list
(
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
build_decl_list
(
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
476
:
case
476
:
#line 213
4
"parse.y"
#line 213
6
"parse.y"
{
current_aggr
=
yyval
.
ttype
;
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
current_aggr
=
yyval
.
ttype
;
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
477
:
case
477
:
#line 21
39
"parse.y"
#line 21
41
"parse.y"
{
current_aggr
=
yyval
.
ttype
;
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
current_aggr
=
yyval
.
ttype
;
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
478
:
case
478
:
#line 214
1
"parse.y"
#line 214
3
"parse.y"
{
yyungetc
(
'{'
,
1
);
;
{
yyungetc
(
'{'
,
1
);
;
break
;}
break
;}
case
479
:
case
479
:
#line 214
3
"parse.y"
#line 214
5
"parse.y"
{
yyungetc
(
':'
,
1
);
;
{
yyungetc
(
':'
,
1
);
;
break
;}
break
;}
case
480
:
case
480
:
#line 21
48
"parse.y"
#line 21
50
"parse.y"
{
{
current_aggr
=
yyvsp
[
-
2
].
ttype
;
current_aggr
=
yyvsp
[
-
2
].
ttype
;
yyval
.
ttype
=
handle_class_head
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
yyval
.
ttype
=
handle_class_head
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
;
break
;}
break
;}
case
481
:
case
481
:
#line 215
3
"parse.y"
#line 215
5
"parse.y"
{
{
current_aggr
=
yyvsp
[
-
3
].
ttype
;
current_aggr
=
yyvsp
[
-
3
].
ttype
;
yyval
.
ttype
=
handle_class_head
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
yyval
.
ttype
=
handle_class_head
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
;
break
;}
break
;}
case
482
:
case
482
:
#line 21
58
"parse.y"
#line 21
60
"parse.y"
{
{
current_aggr
=
yyvsp
[
-
2
].
ttype
;
current_aggr
=
yyvsp
[
-
2
].
ttype
;
yyval
.
ttype
=
handle_class_head
(
yyvsp
[
-
2
].
ttype
,
NULL_TREE
,
yyvsp
[
0
].
ttype
);
yyval
.
ttype
=
handle_class_head
(
yyvsp
[
-
2
].
ttype
,
NULL_TREE
,
yyvsp
[
0
].
ttype
);
;
;
break
;}
break
;}
case
483
:
case
483
:
#line 216
3
"parse.y"
#line 216
5
"parse.y"
{
current_aggr
=
yyval
.
ttype
;
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
current_aggr
=
yyval
.
ttype
;
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
484
:
case
484
:
#line 216
5
"parse.y"
#line 216
7
"parse.y"
{
current_aggr
=
yyval
.
ttype
;
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
current_aggr
=
yyval
.
ttype
;
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
485
:
case
485
:
#line 217
0
"parse.y"
#line 217
2
"parse.y"
{
yyval
.
ttype
=
xref_tag
(
current_aggr
,
yyvsp
[
0
].
ttype
,
NULL_TREE
,
0
);
;
{
yyval
.
ttype
=
xref_tag
(
current_aggr
,
yyvsp
[
0
].
ttype
,
NULL_TREE
,
0
);
;
break
;}
break
;}
case
486
:
case
486
:
#line 217
5
"parse.y"
#line 217
7
"parse.y"
{
yyval
.
ttype
=
xref_tag
(
current_aggr
,
yyvsp
[
0
].
ttype
,
NULL_TREE
,
1
);
;
{
yyval
.
ttype
=
xref_tag
(
current_aggr
,
yyvsp
[
0
].
ttype
,
NULL_TREE
,
1
);
;
break
;}
break
;}
case
487
:
case
487
:
#line 21
78
"parse.y"
#line 21
80
"parse.y"
{
{
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
if
(
yyvsp
[
0
].
ttype
)
if
(
yyvsp
[
0
].
ttype
)
...
@@ -6047,7 +6047,7 @@ case 487:
...
@@ -6047,7 +6047,7 @@ case 487:
;
;
break
;}
break
;}
case
488
:
case
488
:
#line 218
4
"parse.y"
#line 218
6
"parse.y"
{
{
yyval
.
ttype
=
TREE_TYPE
(
yyvsp
[
-
1
].
ttype
);
yyval
.
ttype
=
TREE_TYPE
(
yyvsp
[
-
1
].
ttype
);
if
(
TREE_INT_CST_LOW
(
current_aggr
)
==
union_type
if
(
TREE_INT_CST_LOW
(
current_aggr
)
==
union_type
...
@@ -6075,28 +6075,28 @@ case 488:
...
@@ -6075,28 +6075,28 @@ case 488:
;
;
break
;}
break
;}
case
489
:
case
489
:
#line 221
3
"parse.y"
#line 221
5
"parse.y"
{
yyval
.
ttype
=
xref_tag
(
yyval
.
ttype
,
make_anon_name
(),
NULL_TREE
,
0
);
{
yyval
.
ttype
=
xref_tag
(
yyval
.
ttype
,
make_anon_name
(),
NULL_TREE
,
0
);
yyungetc
(
'{'
,
1
);
;
yyungetc
(
'{'
,
1
);
;
break
;}
break
;}
case
492
:
case
492
:
#line 222
4
"parse.y"
#line 222
6
"parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
493
:
case
493
:
#line 222
6
"parse.y"
#line 222
8
"parse.y"
{
yyungetc
(
':'
,
1
);
yyval
.
ttype
=
NULL_TREE
;
;
{
yyungetc
(
':'
,
1
);
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
494
:
case
494
:
#line 22
28
"parse.y"
#line 22
30
"parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
496
:
case
496
:
#line 223
4
"parse.y"
#line 223
6
"parse.y"
{
yyval
.
ttype
=
chainon
(
yyval
.
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
chainon
(
yyval
.
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
497
:
case
497
:
#line 22
39
"parse.y"
#line 22
41
"parse.y"
{
{
tree
type
;
tree
type
;
if
(
yyvsp
[
0
].
ttype
==
NULL_TREE
)
if
(
yyvsp
[
0
].
ttype
==
NULL_TREE
)
...
@@ -6130,7 +6130,7 @@ case 497:
...
@@ -6130,7 +6130,7 @@ case 497:
;
;
break
;}
break
;}
case
498
:
case
498
:
#line 227
1
"parse.y"
#line 227
3
"parse.y"
{
{
tree
type
;
tree
type
;
if
(
yyvsp
[
0
].
ttype
==
NULL_TREE
)
if
(
yyvsp
[
0
].
ttype
==
NULL_TREE
)
...
@@ -6166,11 +6166,11 @@ case 498:
...
@@ -6166,11 +6166,11 @@ case 498:
;
;
break
;}
break
;}
case
499
:
case
499
:
#line 23
08
"parse.y"
#line 23
10
"parse.y"
{
yyval
.
ttype
=
TYPE_MAIN_DECL
(
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
TYPE_MAIN_DECL
(
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
501
:
case
501
:
#line 231
1
"parse.y"
#line 231
3
"parse.y"
{
{
if
(
current_aggr
==
signature_type_node
)
if
(
current_aggr
==
signature_type_node
)
{
{
...
@@ -6193,7 +6193,7 @@ case 501:
...
@@ -6193,7 +6193,7 @@ case 501:
;
;
break
;}
break
;}
case
502
:
case
502
:
#line 233
2
"parse.y"
#line 233
4
"parse.y"
{
{
if
(
current_aggr
==
signature_type_node
)
if
(
current_aggr
==
signature_type_node
)
{
{
...
@@ -6216,13 +6216,13 @@ case 502:
...
@@ -6216,13 +6216,13 @@ case 502:
;
;
break
;}
break
;}
case
504
:
case
504
:
#line 235
7
"parse.y"
#line 235
9
"parse.y"
{
if
(
yyvsp
[
-
1
].
ttype
!=
ridpointers
[(
int
)
RID_VIRTUAL
])
{
if
(
yyvsp
[
-
1
].
ttype
!=
ridpointers
[(
int
)
RID_VIRTUAL
])
cp_error
(
"`%D' access"
,
yyvsp
[
-
1
].
ttype
);
cp_error
(
"`%D' access"
,
yyvsp
[
-
1
].
ttype
);
yyval
.
ttype
=
access_default_virtual_node
;
;
yyval
.
ttype
=
access_default_virtual_node
;
;
break
;}
break
;}
case
505
:
case
505
:
#line 236
1
"parse.y"
#line 236
3
"parse.y"
{
{
if
(
yyvsp
[
-
2
].
ttype
!=
access_default_virtual_node
)
if
(
yyvsp
[
-
2
].
ttype
!=
access_default_virtual_node
)
error
(
"multiple access specifiers"
);
error
(
"multiple access specifiers"
);
...
@@ -6235,7 +6235,7 @@ case 505:
...
@@ -6235,7 +6235,7 @@ case 505:
;
;
break
;}
break
;}
case
506
:
case
506
:
#line 237
2
"parse.y"
#line 237
4
"parse.y"
{
if
(
yyvsp
[
-
1
].
ttype
!=
ridpointers
[(
int
)
RID_VIRTUAL
])
{
if
(
yyvsp
[
-
1
].
ttype
!=
ridpointers
[(
int
)
RID_VIRTUAL
])
cp_error
(
"`%D' access"
,
yyvsp
[
-
1
].
ttype
);
cp_error
(
"`%D' access"
,
yyvsp
[
-
1
].
ttype
);
else
if
(
yyval
.
ttype
==
access_public_node
)
else
if
(
yyval
.
ttype
==
access_public_node
)
...
@@ -6249,21 +6249,21 @@ case 506:
...
@@ -6249,21 +6249,21 @@ case 506:
;
;
break
;}
break
;}
case
507
:
case
507
:
#line 238
7
"parse.y"
#line 238
9
"parse.y"
{
yyvsp
[
-
1
].
ttype
=
begin_class_definition
(
yyvsp
[
-
1
].
ttype
);
;
{
yyvsp
[
-
1
].
ttype
=
begin_class_definition
(
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
508
:
case
508
:
#line 239
2
"parse.y"
#line 239
4
"parse.y"
{
{
yyval
.
ttype
=
build_self_reference
();
yyval
.
ttype
=
build_self_reference
();
;
;
break
;}
break
;}
case
509
:
case
509
:
#line 2
399
"parse.y"
#line 2
401
"parse.y"
{
if
(
yyval
.
ttype
)
yyval
.
ttype
=
build_tree_list
(
access_public_node
,
yyval
.
ttype
);
;
{
if
(
yyval
.
ttype
)
yyval
.
ttype
=
build_tree_list
(
access_public_node
,
yyval
.
ttype
);
;
break
;}
break
;}
case
510
:
case
510
:
#line 240
1
"parse.y"
#line 240
3
"parse.y"
{
{
if
(
current_aggr
==
signature_type_node
)
if
(
current_aggr
==
signature_type_node
)
yyval
.
ttype
=
build_tree_list
(
access_public_node
,
yyvsp
[
0
].
ttype
);
yyval
.
ttype
=
build_tree_list
(
access_public_node
,
yyvsp
[
0
].
ttype
);
...
@@ -6273,7 +6273,7 @@ case 510:
...
@@ -6273,7 +6273,7 @@ case 510:
;
;
break
;}
break
;}
case
511
:
case
511
:
#line 24
09
"parse.y"
#line 24
11
"parse.y"
{
{
tree
visspec
=
yyvsp
[
-
2
].
ttype
;
tree
visspec
=
yyvsp
[
-
2
].
ttype
;
...
@@ -6286,19 +6286,19 @@ case 511:
...
@@ -6286,19 +6286,19 @@ case 511:
;
;
break
;}
break
;}
case
512
:
case
512
:
#line 242
0
"parse.y"
#line 242
2
"parse.y"
{
{
if
(
current_aggr
==
signature_type_node
)
if
(
current_aggr
==
signature_type_node
)
error
(
"access specifier not allowed in signature"
);
error
(
"access specifier not allowed in signature"
);
;
;
break
;}
break
;}
case
513
:
case
513
:
#line 243
0
"parse.y"
#line 243
2
"parse.y"
{
if
(
yyval
.
ttype
==
void_type_node
)
yyval
.
ttype
=
NULL_TREE
;
{
if
(
yyval
.
ttype
==
void_type_node
)
yyval
.
ttype
=
NULL_TREE
;
;
;
break
;}
break
;}
case
514
:
case
514
:
#line 243
3
"parse.y"
#line 243
5
"parse.y"
{
/* In pushdecl, we created a reverse list of names
{
/* In pushdecl, we created a reverse list of names
in this binding level. Make sure that the chain
in this binding level. Make sure that the chain
of what we're trying to add isn't the item itself
of what we're trying to add isn't the item itself
...
@@ -6313,95 +6313,95 @@ case 514:
...
@@ -6313,95 +6313,95 @@ case 514:
;
;
break
;}
break
;}
case
515
:
case
515
:
#line 24
49
"parse.y"
#line 24
51
"parse.y"
{
;
{
;
break
;}
break
;}
case
516
:
case
516
:
#line 245
1
"parse.y"
#line 245
3
"parse.y"
{
error
(
"missing ';' before right brace"
);
{
error
(
"missing ';' before right brace"
);
yyungetc
(
'}'
,
0
);
;
yyungetc
(
'}'
,
0
);
;
break
;}
break
;}
case
517
:
case
517
:
#line 245
6
"parse.y"
#line 245
8
"parse.y"
{
yyval
.
ttype
=
finish_method
(
yyval
.
ttype
);
;
{
yyval
.
ttype
=
finish_method
(
yyval
.
ttype
);
;
break
;}
break
;}
case
518
:
case
518
:
#line 24
58
"parse.y"
#line 24
60
"parse.y"
{
yyval
.
ttype
=
finish_method
(
yyval
.
ttype
);
;
{
yyval
.
ttype
=
finish_method
(
yyval
.
ttype
);
;
break
;}
break
;}
case
519
:
case
519
:
#line 246
0
"parse.y"
#line 246
2
"parse.y"
{
yyval
.
ttype
=
finish_method
(
yyval
.
ttype
);
;
{
yyval
.
ttype
=
finish_method
(
yyval
.
ttype
);
;
break
;}
break
;}
case
520
:
case
520
:
#line 246
2
"parse.y"
#line 246
4
"parse.y"
{
yyval
.
ttype
=
finish_method
(
yyval
.
ttype
);
;
{
yyval
.
ttype
=
finish_method
(
yyval
.
ttype
);
;
break
;}
break
;}
case
521
:
case
521
:
#line 246
4
"parse.y"
#line 246
6
"parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
522
:
case
522
:
#line 246
6
"parse.y"
#line 246
8
"parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
pedantic
=
yyvsp
[
-
1
].
itype
;
;
pedantic
=
yyvsp
[
-
1
].
itype
;
;
break
;}
break
;}
case
523
:
case
523
:
#line 24
69
"parse.y"
#line 24
71
"parse.y"
{
yyval
.
ttype
=
finish_member_template_decl
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
finish_member_template_decl
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
524
:
case
524
:
#line 247
1
"parse.y"
#line 247
3
"parse.y"
{
yyval
.
ttype
=
finish_member_class_template
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
-
1
].
ftype
.
t
);
;
{
yyval
.
ttype
=
finish_member_class_template
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
-
1
].
ftype
.
t
);
;
break
;}
break
;}
case
525
:
case
525
:
#line 24
79
"parse.y"
#line 24
81
"parse.y"
{
yyval
.
ttype
=
grok_x_components
(
yyvsp
[
-
1
].
ftype
.
t
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
grok_x_components
(
yyvsp
[
-
1
].
ftype
.
t
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
526
:
case
526
:
#line 248
1
"parse.y"
#line 248
3
"parse.y"
{
yyval
.
ttype
=
grok_x_components
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
grok_x_components
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
527
:
case
527
:
#line 248
3
"parse.y"
#line 248
5
"parse.y"
{
yyval
.
ttype
=
grokfield
(
yyval
.
ttype
,
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
2
].
ttype
,
{
yyval
.
ttype
=
grokfield
(
yyval
.
ttype
,
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
2
].
ttype
,
build_tree_list
(
yyvsp
[
-
1
].
ttype
,
NULL_TREE
));
;
build_tree_list
(
yyvsp
[
-
1
].
ttype
,
NULL_TREE
));
;
break
;}
break
;}
case
528
:
case
528
:
#line 248
6
"parse.y"
#line 248
8
"parse.y"
{
yyval
.
ttype
=
grokfield
(
yyval
.
ttype
,
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
2
].
ttype
,
{
yyval
.
ttype
=
grokfield
(
yyval
.
ttype
,
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
2
].
ttype
,
build_tree_list
(
yyvsp
[
-
1
].
ttype
,
NULL_TREE
));
;
build_tree_list
(
yyvsp
[
-
1
].
ttype
,
NULL_TREE
));
;
break
;}
break
;}
case
529
:
case
529
:
#line 24
89
"parse.y"
#line 24
91
"parse.y"
{
yyval
.
ttype
=
grokbitfield
(
NULL_TREE
,
NULL_TREE
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
grokbitfield
(
NULL_TREE
,
NULL_TREE
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
530
:
case
530
:
#line 249
1
"parse.y"
#line 249
3
"parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
531
:
case
531
:
#line 250
2
"parse.y"
#line 250
4
"parse.y"
{
tree
specs
,
attrs
;
{
tree
specs
,
attrs
;
split_specs_attrs
(
yyvsp
[
-
4
].
ttype
,
&
specs
,
&
attrs
);
split_specs_attrs
(
yyvsp
[
-
4
].
ttype
,
&
specs
,
&
attrs
);
yyval
.
ttype
=
grokfield
(
yyvsp
[
-
3
].
ttype
,
specs
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
2
].
ttype
,
yyval
.
ttype
=
grokfield
(
yyvsp
[
-
3
].
ttype
,
specs
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
2
].
ttype
,
build_tree_list
(
yyvsp
[
-
1
].
ttype
,
attrs
));
;
build_tree_list
(
yyvsp
[
-
1
].
ttype
,
attrs
));
;
break
;}
break
;}
case
532
:
case
532
:
#line 250
7
"parse.y"
#line 250
9
"parse.y"
{
yyval
.
ttype
=
grokfield
(
yyval
.
ttype
,
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
2
].
ttype
,
{
yyval
.
ttype
=
grokfield
(
yyval
.
ttype
,
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
2
].
ttype
,
build_tree_list
(
yyvsp
[
-
1
].
ttype
,
NULL_TREE
));
;
build_tree_list
(
yyvsp
[
-
1
].
ttype
,
NULL_TREE
));
;
break
;}
break
;}
case
533
:
case
533
:
#line 251
0
"parse.y"
#line 251
2
"parse.y"
{
yyval
.
ttype
=
do_class_using_decl
(
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
do_class_using_decl
(
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
534
:
case
534
:
#line 251
6
"parse.y"
#line 251
8
"parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
536
:
case
536
:
#line 25
19
"parse.y"
#line 25
21
"parse.y"
{
{
/* In this context, void_type_node encodes
/* In this context, void_type_node encodes
friends. They have been recorded elsewhere. */
friends. They have been recorded elsewhere. */
...
@@ -6412,11 +6412,11 @@ case 536:
...
@@ -6412,11 +6412,11 @@ case 536:
;
;
break
;}
break
;}
case
537
:
case
537
:
#line 253
1
"parse.y"
#line 253
3
"parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
539
:
case
539
:
#line 253
4
"parse.y"
#line 253
6
"parse.y"
{
{
/* In this context, void_type_node encodes
/* In this context, void_type_node encodes
friends. They have been recorded elsewhere. */
friends. They have been recorded elsewhere. */
...
@@ -6427,7 +6427,7 @@ case 539:
...
@@ -6427,7 +6427,7 @@ case 539:
;
;
break
;}
break
;}
case
544
:
case
544
:
#line 255
6
"parse.y"
#line 255
8
"parse.y"
{
split_specs_attrs
(
yyvsp
[
-
4
].
ttype
,
&
current_declspecs
,
{
split_specs_attrs
(
yyvsp
[
-
4
].
ttype
,
&
current_declspecs
,
&
prefix_attributes
);
&
prefix_attributes
);
yyvsp
[
-
4
].
ttype
=
current_declspecs
;
yyvsp
[
-
4
].
ttype
=
current_declspecs
;
...
@@ -6435,7 +6435,7 @@ case 544:
...
@@ -6435,7 +6435,7 @@ case 544:
build_tree_list
(
yyvsp
[
-
1
].
ttype
,
prefix_attributes
));
;
build_tree_list
(
yyvsp
[
-
1
].
ttype
,
prefix_attributes
));
;
break
;}
break
;}
case
545
:
case
545
:
#line 256
2
"parse.y"
#line 256
4
"parse.y"
{
split_specs_attrs
(
yyvsp
[
-
4
].
ttype
,
&
current_declspecs
,
{
split_specs_attrs
(
yyvsp
[
-
4
].
ttype
,
&
current_declspecs
,
&
prefix_attributes
);
&
prefix_attributes
);
yyvsp
[
-
4
].
ttype
=
current_declspecs
;
yyvsp
[
-
4
].
ttype
=
current_declspecs
;
...
@@ -6443,7 +6443,7 @@ case 545:
...
@@ -6443,7 +6443,7 @@ case 545:
cplus_decl_attributes
(
yyval
.
ttype
,
yyvsp
[
0
].
ttype
,
prefix_attributes
);
;
cplus_decl_attributes
(
yyval
.
ttype
,
yyvsp
[
0
].
ttype
,
prefix_attributes
);
;
break
;}
break
;}
case
546
:
case
546
:
#line 257
1
"parse.y"
#line 257
3
"parse.y"
{
split_specs_attrs
(
yyvsp
[
-
4
].
ttype
,
&
current_declspecs
,
{
split_specs_attrs
(
yyvsp
[
-
4
].
ttype
,
&
current_declspecs
,
&
prefix_attributes
);
&
prefix_attributes
);
yyvsp
[
-
4
].
ttype
=
current_declspecs
;
yyvsp
[
-
4
].
ttype
=
current_declspecs
;
...
@@ -6451,7 +6451,7 @@ case 546:
...
@@ -6451,7 +6451,7 @@ case 546:
build_tree_list
(
yyvsp
[
-
1
].
ttype
,
prefix_attributes
));
;
build_tree_list
(
yyvsp
[
-
1
].
ttype
,
prefix_attributes
));
;
break
;}
break
;}
case
547
:
case
547
:
#line 257
7
"parse.y"
#line 257
9
"parse.y"
{
split_specs_attrs
(
yyvsp
[
-
4
].
ttype
,
&
current_declspecs
,
{
split_specs_attrs
(
yyvsp
[
-
4
].
ttype
,
&
current_declspecs
,
&
prefix_attributes
);
&
prefix_attributes
);
yyvsp
[
-
4
].
ttype
=
current_declspecs
;
yyvsp
[
-
4
].
ttype
=
current_declspecs
;
...
@@ -6459,7 +6459,7 @@ case 547:
...
@@ -6459,7 +6459,7 @@ case 547:
build_tree_list
(
yyvsp
[
-
1
].
ttype
,
prefix_attributes
));
;
build_tree_list
(
yyvsp
[
-
1
].
ttype
,
prefix_attributes
));
;
break
;}
break
;}
case
548
:
case
548
:
#line 258
3
"parse.y"
#line 258
5
"parse.y"
{
split_specs_attrs
(
yyvsp
[
-
4
].
ttype
,
&
current_declspecs
,
{
split_specs_attrs
(
yyvsp
[
-
4
].
ttype
,
&
current_declspecs
,
&
prefix_attributes
);
&
prefix_attributes
);
yyvsp
[
-
4
].
ttype
=
current_declspecs
;
yyvsp
[
-
4
].
ttype
=
current_declspecs
;
...
@@ -6467,7 +6467,7 @@ case 548:
...
@@ -6467,7 +6467,7 @@ case 548:
cplus_decl_attributes
(
yyval
.
ttype
,
yyvsp
[
0
].
ttype
,
prefix_attributes
);
;
cplus_decl_attributes
(
yyval
.
ttype
,
yyvsp
[
0
].
ttype
,
prefix_attributes
);
;
break
;}
break
;}
case
549
:
case
549
:
#line 25
89
"parse.y"
#line 25
91
"parse.y"
{
split_specs_attrs
(
yyvsp
[
-
3
].
ttype
,
&
current_declspecs
,
{
split_specs_attrs
(
yyvsp
[
-
3
].
ttype
,
&
current_declspecs
,
&
prefix_attributes
);
&
prefix_attributes
);
yyvsp
[
-
3
].
ttype
=
current_declspecs
;
yyvsp
[
-
3
].
ttype
=
current_declspecs
;
...
@@ -6475,54 +6475,54 @@ case 549:
...
@@ -6475,54 +6475,54 @@ case 549:
cplus_decl_attributes
(
yyval
.
ttype
,
yyvsp
[
0
].
ttype
,
prefix_attributes
);
;
cplus_decl_attributes
(
yyval
.
ttype
,
yyvsp
[
0
].
ttype
,
prefix_attributes
);
;
break
;}
break
;}
case
550
:
case
550
:
#line 2
598
"parse.y"
#line 2
600
"parse.y"
{
yyval
.
ttype
=
grokfield
(
yyval
.
ttype
,
current_declspecs
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
2
].
ttype
,
{
yyval
.
ttype
=
grokfield
(
yyval
.
ttype
,
current_declspecs
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
2
].
ttype
,
build_tree_list
(
yyvsp
[
-
1
].
ttype
,
prefix_attributes
));
;
build_tree_list
(
yyvsp
[
-
1
].
ttype
,
prefix_attributes
));
;
break
;}
break
;}
case
551
:
case
551
:
#line 260
1
"parse.y"
#line 260
3
"parse.y"
{
yyval
.
ttype
=
grokbitfield
(
yyval
.
ttype
,
current_declspecs
,
yyvsp
[
-
1
].
ttype
);
{
yyval
.
ttype
=
grokbitfield
(
yyval
.
ttype
,
current_declspecs
,
yyvsp
[
-
1
].
ttype
);
cplus_decl_attributes
(
yyval
.
ttype
,
yyvsp
[
0
].
ttype
,
prefix_attributes
);
;
cplus_decl_attributes
(
yyval
.
ttype
,
yyvsp
[
0
].
ttype
,
prefix_attributes
);
;
break
;}
break
;}
case
552
:
case
552
:
#line 260
7
"parse.y"
#line 260
9
"parse.y"
{
yyval
.
ttype
=
grokfield
(
yyval
.
ttype
,
current_declspecs
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
2
].
ttype
,
{
yyval
.
ttype
=
grokfield
(
yyval
.
ttype
,
current_declspecs
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
2
].
ttype
,
build_tree_list
(
yyvsp
[
-
1
].
ttype
,
prefix_attributes
));
;
build_tree_list
(
yyvsp
[
-
1
].
ttype
,
prefix_attributes
));
;
break
;}
break
;}
case
553
:
case
553
:
#line 261
0
"parse.y"
#line 261
2
"parse.y"
{
yyval
.
ttype
=
grokbitfield
(
yyval
.
ttype
,
current_declspecs
,
yyvsp
[
-
1
].
ttype
);
{
yyval
.
ttype
=
grokbitfield
(
yyval
.
ttype
,
current_declspecs
,
yyvsp
[
-
1
].
ttype
);
cplus_decl_attributes
(
yyval
.
ttype
,
yyvsp
[
0
].
ttype
,
prefix_attributes
);
;
cplus_decl_attributes
(
yyval
.
ttype
,
yyvsp
[
0
].
ttype
,
prefix_attributes
);
;
break
;}
break
;}
case
554
:
case
554
:
#line 261
3
"parse.y"
#line 261
5
"parse.y"
{
yyval
.
ttype
=
grokbitfield
(
NULL_TREE
,
current_declspecs
,
yyvsp
[
-
1
].
ttype
);
{
yyval
.
ttype
=
grokbitfield
(
NULL_TREE
,
current_declspecs
,
yyvsp
[
-
1
].
ttype
);
cplus_decl_attributes
(
yyval
.
ttype
,
yyvsp
[
0
].
ttype
,
prefix_attributes
);
;
cplus_decl_attributes
(
yyval
.
ttype
,
yyvsp
[
0
].
ttype
,
prefix_attributes
);
;
break
;}
break
;}
case
556
:
case
556
:
#line 262
4
"parse.y"
#line 262
6
"parse.y"
{
TREE_CHAIN
(
yyvsp
[
0
].
ttype
)
=
yyval
.
ttype
;
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
TREE_CHAIN
(
yyvsp
[
0
].
ttype
)
=
yyval
.
ttype
;
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
557
:
case
557
:
#line 26
29
"parse.y"
#line 26
31
"parse.y"
{
yyval
.
ttype
=
build_enumerator
(
yyval
.
ttype
,
NULL_TREE
);
;
{
yyval
.
ttype
=
build_enumerator
(
yyval
.
ttype
,
NULL_TREE
);
;
break
;}
break
;}
case
558
:
case
558
:
#line 263
1
"parse.y"
#line 263
3
"parse.y"
{
yyval
.
ttype
=
build_enumerator
(
yyval
.
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
build_enumerator
(
yyval
.
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
559
:
case
559
:
#line 263
7
"parse.y"
#line 263
9
"parse.y"
{
yyval
.
ftype
.
t
=
build_decl_list
(
yyvsp
[
-
1
].
ftype
.
t
,
yyvsp
[
0
].
ttype
);
{
yyval
.
ftype
.
t
=
build_decl_list
(
yyvsp
[
-
1
].
ftype
.
t
,
yyvsp
[
0
].
ttype
);
yyval
.
ftype
.
new_type_flag
=
yyvsp
[
-
1
].
ftype
.
new_type_flag
;
;
yyval
.
ftype
.
new_type_flag
=
yyvsp
[
-
1
].
ftype
.
new_type_flag
;
;
break
;}
break
;}
case
560
:
case
560
:
#line 264
0
"parse.y"
#line 264
2
"parse.y"
{
yyval
.
ftype
.
t
=
build_decl_list
(
yyvsp
[
0
].
ftype
.
t
,
NULL_TREE
);
{
yyval
.
ftype
.
t
=
build_decl_list
(
yyvsp
[
0
].
ftype
.
t
,
NULL_TREE
);
yyval
.
ftype
.
new_type_flag
=
yyvsp
[
0
].
ftype
.
new_type_flag
;
;
yyval
.
ftype
.
new_type_flag
=
yyvsp
[
0
].
ftype
.
new_type_flag
;
;
break
;}
break
;}
case
561
:
case
561
:
#line 264
7
"parse.y"
#line 264
9
"parse.y"
{
{
if
(
pedantic
)
if
(
pedantic
)
pedwarn
(
"ANSI C++ forbids array dimensions with parenthesized type in new"
);
pedwarn
(
"ANSI C++ forbids array dimensions with parenthesized type in new"
);
...
@@ -6532,71 +6532,71 @@ case 561:
...
@@ -6532,71 +6532,71 @@ case 561:
;
;
break
;}
break
;}
case
562
:
case
562
:
#line 26
58
"parse.y"
#line 26
60
"parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
563
:
case
563
:
#line 266
0
"parse.y"
#line 266
2
"parse.y"
{
yyval
.
ttype
=
decl_tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyval
.
ttype
);
;
{
yyval
.
ttype
=
decl_tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyval
.
ttype
);
;
break
;}
break
;}
case
564
:
case
564
:
#line 266
5
"parse.y"
#line 266
7
"parse.y"
{
yyval
.
ftype
.
t
=
IDENTIFIER_AS_LIST
(
yyvsp
[
0
].
ttype
);
{
yyval
.
ftype
.
t
=
IDENTIFIER_AS_LIST
(
yyvsp
[
0
].
ttype
);
yyval
.
ftype
.
new_type_flag
=
0
;
;
yyval
.
ftype
.
new_type_flag
=
0
;
;
break
;}
break
;}
case
565
:
case
565
:
#line 26
68
"parse.y"
#line 26
70
"parse.y"
{
yyval
.
ftype
.
t
=
decl_tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ftype
.
t
);
{
yyval
.
ftype
.
t
=
decl_tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ftype
.
t
);
yyval
.
ftype
.
new_type_flag
=
yyvsp
[
-
1
].
ftype
.
new_type_flag
;
;
yyval
.
ftype
.
new_type_flag
=
yyvsp
[
-
1
].
ftype
.
new_type_flag
;
;
break
;}
break
;}
case
566
:
case
566
:
#line 267
7
"parse.y"
#line 267
9
"parse.y"
{
yyval
.
itype
=
suspend_momentary
();
;
{
yyval
.
itype
=
suspend_momentary
();
;
break
;}
break
;}
case
567
:
case
567
:
#line 268
2
"parse.y"
#line 268
4
"parse.y"
{
resume_momentary
((
int
)
yyvsp
[
-
1
].
itype
);
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
resume_momentary
((
int
)
yyvsp
[
-
1
].
itype
);
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
568
:
case
568
:
#line 26
88
"parse.y"
#line 26
90
"parse.y"
{
resume_momentary
((
int
)
yyvsp
[
-
3
].
itype
);
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
;
{
resume_momentary
((
int
)
yyvsp
[
-
3
].
itype
);
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
;
break
;}
break
;}
case
569
:
case
569
:
#line 269
0
"parse.y"
#line 269
2
"parse.y"
{
resume_momentary
((
int
)
yyvsp
[
-
3
].
itype
);
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
;
{
resume_momentary
((
int
)
yyvsp
[
-
3
].
itype
);
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
;
break
;}
break
;}
case
570
:
case
570
:
#line 269
2
"parse.y"
#line 269
4
"parse.y"
{
resume_momentary
((
int
)
yyvsp
[
-
1
].
itype
);
yyval
.
ttype
=
empty_parms
();
;
{
resume_momentary
((
int
)
yyvsp
[
-
1
].
itype
);
yyval
.
ttype
=
empty_parms
();
;
break
;}
break
;}
case
571
:
case
571
:
#line 269
4
"parse.y"
#line 269
6
"parse.y"
{
resume_momentary
((
int
)
yyvsp
[
-
3
].
itype
);
yyval
.
ttype
=
NULL_TREE
;
;
{
resume_momentary
((
int
)
yyvsp
[
-
3
].
itype
);
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
572
:
case
572
:
#line 270
1
"parse.y"
#line 270
3
"parse.y"
{
yyval
.
ttype
=
make_pointer_declarator
(
yyvsp
[
-
1
].
ftype
.
t
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
make_pointer_declarator
(
yyvsp
[
-
1
].
ftype
.
t
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
573
:
case
573
:
#line 270
3
"parse.y"
#line 270
5
"parse.y"
{
yyval
.
ttype
=
make_reference_declarator
(
yyvsp
[
-
1
].
ftype
.
t
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
make_reference_declarator
(
yyvsp
[
-
1
].
ftype
.
t
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
574
:
case
574
:
#line 270
5
"parse.y"
#line 270
7
"parse.y"
{
yyval
.
ttype
=
make_pointer_declarator
(
NULL_TREE
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
make_pointer_declarator
(
NULL_TREE
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
575
:
case
575
:
#line 270
7
"parse.y"
#line 270
9
"parse.y"
{
yyval
.
ttype
=
make_reference_declarator
(
NULL_TREE
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
make_reference_declarator
(
NULL_TREE
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
576
:
case
576
:
#line 27
09
"parse.y"
#line 27
11
"parse.y"
{
tree
arg
=
make_pointer_declarator
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
{
tree
arg
=
make_pointer_declarator
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
yyval
.
ttype
=
build_parse_node
(
SCOPE_REF
,
yyvsp
[
-
2
].
ttype
,
arg
);
yyval
.
ttype
=
build_parse_node
(
SCOPE_REF
,
yyvsp
[
-
2
].
ttype
,
arg
);
;
;
break
;}
break
;}
case
578
:
case
578
:
#line 271
7
"parse.y"
#line 271
9
"parse.y"
{
{
if
(
TREE_CODE
(
yyvsp
[
0
].
ttype
)
==
IDENTIFIER_NODE
)
if
(
TREE_CODE
(
yyvsp
[
0
].
ttype
)
==
IDENTIFIER_NODE
)
{
{
...
@@ -6615,7 +6615,7 @@ case 578:
...
@@ -6615,7 +6615,7 @@ case 578:
;
;
break
;}
break
;}
case
579
:
case
579
:
#line 273
4
"parse.y"
#line 273
6
"parse.y"
{
{
if
(
TREE_CODE
(
yyvsp
[
0
].
ttype
)
==
IDENTIFIER_NODE
)
if
(
TREE_CODE
(
yyvsp
[
0
].
ttype
)
==
IDENTIFIER_NODE
)
yyval
.
ttype
=
IDENTIFIER_GLOBAL_VALUE
(
yyvsp
[
0
].
ttype
);
yyval
.
ttype
=
IDENTIFIER_GLOBAL_VALUE
(
yyvsp
[
0
].
ttype
);
...
@@ -6625,97 +6625,97 @@ case 579:
...
@@ -6625,97 +6625,97 @@ case 579:
;
;
break
;}
break
;}
case
582
:
case
582
:
#line 274
7
"parse.y"
#line 274
9
"parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
583
:
case
583
:
#line 275
2
"parse.y"
#line 275
4
"parse.y"
{
yyval
.
ttype
=
get_type_decl
(
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
get_type_decl
(
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
584
:
case
584
:
#line 275
7
"parse.y"
#line 275
9
"parse.y"
{
yyval
.
ttype
=
make_call_declarator
(
yyval
.
ttype
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
make_call_declarator
(
yyval
.
ttype
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
585
:
case
585
:
#line 27
59
"parse.y"
#line 27
61
"parse.y"
{
yyval
.
ttype
=
build_parse_node
(
ARRAY_REF
,
yyval
.
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
build_parse_node
(
ARRAY_REF
,
yyval
.
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
586
:
case
586
:
#line 276
1
"parse.y"
#line 276
3
"parse.y"
{
yyval
.
ttype
=
build_parse_node
(
ARRAY_REF
,
yyval
.
ttype
,
NULL_TREE
);
;
{
yyval
.
ttype
=
build_parse_node
(
ARRAY_REF
,
yyval
.
ttype
,
NULL_TREE
);
;
break
;}
break
;}
case
587
:
case
587
:
#line 276
3
"parse.y"
#line 276
5
"parse.y"
{
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
;
break
;}
break
;}
case
588
:
case
588
:
#line 276
5
"parse.y"
#line 276
7
"parse.y"
{
push_nested_class
(
yyvsp
[
-
1
].
ttype
,
3
);
{
push_nested_class
(
yyvsp
[
-
1
].
ttype
,
3
);
yyval
.
ttype
=
build_parse_node
(
SCOPE_REF
,
yyval
.
ttype
,
yyvsp
[
0
].
ttype
);
yyval
.
ttype
=
build_parse_node
(
SCOPE_REF
,
yyval
.
ttype
,
yyvsp
[
0
].
ttype
);
TREE_COMPLEXITY
(
yyval
.
ttype
)
=
current_class_depth
;
;
TREE_COMPLEXITY
(
yyval
.
ttype
)
=
current_class_depth
;
;
break
;}
break
;}
case
590
:
case
590
:
#line 277
6
"parse.y"
#line 277
8
"parse.y"
{
yyval
.
ttype
=
make_pointer_declarator
(
yyvsp
[
-
1
].
ftype
.
t
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
make_pointer_declarator
(
yyvsp
[
-
1
].
ftype
.
t
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
591
:
case
591
:
#line 27
78
"parse.y"
#line 27
80
"parse.y"
{
yyval
.
ttype
=
make_reference_declarator
(
yyvsp
[
-
1
].
ftype
.
t
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
make_reference_declarator
(
yyvsp
[
-
1
].
ftype
.
t
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
592
:
case
592
:
#line 278
0
"parse.y"
#line 278
2
"parse.y"
{
yyval
.
ttype
=
make_pointer_declarator
(
NULL_TREE
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
make_pointer_declarator
(
NULL_TREE
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
593
:
case
593
:
#line 278
2
"parse.y"
#line 278
4
"parse.y"
{
yyval
.
ttype
=
make_reference_declarator
(
NULL_TREE
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
make_reference_declarator
(
NULL_TREE
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
594
:
case
594
:
#line 278
4
"parse.y"
#line 278
6
"parse.y"
{
tree
arg
=
make_pointer_declarator
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
{
tree
arg
=
make_pointer_declarator
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
yyval
.
ttype
=
build_parse_node
(
SCOPE_REF
,
yyvsp
[
-
2
].
ttype
,
arg
);
yyval
.
ttype
=
build_parse_node
(
SCOPE_REF
,
yyvsp
[
-
2
].
ttype
,
arg
);
;
;
break
;}
break
;}
case
596
:
case
596
:
#line 279
2
"parse.y"
#line 279
4
"parse.y"
{
yyval
.
ttype
=
make_pointer_declarator
(
yyvsp
[
-
1
].
ftype
.
t
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
make_pointer_declarator
(
yyvsp
[
-
1
].
ftype
.
t
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
597
:
case
597
:
#line 279
4
"parse.y"
#line 279
6
"parse.y"
{
yyval
.
ttype
=
make_reference_declarator
(
yyvsp
[
-
1
].
ftype
.
t
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
make_reference_declarator
(
yyvsp
[
-
1
].
ftype
.
t
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
598
:
case
598
:
#line 279
6
"parse.y"
#line 279
8
"parse.y"
{
yyval
.
ttype
=
make_pointer_declarator
(
NULL_TREE
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
make_pointer_declarator
(
NULL_TREE
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
599
:
case
599
:
#line 2
798
"parse.y"
#line 2
800
"parse.y"
{
yyval
.
ttype
=
make_reference_declarator
(
NULL_TREE
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
make_reference_declarator
(
NULL_TREE
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
600
:
case
600
:
#line 280
0
"parse.y"
#line 280
2
"parse.y"
{
tree
arg
=
make_pointer_declarator
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
{
tree
arg
=
make_pointer_declarator
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
yyval
.
ttype
=
build_parse_node
(
SCOPE_REF
,
yyvsp
[
-
2
].
ttype
,
arg
);
yyval
.
ttype
=
build_parse_node
(
SCOPE_REF
,
yyvsp
[
-
2
].
ttype
,
arg
);
;
;
break
;}
break
;}
case
602
:
case
602
:
#line 28
08
"parse.y"
#line 28
10
"parse.y"
{
yyval
.
ttype
=
make_call_declarator
(
yyval
.
ttype
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
make_call_declarator
(
yyval
.
ttype
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
603
:
case
603
:
#line 281
0
"parse.y"
#line 281
2
"parse.y"
{
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
;
break
;}
break
;}
case
604
:
case
604
:
#line 281
2
"parse.y"
#line 281
4
"parse.y"
{
yyval
.
ttype
=
build_parse_node
(
ARRAY_REF
,
yyval
.
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
build_parse_node
(
ARRAY_REF
,
yyval
.
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
605
:
case
605
:
#line 281
4
"parse.y"
#line 281
6
"parse.y"
{
yyval
.
ttype
=
build_parse_node
(
ARRAY_REF
,
yyval
.
ttype
,
NULL_TREE
);
;
{
yyval
.
ttype
=
build_parse_node
(
ARRAY_REF
,
yyval
.
ttype
,
NULL_TREE
);
;
break
;}
break
;}
case
606
:
case
606
:
#line 281
6
"parse.y"
#line 281
8
"parse.y"
{
if
(
TREE_CODE
(
OP0
(
yyvsp
[
0
].
ttype
))
==
NAMESPACE_DECL
)
{
if
(
TREE_CODE
(
OP0
(
yyvsp
[
0
].
ttype
))
==
NAMESPACE_DECL
)
{
{
push_decl_namespace
(
OP0
(
yyvsp
[
0
].
ttype
));
push_decl_namespace
(
OP0
(
yyvsp
[
0
].
ttype
));
...
@@ -6729,7 +6729,7 @@ case 606:
...
@@ -6729,7 +6729,7 @@ case 606:
;
;
break
;}
break
;}
case
607
:
case
607
:
#line 28
28
"parse.y"
#line 28
30
"parse.y"
{
got_scope
=
NULL_TREE
;
{
got_scope
=
NULL_TREE
;
yyval
.
ttype
=
build_parse_node
(
SCOPE_REF
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
yyval
.
ttype
=
build_parse_node
(
SCOPE_REF
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
if
(
yyvsp
[
-
1
].
ttype
!=
current_class_type
)
if
(
yyvsp
[
-
1
].
ttype
!=
current_class_type
)
...
@@ -6740,51 +6740,51 @@ case 607:
...
@@ -6740,51 +6740,51 @@ case 607:
;
;
break
;}
break
;}
case
608
:
case
608
:
#line 284
0
"parse.y"
#line 284
2
"parse.y"
{
got_scope
=
NULL_TREE
;
{
got_scope
=
NULL_TREE
;
yyval
.
ttype
=
build_parse_node
(
SCOPE_REF
,
yyval
.
ttype
,
yyvsp
[
0
].
ttype
);
;
yyval
.
ttype
=
build_parse_node
(
SCOPE_REF
,
yyval
.
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
609
:
case
609
:
#line 284
3
"parse.y"
#line 284
5
"parse.y"
{
got_scope
=
NULL_TREE
;
{
got_scope
=
NULL_TREE
;
yyval
.
ttype
=
build_parse_node
(
SCOPE_REF
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
yyval
.
ttype
=
build_parse_node
(
SCOPE_REF
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
610
:
case
610
:
#line 28
49
"parse.y"
#line 28
51
"parse.y"
{
got_scope
=
NULL_TREE
;
{
got_scope
=
NULL_TREE
;
yyval
.
ttype
=
build_parse_node
(
SCOPE_REF
,
yyval
.
ttype
,
yyvsp
[
0
].
ttype
);
;
yyval
.
ttype
=
build_parse_node
(
SCOPE_REF
,
yyval
.
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
611
:
case
611
:
#line 285
2
"parse.y"
#line 285
4
"parse.y"
{
got_scope
=
NULL_TREE
;
{
got_scope
=
NULL_TREE
;
yyval
.
ttype
=
build_parse_node
(
SCOPE_REF
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
yyval
.
ttype
=
build_parse_node
(
SCOPE_REF
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
613
:
case
613
:
#line 28
59
"parse.y"
#line 28
61
"parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
614
:
case
614
:
#line 286
4
"parse.y"
#line 286
6
"parse.y"
{
yyval
.
ttype
=
build_functional_cast
(
yyvsp
[
-
3
].
ftype
.
t
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
build_functional_cast
(
yyvsp
[
-
3
].
ftype
.
t
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
615
:
case
615
:
#line 286
6
"parse.y"
#line 286
8
"parse.y"
{
yyval
.
ttype
=
reparse_decl_as_expr
(
yyvsp
[
-
3
].
ftype
.
t
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
reparse_decl_as_expr
(
yyvsp
[
-
3
].
ftype
.
t
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
616
:
case
616
:
#line 28
68
"parse.y"
#line 28
70
"parse.y"
{
yyval
.
ttype
=
reparse_absdcl_as_expr
(
yyvsp
[
-
1
].
ftype
.
t
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
reparse_absdcl_as_expr
(
yyvsp
[
-
1
].
ftype
.
t
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
621
:
case
621
:
#line 288
0
"parse.y"
#line 288
2
"parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
622
:
case
622
:
#line 288
2
"parse.y"
#line 288
4
"parse.y"
{
got_scope
=
yyval
.
ttype
=
make_typename_type
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
got_scope
=
yyval
.
ttype
=
make_typename_type
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
623
:
case
623
:
#line 28
89
"parse.y"
#line 28
91
"parse.y"
{
{
if
(
TREE_CODE
(
yyvsp
[
-
1
].
ttype
)
==
IDENTIFIER_NODE
)
if
(
TREE_CODE
(
yyvsp
[
-
1
].
ttype
)
==
IDENTIFIER_NODE
)
{
{
...
@@ -6800,7 +6800,7 @@ case 623:
...
@@ -6800,7 +6800,7 @@ case 623:
;
;
break
;}
break
;}
case
624
:
case
624
:
#line 290
3
"parse.y"
#line 290
5
"parse.y"
{
{
if
(
TREE_CODE
(
yyvsp
[
-
1
].
ttype
)
==
IDENTIFIER_NODE
)
if
(
TREE_CODE
(
yyvsp
[
-
1
].
ttype
)
==
IDENTIFIER_NODE
)
yyval
.
ttype
=
lastiddecl
;
yyval
.
ttype
=
lastiddecl
;
...
@@ -6808,7 +6808,7 @@ case 624:
...
@@ -6808,7 +6808,7 @@ case 624:
;
;
break
;}
break
;}
case
625
:
case
625
:
#line 29
09
"parse.y"
#line 29
11
"parse.y"
{
{
if
(
TREE_CODE
(
yyval
.
ttype
)
==
IDENTIFIER_NODE
)
if
(
TREE_CODE
(
yyval
.
ttype
)
==
IDENTIFIER_NODE
)
yyval
.
ttype
=
lastiddecl
;
yyval
.
ttype
=
lastiddecl
;
...
@@ -6816,15 +6816,15 @@ case 625:
...
@@ -6816,15 +6816,15 @@ case 625:
;
;
break
;}
break
;}
case
626
:
case
626
:
#line 291
5
"parse.y"
#line 291
7
"parse.y"
{
got_scope
=
yyval
.
ttype
=
complete_type
(
TREE_TYPE
(
yyvsp
[
-
1
].
ttype
));
;
{
got_scope
=
yyval
.
ttype
=
complete_type
(
TREE_TYPE
(
yyvsp
[
-
1
].
ttype
));
;
break
;}
break
;}
case
628
:
case
628
:
#line 293
1
"parse.y"
#line 293
3
"parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
629
:
case
629
:
#line 293
6
"parse.y"
#line 293
8
"parse.y"
{
{
if
(
TREE_CODE_CLASS
(
TREE_CODE
(
yyvsp
[
-
1
].
ttype
))
==
't'
)
if
(
TREE_CODE_CLASS
(
TREE_CODE
(
yyvsp
[
-
1
].
ttype
))
==
't'
)
yyval
.
ttype
=
make_typename_type
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
yyval
.
ttype
=
make_typename_type
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
...
@@ -6839,26 +6839,26 @@ case 629:
...
@@ -6839,26 +6839,26 @@ case 629:
;
;
break
;}
break
;}
case
630
:
case
630
:
#line 29
49
"parse.y"
#line 29
51
"parse.y"
{
yyval
.
ttype
=
TREE_TYPE
(
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
TREE_TYPE
(
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
631
:
case
631
:
#line 295
1
"parse.y"
#line 295
3
"parse.y"
{
yyval
.
ttype
=
make_typename_type
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
make_typename_type
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
632
:
case
632
:
#line 295
3
"parse.y"
#line 295
5
"parse.y"
{
yyval
.
ttype
=
make_typename_type
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
make_typename_type
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
633
:
case
633
:
#line 29
58
"parse.y"
#line 29
60
"parse.y"
{
{
if
(
TREE_CODE
(
yyvsp
[
0
].
ttype
)
==
IDENTIFIER_NODE
)
if
(
TREE_CODE
(
yyvsp
[
0
].
ttype
)
==
IDENTIFIER_NODE
)
cp_error
(
"`%T' is not a class or namespace"
,
yyvsp
[
0
].
ttype
);
cp_error
(
"`%T' is not a class or namespace"
,
yyvsp
[
0
].
ttype
);
;
;
break
;}
break
;}
case
634
:
case
634
:
#line 296
3
"parse.y"
#line 296
5
"parse.y"
{
{
if
(
TREE_CODE_CLASS
(
TREE_CODE
(
yyvsp
[
-
1
].
ttype
))
==
't'
)
if
(
TREE_CODE_CLASS
(
TREE_CODE
(
yyvsp
[
-
1
].
ttype
))
==
't'
)
yyval
.
ttype
=
make_typename_type
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
yyval
.
ttype
=
make_typename_type
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
...
@@ -6873,15 +6873,15 @@ case 634:
...
@@ -6873,15 +6873,15 @@ case 634:
;
;
break
;}
break
;}
case
635
:
case
635
:
#line 297
6
"parse.y"
#line 297
8
"parse.y"
{
got_scope
=
yyval
.
ttype
=
make_typename_type
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
got_scope
=
yyval
.
ttype
=
make_typename_type
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
636
:
case
636
:
#line 29
78
"parse.y"
#line 29
80
"parse.y"
{
got_scope
=
yyval
.
ttype
=
make_typename_type
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
got_scope
=
yyval
.
ttype
=
make_typename_type
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
637
:
case
637
:
#line 298
3
"parse.y"
#line 298
5
"parse.y"
{
{
if
(
TREE_CODE
(
yyvsp
[
-
1
].
ttype
)
!=
IDENTIFIER_NODE
)
if
(
TREE_CODE
(
yyvsp
[
-
1
].
ttype
)
!=
IDENTIFIER_NODE
)
yyvsp
[
-
1
].
ttype
=
lastiddecl
;
yyvsp
[
-
1
].
ttype
=
lastiddecl
;
...
@@ -6895,7 +6895,7 @@ case 637:
...
@@ -6895,7 +6895,7 @@ case 637:
;
;
break
;}
break
;}
case
638
:
case
638
:
#line 299
5
"parse.y"
#line 299
7
"parse.y"
{
{
if
(
TREE_CODE
(
yyvsp
[
-
1
].
ttype
)
!=
IDENTIFIER_NODE
)
if
(
TREE_CODE
(
yyvsp
[
-
1
].
ttype
)
!=
IDENTIFIER_NODE
)
yyval
.
ttype
=
lastiddecl
;
yyval
.
ttype
=
lastiddecl
;
...
@@ -6903,11 +6903,11 @@ case 638:
...
@@ -6903,11 +6903,11 @@ case 638:
;
;
break
;}
break
;}
case
639
:
case
639
:
#line 300
1
"parse.y"
#line 300
3
"parse.y"
{
got_scope
=
yyval
.
ttype
=
complete_type
(
TREE_TYPE
(
yyval
.
ttype
));
;
{
got_scope
=
yyval
.
ttype
=
complete_type
(
TREE_TYPE
(
yyval
.
ttype
));
;
break
;}
break
;}
case
642
:
case
642
:
#line 300
5
"parse.y"
#line 300
7
"parse.y"
{
{
if
(
TREE_CODE
(
yyval
.
ttype
)
==
IDENTIFIER_NODE
)
if
(
TREE_CODE
(
yyval
.
ttype
)
==
IDENTIFIER_NODE
)
yyval
.
ttype
=
lastiddecl
;
yyval
.
ttype
=
lastiddecl
;
...
@@ -6915,11 +6915,11 @@ case 642:
...
@@ -6915,11 +6915,11 @@ case 642:
;
;
break
;}
break
;}
case
643
:
case
643
:
#line 301
4
"parse.y"
#line 301
6
"parse.y"
{
yyval
.
ttype
=
build_min_nt
(
TEMPLATE_ID_EXPR
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
build_min_nt
(
TEMPLATE_ID_EXPR
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
644
:
case
644
:
#line 30
19
"parse.y"
#line 30
21
"parse.y"
{
{
if
(
TREE_CODE
(
yyvsp
[
0
].
ttype
)
==
IDENTIFIER_NODE
)
if
(
TREE_CODE
(
yyvsp
[
0
].
ttype
)
==
IDENTIFIER_NODE
)
yyval
.
ttype
=
IDENTIFIER_GLOBAL_VALUE
(
yyvsp
[
0
].
ttype
);
yyval
.
ttype
=
IDENTIFIER_GLOBAL_VALUE
(
yyvsp
[
0
].
ttype
);
...
@@ -6929,148 +6929,148 @@ case 644:
...
@@ -6929,148 +6929,148 @@ case 644:
;
;
break
;}
break
;}
case
646
:
case
646
:
#line 30
28
"parse.y"
#line 30
30
"parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
647
:
case
647
:
#line 303
3
"parse.y"
#line 303
5
"parse.y"
{
got_scope
=
NULL_TREE
;
;
{
got_scope
=
NULL_TREE
;
;
break
;}
break
;}
case
648
:
case
648
:
#line 303
5
"parse.y"
#line 303
7
"parse.y"
{
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
got_scope
=
NULL_TREE
;
;
{
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
got_scope
=
NULL_TREE
;
;
break
;}
break
;}
case
649
:
case
649
:
#line 304
2
"parse.y"
#line 304
4
"parse.y"
{
got_scope
=
void_type_node
;
;
{
got_scope
=
void_type_node
;
;
break
;}
break
;}
case
650
:
case
650
:
#line 30
48
"parse.y"
#line 30
50
"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
651
:
case
651
:
#line 305
0
"parse.y"
#line 305
2
"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
652
:
case
652
:
#line 305
2
"parse.y"
#line 305
4
"parse.y"
{
yyval
.
ttype
=
make_reference_declarator
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
make_reference_declarator
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
653
:
case
653
:
#line 305
4
"parse.y"
#line 305
6
"parse.y"
{
yyval
.
ttype
=
make_reference_declarator
(
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
{
yyval
.
ttype
=
make_reference_declarator
(
yyvsp
[
0
].
ttype
,
NULL_TREE
);
;
break
;}
break
;}
case
654
:
case
654
:
#line 305
6
"parse.y"
#line 305
8
"parse.y"
{
tree
arg
=
make_pointer_declarator
(
yyvsp
[
0
].
ttype
,
NULL_TREE
);
{
tree
arg
=
make_pointer_declarator
(
yyvsp
[
0
].
ttype
,
NULL_TREE
);
yyval
.
ttype
=
build_parse_node
(
SCOPE_REF
,
yyvsp
[
-
1
].
ttype
,
arg
);
yyval
.
ttype
=
build_parse_node
(
SCOPE_REF
,
yyvsp
[
-
1
].
ttype
,
arg
);
;
;
break
;}
break
;}
case
655
:
case
655
:
#line 306
0
"parse.y"
#line 306
2
"parse.y"
{
tree
arg
=
make_pointer_declarator
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
{
tree
arg
=
make_pointer_declarator
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
yyval
.
ttype
=
build_parse_node
(
SCOPE_REF
,
yyvsp
[
-
2
].
ttype
,
arg
);
yyval
.
ttype
=
build_parse_node
(
SCOPE_REF
,
yyvsp
[
-
2
].
ttype
,
arg
);
;
;
break
;}
break
;}
case
657
:
case
657
:
#line 30
69
"parse.y"
#line 30
71
"parse.y"
{
yyval
.
ttype
=
build_parse_node
(
ARRAY_REF
,
NULL_TREE
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
build_parse_node
(
ARRAY_REF
,
NULL_TREE
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
658
:
case
658
:
#line 307
1
"parse.y"
#line 307
3
"parse.y"
{
yyval
.
ttype
=
build_parse_node
(
ARRAY_REF
,
yyval
.
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
build_parse_node
(
ARRAY_REF
,
yyval
.
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
659
:
case
659
:
#line 307
7
"parse.y"
#line 307
9
"parse.y"
{
yyval
.
ttype
=
make_pointer_declarator
(
yyvsp
[
-
1
].
ftype
.
t
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
make_pointer_declarator
(
yyvsp
[
-
1
].
ftype
.
t
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
660
:
case
660
:
#line 30
79
"parse.y"
#line 30
81
"parse.y"
{
yyval
.
ttype
=
make_pointer_declarator
(
NULL_TREE
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
make_pointer_declarator
(
NULL_TREE
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
661
:
case
661
:
#line 308
1
"parse.y"
#line 308
3
"parse.y"
{
yyval
.
ttype
=
make_pointer_declarator
(
yyvsp
[
0
].
ftype
.
t
,
NULL_TREE
);
;
{
yyval
.
ttype
=
make_pointer_declarator
(
yyvsp
[
0
].
ftype
.
t
,
NULL_TREE
);
;
break
;}
break
;}
case
662
:
case
662
:
#line 308
3
"parse.y"
#line 308
5
"parse.y"
{
yyval
.
ttype
=
make_pointer_declarator
(
NULL_TREE
,
NULL_TREE
);
;
{
yyval
.
ttype
=
make_pointer_declarator
(
NULL_TREE
,
NULL_TREE
);
;
break
;}
break
;}
case
663
:
case
663
:
#line 308
5
"parse.y"
#line 308
7
"parse.y"
{
yyval
.
ttype
=
make_reference_declarator
(
yyvsp
[
-
1
].
ftype
.
t
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
make_reference_declarator
(
yyvsp
[
-
1
].
ftype
.
t
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
664
:
case
664
:
#line 308
7
"parse.y"
#line 308
9
"parse.y"
{
yyval
.
ttype
=
make_reference_declarator
(
NULL_TREE
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
make_reference_declarator
(
NULL_TREE
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
665
:
case
665
:
#line 30
89
"parse.y"
#line 30
91
"parse.y"
{
yyval
.
ttype
=
make_reference_declarator
(
yyvsp
[
0
].
ftype
.
t
,
NULL_TREE
);
;
{
yyval
.
ttype
=
make_reference_declarator
(
yyvsp
[
0
].
ftype
.
t
,
NULL_TREE
);
;
break
;}
break
;}
case
666
:
case
666
:
#line 309
1
"parse.y"
#line 309
3
"parse.y"
{
yyval
.
ttype
=
make_reference_declarator
(
NULL_TREE
,
NULL_TREE
);
;
{
yyval
.
ttype
=
make_reference_declarator
(
NULL_TREE
,
NULL_TREE
);
;
break
;}
break
;}
case
667
:
case
667
:
#line 309
3
"parse.y"
#line 309
5
"parse.y"
{
tree
arg
=
make_pointer_declarator
(
yyvsp
[
0
].
ttype
,
NULL_TREE
);
{
tree
arg
=
make_pointer_declarator
(
yyvsp
[
0
].
ttype
,
NULL_TREE
);
yyval
.
ttype
=
build_parse_node
(
SCOPE_REF
,
yyvsp
[
-
1
].
ttype
,
arg
);
yyval
.
ttype
=
build_parse_node
(
SCOPE_REF
,
yyvsp
[
-
1
].
ttype
,
arg
);
;
;
break
;}
break
;}
case
668
:
case
668
:
#line 309
7
"parse.y"
#line 309
9
"parse.y"
{
tree
arg
=
make_pointer_declarator
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
{
tree
arg
=
make_pointer_declarator
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
yyval
.
ttype
=
build_parse_node
(
SCOPE_REF
,
yyvsp
[
-
2
].
ttype
,
arg
);
yyval
.
ttype
=
build_parse_node
(
SCOPE_REF
,
yyvsp
[
-
2
].
ttype
,
arg
);
;
;
break
;}
break
;}
case
670
:
case
670
:
#line 310
6
"parse.y"
#line 310
8
"parse.y"
{
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
;
break
;}
break
;}
case
672
:
case
672
:
#line 311
0
"parse.y"
#line 311
2
"parse.y"
{
yyval
.
ttype
=
make_call_declarator
(
yyval
.
ttype
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
make_call_declarator
(
yyval
.
ttype
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
673
:
case
673
:
#line 311
2
"parse.y"
#line 311
4
"parse.y"
{
yyval
.
ttype
=
make_call_declarator
(
yyval
.
ttype
,
empty_parms
(),
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
make_call_declarator
(
yyval
.
ttype
,
empty_parms
(),
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
674
:
case
674
:
#line 311
4
"parse.y"
#line 311
6
"parse.y"
{
yyval
.
ttype
=
build_parse_node
(
ARRAY_REF
,
yyval
.
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
build_parse_node
(
ARRAY_REF
,
yyval
.
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
675
:
case
675
:
#line 311
6
"parse.y"
#line 311
8
"parse.y"
{
yyval
.
ttype
=
build_parse_node
(
ARRAY_REF
,
yyval
.
ttype
,
NULL_TREE
);
;
{
yyval
.
ttype
=
build_parse_node
(
ARRAY_REF
,
yyval
.
ttype
,
NULL_TREE
);
;
break
;}
break
;}
case
676
:
case
676
:
#line 31
18
"parse.y"
#line 31
20
"parse.y"
{
yyval
.
ttype
=
make_call_declarator
(
NULL_TREE
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
make_call_declarator
(
NULL_TREE
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
677
:
case
677
:
#line 312
0
"parse.y"
#line 312
2
"parse.y"
{
set_quals_and_spec
(
yyval
.
ttype
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
set_quals_and_spec
(
yyval
.
ttype
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
678
:
case
678
:
#line 312
2
"parse.y"
#line 312
4
"parse.y"
{
set_quals_and_spec
(
yyval
.
ttype
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
set_quals_and_spec
(
yyval
.
ttype
,
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
679
:
case
679
:
#line 312
4
"parse.y"
#line 312
6
"parse.y"
{
yyval
.
ttype
=
build_parse_node
(
ARRAY_REF
,
NULL_TREE
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
build_parse_node
(
ARRAY_REF
,
NULL_TREE
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
680
:
case
680
:
#line 312
6
"parse.y"
#line 312
8
"parse.y"
{
yyval
.
ttype
=
build_parse_node
(
ARRAY_REF
,
NULL_TREE
,
NULL_TREE
);
;
{
yyval
.
ttype
=
build_parse_node
(
ARRAY_REF
,
NULL_TREE
,
NULL_TREE
);
;
break
;}
break
;}
case
687
:
case
687
:
#line 31
49
"parse.y"
#line 31
51
"parse.y"
{
if
(
pedantic
)
{
if
(
pedantic
)
pedwarn
(
"ANSI C++ forbids label declarations"
);
;
pedwarn
(
"ANSI C++ forbids label declarations"
);
;
break
;}
break
;}
case
690
:
case
690
:
#line 316
0
"parse.y"
#line 316
2
"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
))
{
{
...
@@ -7081,181 +7081,181 @@ case 690:
...
@@ -7081,181 +7081,181 @@ case 690:
;
;
break
;}
break
;}
case
691
:
case
691
:
#line 317
4
"parse.y"
#line 317
6
"parse.y"
{;
{;
break
;}
break
;}
case
693
:
case
693
:
#line 318
0
"parse.y"
#line 318
2
"parse.y"
{
yyval
.
ttype
=
begin_compound_stmt
(
0
);
;
{
yyval
.
ttype
=
begin_compound_stmt
(
0
);
;
break
;}
break
;}
case
694
:
case
694
:
#line 318
2
"parse.y"
#line 318
4
"parse.y"
{
yyval
.
ttype
=
finish_compound_stmt
(
0
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
finish_compound_stmt
(
0
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
695
:
case
695
:
#line 318
7
"parse.y"
#line 318
9
"parse.y"
{
{
yyval
.
ttype
=
begin_if_stmt
();
yyval
.
ttype
=
begin_if_stmt
();
cond_stmt_keyword
=
"if"
;
cond_stmt_keyword
=
"if"
;
;
;
break
;}
break
;}
case
696
:
case
696
:
#line 319
2
"parse.y"
#line 319
4
"parse.y"
{
finish_if_stmt_cond
(
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
finish_if_stmt_cond
(
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
697
:
case
697
:
#line 319
4
"parse.y"
#line 319
6
"parse.y"
{
yyval
.
ttype
=
finish_then_clause
(
yyvsp
[
-
3
].
ttype
);
;
{
yyval
.
ttype
=
finish_then_clause
(
yyvsp
[
-
3
].
ttype
);
;
break
;}
break
;}
case
699
:
case
699
:
#line 3
199
"parse.y"
#line 3
201
"parse.y"
{
yyval
.
ttype
=
begin_compound_stmt
(
0
);
;
{
yyval
.
ttype
=
begin_compound_stmt
(
0
);
;
break
;}
break
;}
case
700
:
case
700
:
#line 320
1
"parse.y"
#line 320
3
"parse.y"
{
yyval
.
ttype
=
finish_compound_stmt
(
0
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
finish_compound_stmt
(
0
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
701
:
case
701
:
#line 320
6
"parse.y"
#line 320
8
"parse.y"
{;
{;
break
;}
break
;}
case
703
:
case
703
:
#line 321
2
"parse.y"
#line 321
4
"parse.y"
{
finish_stmt
();
;
{
finish_stmt
();
;
break
;}
break
;}
case
704
:
case
704
:
#line 321
4
"parse.y"
#line 321
6
"parse.y"
{
finish_expr_stmt
(
yyvsp
[
-
1
].
ttype
);
;
{
finish_expr_stmt
(
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
705
:
case
705
:
#line 321
6
"parse.y"
#line 321
8
"parse.y"
{
begin_else_clause
();
;
{
begin_else_clause
();
;
break
;}
break
;}
case
706
:
case
706
:
#line 32
18
"parse.y"
#line 32
20
"parse.y"
{
{
finish_else_clause
(
yyvsp
[
-
3
].
ttype
);
finish_else_clause
(
yyvsp
[
-
3
].
ttype
);
finish_if_stmt
();
finish_if_stmt
();
;
;
break
;}
break
;}
case
707
:
case
707
:
#line 322
3
"parse.y"
#line 322
5
"parse.y"
{
finish_if_stmt
();
;
{
finish_if_stmt
();
;
break
;}
break
;}
case
708
:
case
708
:
#line 322
5
"parse.y"
#line 322
7
"parse.y"
{
{
yyval
.
ttype
=
begin_while_stmt
();
yyval
.
ttype
=
begin_while_stmt
();
cond_stmt_keyword
=
"while"
;
cond_stmt_keyword
=
"while"
;
;
;
break
;}
break
;}
case
709
:
case
709
:
#line 323
0
"parse.y"
#line 323
2
"parse.y"
{
finish_while_stmt_cond
(
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
finish_while_stmt_cond
(
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
710
:
case
710
:
#line 323
2
"parse.y"
#line 323
4
"parse.y"
{
finish_while_stmt
(
yyvsp
[
-
3
].
ttype
);
;
{
finish_while_stmt
(
yyvsp
[
-
3
].
ttype
);
;
break
;}
break
;}
case
711
:
case
711
:
#line 323
4
"parse.y"
#line 323
6
"parse.y"
{
yyval
.
ttype
=
begin_do_stmt
();
;
{
yyval
.
ttype
=
begin_do_stmt
();
;
break
;}
break
;}
case
712
:
case
712
:
#line 323
6
"parse.y"
#line 323
8
"parse.y"
{
{
finish_do_body
(
yyvsp
[
-
2
].
ttype
);
finish_do_body
(
yyvsp
[
-
2
].
ttype
);
cond_stmt_keyword
=
"do"
;
cond_stmt_keyword
=
"do"
;
;
;
break
;}
break
;}
case
713
:
case
713
:
#line 324
1
"parse.y"
#line 324
3
"parse.y"
{
finish_do_stmt
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
-
5
].
ttype
);
;
{
finish_do_stmt
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
-
5
].
ttype
);
;
break
;}
break
;}
case
714
:
case
714
:
#line 324
3
"parse.y"
#line 324
5
"parse.y"
{
yyval
.
ttype
=
begin_for_stmt
();
;
{
yyval
.
ttype
=
begin_for_stmt
();
;
break
;}
break
;}
case
715
:
case
715
:
#line 324
5
"parse.y"
#line 324
7
"parse.y"
{
finish_for_init_stmt
(
yyvsp
[
-
2
].
ttype
);
;
{
finish_for_init_stmt
(
yyvsp
[
-
2
].
ttype
);
;
break
;}
break
;}
case
716
:
case
716
:
#line 324
7
"parse.y"
#line 324
9
"parse.y"
{
finish_for_cond
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
-
5
].
ttype
);
;
{
finish_for_cond
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
-
5
].
ttype
);
;
break
;}
break
;}
case
717
:
case
717
:
#line 32
49
"parse.y"
#line 32
51
"parse.y"
{
finish_for_expr
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
-
8
].
ttype
);
;
{
finish_for_expr
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
-
8
].
ttype
);
;
break
;}
break
;}
case
718
:
case
718
:
#line 325
1
"parse.y"
#line 325
3
"parse.y"
{
finish_for_stmt
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
10
].
ttype
);
;
{
finish_for_stmt
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
10
].
ttype
);
;
break
;}
break
;}
case
719
:
case
719
:
#line 325
3
"parse.y"
#line 325
5
"parse.y"
{
begin_switch_stmt
();
;
{
begin_switch_stmt
();
;
break
;}
break
;}
case
720
:
case
720
:
#line 325
5
"parse.y"
#line 325
7
"parse.y"
{
yyval
.
ttype
=
finish_switch_cond
(
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
finish_switch_cond
(
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
721
:
case
721
:
#line 325
7
"parse.y"
#line 325
9
"parse.y"
{
finish_switch_stmt
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
finish_switch_stmt
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
722
:
case
722
:
#line 32
59
"parse.y"
#line 32
61
"parse.y"
{
finish_case_label
(
yyvsp
[
-
1
].
ttype
,
NULL_TREE
);
;
{
finish_case_label
(
yyvsp
[
-
1
].
ttype
,
NULL_TREE
);
;
break
;}
break
;}
case
724
:
case
724
:
#line 326
2
"parse.y"
#line 326
4
"parse.y"
{
finish_case_label
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
finish_case_label
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
726
:
case
726
:
#line 326
5
"parse.y"
#line 326
7
"parse.y"
{
finish_case_label
(
NULL_TREE
,
NULL_TREE
);
;
{
finish_case_label
(
NULL_TREE
,
NULL_TREE
);
;
break
;}
break
;}
case
728
:
case
728
:
#line 32
68
"parse.y"
#line 32
70
"parse.y"
{
finish_break_stmt
();
;
{
finish_break_stmt
();
;
break
;}
break
;}
case
729
:
case
729
:
#line 327
0
"parse.y"
#line 327
2
"parse.y"
{
finish_continue_stmt
();
;
{
finish_continue_stmt
();
;
break
;}
break
;}
case
730
:
case
730
:
#line 327
2
"parse.y"
#line 327
4
"parse.y"
{
finish_return_stmt
(
NULL_TREE
);
;
{
finish_return_stmt
(
NULL_TREE
);
;
break
;}
break
;}
case
731
:
case
731
:
#line 327
4
"parse.y"
#line 327
6
"parse.y"
{
finish_return_stmt
(
yyvsp
[
-
1
].
ttype
);
;
{
finish_return_stmt
(
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
732
:
case
732
:
#line 327
6
"parse.y"
#line 327
8
"parse.y"
{
{
finish_asm_stmt
(
yyvsp
[
-
4
].
ttype
,
yyvsp
[
-
2
].
ttype
,
NULL_TREE
,
NULL_TREE
,
finish_asm_stmt
(
yyvsp
[
-
4
].
ttype
,
yyvsp
[
-
2
].
ttype
,
NULL_TREE
,
NULL_TREE
,
NULL_TREE
);
NULL_TREE
);
;
;
break
;}
break
;}
case
733
:
case
733
:
#line 328
2
"parse.y"
#line 328
4
"parse.y"
{
{
finish_asm_stmt
(
yyvsp
[
-
6
].
ttype
,
yyvsp
[
-
4
].
ttype
,
yyvsp
[
-
2
].
ttype
,
NULL_TREE
,
finish_asm_stmt
(
yyvsp
[
-
6
].
ttype
,
yyvsp
[
-
4
].
ttype
,
yyvsp
[
-
2
].
ttype
,
NULL_TREE
,
NULL_TREE
);
NULL_TREE
);
;
;
break
;}
break
;}
case
734
:
case
734
:
#line 32
88
"parse.y"
#line 32
90
"parse.y"
{
finish_asm_stmt
(
yyvsp
[
-
8
].
ttype
,
yyvsp
[
-
6
].
ttype
,
yyvsp
[
-
4
].
ttype
,
yyvsp
[
-
2
].
ttype
,
NULL_TREE
);
;
{
finish_asm_stmt
(
yyvsp
[
-
8
].
ttype
,
yyvsp
[
-
6
].
ttype
,
yyvsp
[
-
4
].
ttype
,
yyvsp
[
-
2
].
ttype
,
NULL_TREE
);
;
break
;}
break
;}
case
735
:
case
735
:
#line 329
2
"parse.y"
#line 329
4
"parse.y"
{
finish_asm_stmt
(
yyvsp
[
-
10
].
ttype
,
yyvsp
[
-
8
].
ttype
,
yyvsp
[
-
6
].
ttype
,
yyvsp
[
-
4
].
ttype
,
yyvsp
[
-
2
].
ttype
);
;
{
finish_asm_stmt
(
yyvsp
[
-
10
].
ttype
,
yyvsp
[
-
8
].
ttype
,
yyvsp
[
-
6
].
ttype
,
yyvsp
[
-
4
].
ttype
,
yyvsp
[
-
2
].
ttype
);
;
break
;}
break
;}
case
736
:
case
736
:
#line 329
4
"parse.y"
#line 329
6
"parse.y"
{
{
if
(
pedantic
)
if
(
pedantic
)
pedwarn
(
"ANSI C++ forbids computed gotos"
);
pedwarn
(
"ANSI C++ forbids computed gotos"
);
...
@@ -7263,29 +7263,29 @@ case 736:
...
@@ -7263,29 +7263,29 @@ case 736:
;
;
break
;}
break
;}
case
737
:
case
737
:
#line 330
0
"parse.y"
#line 330
2
"parse.y"
{
finish_goto_stmt
(
yyvsp
[
-
1
].
ttype
);
;
{
finish_goto_stmt
(
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
738
:
case
738
:
#line 330
2
"parse.y"
#line 330
4
"parse.y"
{
finish_stmt
();
;
{
finish_stmt
();
;
break
;}
break
;}
case
739
:
case
739
:
#line 330
4
"parse.y"
#line 330
6
"parse.y"
{
error
(
"label must be followed by statement"
);
{
error
(
"label must be followed by statement"
);
yyungetc
(
'}'
,
0
);
yyungetc
(
'}'
,
0
);
finish_stmt
();
;
finish_stmt
();
;
break
;}
break
;}
case
740
:
case
740
:
#line 33
08
"parse.y"
#line 33
10
"parse.y"
{
finish_stmt
();
;
{
finish_stmt
();
;
break
;}
break
;}
case
743
:
case
743
:
#line 331
2
"parse.y"
#line 331
4
"parse.y"
{
do_local_using_decl
(
yyvsp
[
0
].
ttype
);
;
{
do_local_using_decl
(
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
745
:
case
745
:
#line 33
18
"parse.y"
#line 33
20
"parse.y"
{
{
if
(
!
current_function_parms_stored
)
if
(
!
current_function_parms_stored
)
store_parm_decls
();
store_parm_decls
();
...
@@ -7293,13 +7293,13 @@ case 745:
...
@@ -7293,13 +7293,13 @@ case 745:
;
;
break
;}
break
;}
case
746
:
case
746
:
#line 332
4
"parse.y"
#line 332
6
"parse.y"
{
{
expand_start_all_catch
();
expand_start_all_catch
();
;
;
break
;}
break
;}
case
747
:
case
747
:
#line 33
28
"parse.y"
#line 33
30
"parse.y"
{
{
int
nested
=
(
hack_decl_function_context
int
nested
=
(
hack_decl_function_context
(
current_function_decl
)
!=
NULL_TREE
);
(
current_function_decl
)
!=
NULL_TREE
);
...
@@ -7308,41 +7308,41 @@ case 747:
...
@@ -7308,41 +7308,41 @@ case 747:
;
;
break
;}
break
;}
case
748
:
case
748
:
#line 33
38
"parse.y"
#line 33
40
"parse.y"
{
yyval
.
ttype
=
begin_try_block
();
;
{
yyval
.
ttype
=
begin_try_block
();
;
break
;}
break
;}
case
749
:
case
749
:
#line 334
0
"parse.y"
#line 334
2
"parse.y"
{
finish_try_block
(
yyvsp
[
-
1
].
ttype
);
;
{
finish_try_block
(
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
750
:
case
750
:
#line 334
2
"parse.y"
#line 334
4
"parse.y"
{
finish_handler_sequence
(
yyvsp
[
-
3
].
ttype
);
;
{
finish_handler_sequence
(
yyvsp
[
-
3
].
ttype
);
;
break
;}
break
;}
case
753
:
case
753
:
#line 335
2
"parse.y"
#line 335
4
"parse.y"
{
yyval
.
ttype
=
begin_handler
();
;
{
yyval
.
ttype
=
begin_handler
();
;
break
;}
break
;}
case
754
:
case
754
:
#line 335
4
"parse.y"
#line 335
6
"parse.y"
{
finish_handler_parms
(
yyvsp
[
-
1
].
ttype
);
;
{
finish_handler_parms
(
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
755
:
case
755
:
#line 335
6
"parse.y"
#line 335
8
"parse.y"
{
finish_handler
(
yyvsp
[
-
3
].
ttype
);
;
{
finish_handler
(
yyvsp
[
-
3
].
ttype
);
;
break
;}
break
;}
case
758
:
case
758
:
#line 336
6
"parse.y"
#line 336
8
"parse.y"
{
expand_start_catch_block
(
NULL_TREE
,
NULL_TREE
);
;
{
expand_start_catch_block
(
NULL_TREE
,
NULL_TREE
);
;
break
;}
break
;}
case
759
:
case
759
:
#line 338
2
"parse.y"
#line 338
4
"parse.y"
{
check_for_new_type
(
"inside exception declarations"
,
yyvsp
[
-
1
].
ftype
);
{
check_for_new_type
(
"inside exception declarations"
,
yyvsp
[
-
1
].
ftype
);
expand_start_catch_block
(
TREE_PURPOSE
(
yyvsp
[
-
1
].
ftype
.
t
),
expand_start_catch_block
(
TREE_PURPOSE
(
yyvsp
[
-
1
].
ftype
.
t
),
TREE_VALUE
(
yyvsp
[
-
1
].
ftype
.
t
));
;
TREE_VALUE
(
yyvsp
[
-
1
].
ftype
.
t
));
;
break
;}
break
;}
case
760
:
case
760
:
#line 33
89
"parse.y"
#line 33
91
"parse.y"
{
tree
label
;
{
tree
label
;
do_label
:
do_label
:
label
=
define_label
(
input_filename
,
lineno
,
yyvsp
[
-
1
].
ttype
);
label
=
define_label
(
input_filename
,
lineno
,
yyvsp
[
-
1
].
ttype
);
...
@@ -7351,98 +7351,98 @@ case 760:
...
@@ -7351,98 +7351,98 @@ case 760:
;
;
break
;}
break
;}
case
761
:
case
761
:
#line 339
6
"parse.y"
#line 339
8
"parse.y"
{
goto
do_label
;
;
{
goto
do_label
;
;
break
;}
break
;}
case
762
:
case
762
:
#line 3
398
"parse.y"
#line 3
400
"parse.y"
{
goto
do_label
;
;
{
goto
do_label
;
;
break
;}
break
;}
case
763
:
case
763
:
#line 340
0
"parse.y"
#line 340
2
"parse.y"
{
goto
do_label
;
;
{
goto
do_label
;
;
break
;}
break
;}
case
764
:
case
764
:
#line 340
5
"parse.y"
#line 340
7
"parse.y"
{
if
(
yyvsp
[
-
1
].
ttype
)
cplus_expand_expr_stmt
(
yyvsp
[
-
1
].
ttype
);
;
{
if
(
yyvsp
[
-
1
].
ttype
)
cplus_expand_expr_stmt
(
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
766
:
case
766
:
#line 34
08
"parse.y"
#line 34
10
"parse.y"
{
if
(
pedantic
)
{
if
(
pedantic
)
pedwarn
(
"ANSI C++ forbids compound statements inside for initializations"
);
pedwarn
(
"ANSI C++ forbids compound statements inside for initializations"
);
;
;
break
;}
break
;}
case
767
:
case
767
:
#line 341
7
"parse.y"
#line 341
9
"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
768
:
case
768
:
#line 342
0
"parse.y"
#line 342
2
"parse.y"
{
emit_line_note
(
input_filename
,
lineno
);
;
{
emit_line_note
(
input_filename
,
lineno
);
;
break
;}
break
;}
case
769
:
case
769
:
#line 342
5
"parse.y"
#line 342
7
"parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
771
:
case
771
:
#line 34
28
"parse.y"
#line 34
30
"parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
772
:
case
772
:
#line 343
5
"parse.y"
#line 343
7
"parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
775
:
case
775
:
#line 344
2
"parse.y"
#line 344
4
"parse.y"
{
yyval
.
ttype
=
chainon
(
yyval
.
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
chainon
(
yyval
.
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
776
:
case
776
:
#line 344
7
"parse.y"
#line 344
9
"parse.y"
{
yyval
.
ttype
=
build_tree_list
(
yyval
.
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
build_tree_list
(
yyval
.
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
777
:
case
777
:
#line 345
2
"parse.y"
#line 345
4
"parse.y"
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyval
.
ttype
,
NULL_TREE
);
;
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyval
.
ttype
,
NULL_TREE
);
;
break
;}
break
;}
case
778
:
case
778
:
#line 345
4
"parse.y"
#line 345
6
"parse.y"
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyval
.
ttype
);
;
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ttype
,
yyval
.
ttype
);
;
break
;}
break
;}
case
779
:
case
779
:
#line 346
5
"parse.y"
#line 346
7
"parse.y"
{
{
yyval
.
ttype
=
empty_parms
();
yyval
.
ttype
=
empty_parms
();
;
;
break
;}
break
;}
case
781
:
case
781
:
#line 347
0
"parse.y"
#line 347
2
"parse.y"
{
yyval
.
ttype
=
finish_parmlist
(
build_tree_list
(
NULL_TREE
,
yyvsp
[
0
].
ftype
.
t
),
0
);
{
yyval
.
ttype
=
finish_parmlist
(
build_tree_list
(
NULL_TREE
,
yyvsp
[
0
].
ftype
.
t
),
0
);
check_for_new_type
(
"inside parameter list"
,
yyvsp
[
0
].
ftype
);
;
check_for_new_type
(
"inside parameter list"
,
yyvsp
[
0
].
ftype
);
;
break
;}
break
;}
case
782
:
case
782
:
#line 34
78
"parse.y"
#line 34
80
"parse.y"
{
yyval
.
ttype
=
finish_parmlist
(
yyval
.
ttype
,
0
);
;
{
yyval
.
ttype
=
finish_parmlist
(
yyval
.
ttype
,
0
);
;
break
;}
break
;}
case
783
:
case
783
:
#line 348
0
"parse.y"
#line 348
2
"parse.y"
{
yyval
.
ttype
=
finish_parmlist
(
yyvsp
[
-
1
].
ttype
,
1
);
;
{
yyval
.
ttype
=
finish_parmlist
(
yyvsp
[
-
1
].
ttype
,
1
);
;
break
;}
break
;}
case
784
:
case
784
:
#line 348
3
"parse.y"
#line 348
5
"parse.y"
{
yyval
.
ttype
=
finish_parmlist
(
yyvsp
[
-
1
].
ttype
,
1
);
;
{
yyval
.
ttype
=
finish_parmlist
(
yyvsp
[
-
1
].
ttype
,
1
);
;
break
;}
break
;}
case
785
:
case
785
:
#line 348
5
"parse.y"
#line 348
7
"parse.y"
{
yyval
.
ttype
=
finish_parmlist
(
build_tree_list
(
NULL_TREE
,
{
yyval
.
ttype
=
finish_parmlist
(
build_tree_list
(
NULL_TREE
,
yyvsp
[
-
1
].
ftype
.
t
),
1
);
;
yyvsp
[
-
1
].
ftype
.
t
),
1
);
;
break
;}
break
;}
case
786
:
case
786
:
#line 34
88
"parse.y"
#line 34
90
"parse.y"
{
yyval
.
ttype
=
finish_parmlist
(
NULL_TREE
,
1
);
;
{
yyval
.
ttype
=
finish_parmlist
(
NULL_TREE
,
1
);
;
break
;}
break
;}
case
787
:
case
787
:
#line 349
0
"parse.y"
#line 349
2
"parse.y"
{
{
/* This helps us recover from really nasty
/* This helps us recover from really nasty
parse errors, for example, a missing right
parse errors, for example, a missing right
...
@@ -7454,7 +7454,7 @@ case 787:
...
@@ -7454,7 +7454,7 @@ case 787:
;
;
break
;}
break
;}
case
788
:
case
788
:
#line 350
0
"parse.y"
#line 350
2
"parse.y"
{
{
/* This helps us recover from really nasty
/* This helps us recover from really nasty
parse errors, for example, a missing right
parse errors, for example, a missing right
...
@@ -7467,98 +7467,98 @@ case 788:
...
@@ -7467,98 +7467,98 @@ case 788:
;
;
break
;}
break
;}
case
789
:
case
789
:
#line 351
5
"parse.y"
#line 351
7
"parse.y"
{
maybe_snarf_defarg
();
;
{
maybe_snarf_defarg
();
;
break
;}
break
;}
case
790
:
case
790
:
#line 351
7
"parse.y"
#line 351
9
"parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
793
:
case
793
:
#line 35
28
"parse.y"
#line 35
30
"parse.y"
{
check_for_new_type
(
"in a parameter list"
,
yyvsp
[
0
].
ftype
);
{
check_for_new_type
(
"in a parameter list"
,
yyvsp
[
0
].
ftype
);
yyval
.
ttype
=
build_tree_list
(
NULL_TREE
,
yyvsp
[
0
].
ftype
.
t
);
;
yyval
.
ttype
=
build_tree_list
(
NULL_TREE
,
yyvsp
[
0
].
ftype
.
t
);
;
break
;}
break
;}
case
794
:
case
794
:
#line 353
1
"parse.y"
#line 353
3
"parse.y"
{
check_for_new_type
(
"in a parameter list"
,
yyvsp
[
-
1
].
ftype
);
{
check_for_new_type
(
"in a parameter list"
,
yyvsp
[
-
1
].
ftype
);
yyval
.
ttype
=
build_tree_list
(
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ftype
.
t
);
;
yyval
.
ttype
=
build_tree_list
(
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ftype
.
t
);
;
break
;}
break
;}
case
795
:
case
795
:
#line 353
4
"parse.y"
#line 353
6
"parse.y"
{
check_for_new_type
(
"in a parameter list"
,
yyvsp
[
0
].
ftype
);
{
check_for_new_type
(
"in a parameter list"
,
yyvsp
[
0
].
ftype
);
yyval
.
ttype
=
chainon
(
yyval
.
ttype
,
yyvsp
[
0
].
ftype
.
t
);
;
yyval
.
ttype
=
chainon
(
yyval
.
ttype
,
yyvsp
[
0
].
ftype
.
t
);
;
break
;}
break
;}
case
796
:
case
796
:
#line 353
7
"parse.y"
#line 353
9
"parse.y"
{
yyval
.
ttype
=
chainon
(
yyval
.
ttype
,
build_tree_list
(
NULL_TREE
,
yyvsp
[
0
].
ttype
));
;
{
yyval
.
ttype
=
chainon
(
yyval
.
ttype
,
build_tree_list
(
NULL_TREE
,
yyvsp
[
0
].
ttype
));
;
break
;}
break
;}
case
797
:
case
797
:
#line 35
39
"parse.y"
#line 35
41
"parse.y"
{
yyval
.
ttype
=
chainon
(
yyval
.
ttype
,
build_tree_list
(
yyvsp
[
0
].
ttype
,
yyvsp
[
-
2
].
ttype
));
;
{
yyval
.
ttype
=
chainon
(
yyval
.
ttype
,
build_tree_list
(
yyvsp
[
0
].
ttype
,
yyvsp
[
-
2
].
ttype
));
;
break
;}
break
;}
case
799
:
case
799
:
#line 354
5
"parse.y"
#line 354
7
"parse.y"
{
check_for_new_type
(
"in a parameter list"
,
yyvsp
[
-
1
].
ftype
);
{
check_for_new_type
(
"in a parameter list"
,
yyvsp
[
-
1
].
ftype
);
yyval
.
ttype
=
build_tree_list
(
NULL_TREE
,
yyvsp
[
-
1
].
ftype
.
t
);
;
yyval
.
ttype
=
build_tree_list
(
NULL_TREE
,
yyvsp
[
-
1
].
ftype
.
t
);
;
break
;}
break
;}
case
800
:
case
800
:
#line 355
5
"parse.y"
#line 355
7
"parse.y"
{
tree
specs
=
strip_attrs
(
yyvsp
[
-
1
].
ftype
.
t
);
{
tree
specs
=
strip_attrs
(
yyvsp
[
-
1
].
ftype
.
t
);
yyval
.
ftype
.
new_type_flag
=
yyvsp
[
-
1
].
ftype
.
new_type_flag
;
yyval
.
ftype
.
new_type_flag
=
yyvsp
[
-
1
].
ftype
.
new_type_flag
;
yyval
.
ftype
.
t
=
build_tree_list
(
specs
,
yyvsp
[
0
].
ttype
);
;
yyval
.
ftype
.
t
=
build_tree_list
(
specs
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
801
:
case
801
:
#line 35
59
"parse.y"
#line 35
61
"parse.y"
{
yyval
.
ftype
.
t
=
build_tree_list
(
yyvsp
[
-
1
].
ftype
.
t
,
yyvsp
[
0
].
ttype
);
{
yyval
.
ftype
.
t
=
build_tree_list
(
yyvsp
[
-
1
].
ftype
.
t
,
yyvsp
[
0
].
ttype
);
yyval
.
ftype
.
new_type_flag
=
yyvsp
[
-
1
].
ftype
.
new_type_flag
;
;
yyval
.
ftype
.
new_type_flag
=
yyvsp
[
-
1
].
ftype
.
new_type_flag
;
;
break
;}
break
;}
case
802
:
case
802
:
#line 356
2
"parse.y"
#line 356
4
"parse.y"
{
yyval
.
ftype
.
t
=
build_tree_list
(
get_decl_list
(
yyvsp
[
-
1
].
ftype
.
t
),
yyvsp
[
0
].
ttype
);
{
yyval
.
ftype
.
t
=
build_tree_list
(
get_decl_list
(
yyvsp
[
-
1
].
ftype
.
t
),
yyvsp
[
0
].
ttype
);
yyval
.
ftype
.
new_type_flag
=
yyvsp
[
-
1
].
ftype
.
new_type_flag
;
;
yyval
.
ftype
.
new_type_flag
=
yyvsp
[
-
1
].
ftype
.
new_type_flag
;
;
break
;}
break
;}
case
803
:
case
803
:
#line 356
5
"parse.y"
#line 356
7
"parse.y"
{
tree
specs
=
strip_attrs
(
yyvsp
[
-
1
].
ftype
.
t
);
{
tree
specs
=
strip_attrs
(
yyvsp
[
-
1
].
ftype
.
t
);
yyval
.
ftype
.
t
=
build_tree_list
(
specs
,
yyvsp
[
0
].
ttype
);
yyval
.
ftype
.
t
=
build_tree_list
(
specs
,
yyvsp
[
0
].
ttype
);
yyval
.
ftype
.
new_type_flag
=
yyvsp
[
-
1
].
ftype
.
new_type_flag
;
;
yyval
.
ftype
.
new_type_flag
=
yyvsp
[
-
1
].
ftype
.
new_type_flag
;
;
break
;}
break
;}
case
804
:
case
804
:
#line 35
69
"parse.y"
#line 35
71
"parse.y"
{
tree
specs
=
strip_attrs
(
yyvsp
[
0
].
ftype
.
t
);
{
tree
specs
=
strip_attrs
(
yyvsp
[
0
].
ftype
.
t
);
yyval
.
ftype
.
t
=
build_tree_list
(
specs
,
NULL_TREE
);
yyval
.
ftype
.
t
=
build_tree_list
(
specs
,
NULL_TREE
);
yyval
.
ftype
.
new_type_flag
=
yyvsp
[
0
].
ftype
.
new_type_flag
;
;
yyval
.
ftype
.
new_type_flag
=
yyvsp
[
0
].
ftype
.
new_type_flag
;
;
break
;}
break
;}
case
805
:
case
805
:
#line 357
3
"parse.y"
#line 357
5
"parse.y"
{
tree
specs
=
strip_attrs
(
yyvsp
[
-
1
].
ttype
);
{
tree
specs
=
strip_attrs
(
yyvsp
[
-
1
].
ttype
);
yyval
.
ftype
.
t
=
build_tree_list
(
specs
,
yyvsp
[
0
].
ttype
);
yyval
.
ftype
.
t
=
build_tree_list
(
specs
,
yyvsp
[
0
].
ttype
);
yyval
.
ftype
.
new_type_flag
=
0
;
;
yyval
.
ftype
.
new_type_flag
=
0
;
;
break
;}
break
;}
case
806
:
case
806
:
#line 358
0
"parse.y"
#line 358
2
"parse.y"
{
yyval
.
ftype
.
t
=
build_tree_list
(
NULL_TREE
,
yyvsp
[
0
].
ftype
.
t
);
{
yyval
.
ftype
.
t
=
build_tree_list
(
NULL_TREE
,
yyvsp
[
0
].
ftype
.
t
);
yyval
.
ftype
.
new_type_flag
=
yyvsp
[
0
].
ftype
.
new_type_flag
;
;
yyval
.
ftype
.
new_type_flag
=
yyvsp
[
0
].
ftype
.
new_type_flag
;
;
break
;}
break
;}
case
807
:
case
807
:
#line 358
3
"parse.y"
#line 358
5
"parse.y"
{
yyval
.
ftype
.
t
=
build_tree_list
(
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ftype
.
t
);
{
yyval
.
ftype
.
t
=
build_tree_list
(
yyvsp
[
0
].
ttype
,
yyvsp
[
-
1
].
ftype
.
t
);
yyval
.
ftype
.
new_type_flag
=
yyvsp
[
-
1
].
ftype
.
new_type_flag
;
;
yyval
.
ftype
.
new_type_flag
=
yyvsp
[
-
1
].
ftype
.
new_type_flag
;
;
break
;}
break
;}
case
810
:
case
810
:
#line 359
4
"parse.y"
#line 359
6
"parse.y"
{
see_typename
();
;
{
see_typename
();
;
break
;}
break
;}
case
811
:
case
811
:
#line 3
599
"parse.y"
#line 3
601
"parse.y"
{
{
error
(
"type specifier omitted for parameter"
);
error
(
"type specifier omitted for parameter"
);
yyval
.
ttype
=
build_tree_list
(
integer_type_node
,
NULL_TREE
);
yyval
.
ttype
=
build_tree_list
(
integer_type_node
,
NULL_TREE
);
;
;
break
;}
break
;}
case
812
:
case
812
:
#line 360
4
"parse.y"
#line 360
6
"parse.y"
{
{
error
(
"type specifier omitted for parameter"
);
error
(
"type specifier omitted for parameter"
);
if
(
TREE_CODE
(
yyval
.
ttype
)
==
SCOPE_REF
if
(
TREE_CODE
(
yyval
.
ttype
)
==
SCOPE_REF
...
@@ -7569,188 +7569,188 @@ case 812:
...
@@ -7569,188 +7569,188 @@ case 812:
;
;
break
;}
break
;}
case
813
:
case
813
:
#line 361
6
"parse.y"
#line 361
8
"parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
814
:
case
814
:
#line 36
18
"parse.y"
#line 36
20
"parse.y"
{
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
;
break
;}
break
;}
case
815
:
case
815
:
#line 362
0
"parse.y"
#line 362
2
"parse.y"
{
yyval
.
ttype
=
build_decl_list
(
NULL_TREE
,
NULL_TREE
);
;
{
yyval
.
ttype
=
build_decl_list
(
NULL_TREE
,
NULL_TREE
);
;
break
;}
break
;}
case
816
:
case
816
:
#line 362
5
"parse.y"
#line 362
7
"parse.y"
{
yyval
.
ttype
=
build_decl_list
(
NULL_TREE
,
groktypename
(
yyvsp
[
0
].
ftype
.
t
));
;
{
yyval
.
ttype
=
build_decl_list
(
NULL_TREE
,
groktypename
(
yyvsp
[
0
].
ftype
.
t
));
;
break
;}
break
;}
case
818
:
case
818
:
#line 363
1
"parse.y"
#line 363
3
"parse.y"
{
{
TREE_CHAIN
(
yyvsp
[
0
].
ttype
)
=
yyval
.
ttype
;
TREE_CHAIN
(
yyvsp
[
0
].
ttype
)
=
yyval
.
ttype
;
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
;
break
;}
break
;}
case
819
:
case
819
:
#line 36
39
"parse.y"
#line 36
41
"parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
820
:
case
820
:
#line 364
1
"parse.y"
#line 364
3
"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
821
:
case
821
:
#line 364
3
"parse.y"
#line 364
5
"parse.y"
{
yyval
.
ttype
=
make_reference_declarator
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
make_reference_declarator
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
822
:
case
822
:
#line 364
5
"parse.y"
#line 364
7
"parse.y"
{
tree
arg
=
make_pointer_declarator
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
{
tree
arg
=
make_pointer_declarator
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
yyval
.
ttype
=
build_parse_node
(
SCOPE_REF
,
yyvsp
[
-
2
].
ttype
,
arg
);
yyval
.
ttype
=
build_parse_node
(
SCOPE_REF
,
yyvsp
[
-
2
].
ttype
,
arg
);
;
;
break
;}
break
;}
case
823
:
case
823
:
#line 365
2
"parse.y"
#line 365
4
"parse.y"
{
got_scope
=
NULL_TREE
;
;
{
got_scope
=
NULL_TREE
;
;
break
;}
break
;}
case
824
:
case
824
:
#line 365
7
"parse.y"
#line 365
9
"parse.y"
{
yyval
.
ttype
=
ansi_opname
[
MULT_EXPR
];
;
{
yyval
.
ttype
=
ansi_opname
[
MULT_EXPR
];
;
break
;}
break
;}
case
825
:
case
825
:
#line 36
59
"parse.y"
#line 36
61
"parse.y"
{
yyval
.
ttype
=
ansi_opname
[
TRUNC_DIV_EXPR
];
;
{
yyval
.
ttype
=
ansi_opname
[
TRUNC_DIV_EXPR
];
;
break
;}
break
;}
case
826
:
case
826
:
#line 366
1
"parse.y"
#line 366
3
"parse.y"
{
yyval
.
ttype
=
ansi_opname
[
TRUNC_MOD_EXPR
];
;
{
yyval
.
ttype
=
ansi_opname
[
TRUNC_MOD_EXPR
];
;
break
;}
break
;}
case
827
:
case
827
:
#line 366
3
"parse.y"
#line 366
5
"parse.y"
{
yyval
.
ttype
=
ansi_opname
[
PLUS_EXPR
];
;
{
yyval
.
ttype
=
ansi_opname
[
PLUS_EXPR
];
;
break
;}
break
;}
case
828
:
case
828
:
#line 366
5
"parse.y"
#line 366
7
"parse.y"
{
yyval
.
ttype
=
ansi_opname
[
MINUS_EXPR
];
;
{
yyval
.
ttype
=
ansi_opname
[
MINUS_EXPR
];
;
break
;}
break
;}
case
829
:
case
829
:
#line 366
7
"parse.y"
#line 366
9
"parse.y"
{
yyval
.
ttype
=
ansi_opname
[
BIT_AND_EXPR
];
;
{
yyval
.
ttype
=
ansi_opname
[
BIT_AND_EXPR
];
;
break
;}
break
;}
case
830
:
case
830
:
#line 36
69
"parse.y"
#line 36
71
"parse.y"
{
yyval
.
ttype
=
ansi_opname
[
BIT_IOR_EXPR
];
;
{
yyval
.
ttype
=
ansi_opname
[
BIT_IOR_EXPR
];
;
break
;}
break
;}
case
831
:
case
831
:
#line 367
1
"parse.y"
#line 367
3
"parse.y"
{
yyval
.
ttype
=
ansi_opname
[
BIT_XOR_EXPR
];
;
{
yyval
.
ttype
=
ansi_opname
[
BIT_XOR_EXPR
];
;
break
;}
break
;}
case
832
:
case
832
:
#line 367
3
"parse.y"
#line 367
5
"parse.y"
{
yyval
.
ttype
=
ansi_opname
[
BIT_NOT_EXPR
];
;
{
yyval
.
ttype
=
ansi_opname
[
BIT_NOT_EXPR
];
;
break
;}
break
;}
case
833
:
case
833
:
#line 367
5
"parse.y"
#line 367
7
"parse.y"
{
yyval
.
ttype
=
ansi_opname
[
COMPOUND_EXPR
];
;
{
yyval
.
ttype
=
ansi_opname
[
COMPOUND_EXPR
];
;
break
;}
break
;}
case
834
:
case
834
:
#line 367
7
"parse.y"
#line 367
9
"parse.y"
{
yyval
.
ttype
=
ansi_opname
[
yyvsp
[
0
].
code
];
;
{
yyval
.
ttype
=
ansi_opname
[
yyvsp
[
0
].
code
];
;
break
;}
break
;}
case
835
:
case
835
:
#line 36
79
"parse.y"
#line 36
81
"parse.y"
{
yyval
.
ttype
=
ansi_opname
[
LT_EXPR
];
;
{
yyval
.
ttype
=
ansi_opname
[
LT_EXPR
];
;
break
;}
break
;}
case
836
:
case
836
:
#line 368
1
"parse.y"
#line 368
3
"parse.y"
{
yyval
.
ttype
=
ansi_opname
[
GT_EXPR
];
;
{
yyval
.
ttype
=
ansi_opname
[
GT_EXPR
];
;
break
;}
break
;}
case
837
:
case
837
:
#line 368
3
"parse.y"
#line 368
5
"parse.y"
{
yyval
.
ttype
=
ansi_opname
[
yyvsp
[
0
].
code
];
;
{
yyval
.
ttype
=
ansi_opname
[
yyvsp
[
0
].
code
];
;
break
;}
break
;}
case
838
:
case
838
:
#line 368
5
"parse.y"
#line 368
7
"parse.y"
{
yyval
.
ttype
=
ansi_assopname
[
yyvsp
[
0
].
code
];
;
{
yyval
.
ttype
=
ansi_assopname
[
yyvsp
[
0
].
code
];
;
break
;}
break
;}
case
839
:
case
839
:
#line 368
7
"parse.y"
#line 368
9
"parse.y"
{
yyval
.
ttype
=
ansi_opname
[
MODIFY_EXPR
];
;
{
yyval
.
ttype
=
ansi_opname
[
MODIFY_EXPR
];
;
break
;}
break
;}
case
840
:
case
840
:
#line 36
89
"parse.y"
#line 36
91
"parse.y"
{
yyval
.
ttype
=
ansi_opname
[
yyvsp
[
0
].
code
];
;
{
yyval
.
ttype
=
ansi_opname
[
yyvsp
[
0
].
code
];
;
break
;}
break
;}
case
841
:
case
841
:
#line 369
1
"parse.y"
#line 369
3
"parse.y"
{
yyval
.
ttype
=
ansi_opname
[
yyvsp
[
0
].
code
];
;
{
yyval
.
ttype
=
ansi_opname
[
yyvsp
[
0
].
code
];
;
break
;}
break
;}
case
842
:
case
842
:
#line 369
3
"parse.y"
#line 369
5
"parse.y"
{
yyval
.
ttype
=
ansi_opname
[
POSTINCREMENT_EXPR
];
;
{
yyval
.
ttype
=
ansi_opname
[
POSTINCREMENT_EXPR
];
;
break
;}
break
;}
case
843
:
case
843
:
#line 369
5
"parse.y"
#line 369
7
"parse.y"
{
yyval
.
ttype
=
ansi_opname
[
PREDECREMENT_EXPR
];
;
{
yyval
.
ttype
=
ansi_opname
[
PREDECREMENT_EXPR
];
;
break
;}
break
;}
case
844
:
case
844
:
#line 369
7
"parse.y"
#line 369
9
"parse.y"
{
yyval
.
ttype
=
ansi_opname
[
TRUTH_ANDIF_EXPR
];
;
{
yyval
.
ttype
=
ansi_opname
[
TRUTH_ANDIF_EXPR
];
;
break
;}
break
;}
case
845
:
case
845
:
#line 3
699
"parse.y"
#line 3
701
"parse.y"
{
yyval
.
ttype
=
ansi_opname
[
TRUTH_ORIF_EXPR
];
;
{
yyval
.
ttype
=
ansi_opname
[
TRUTH_ORIF_EXPR
];
;
break
;}
break
;}
case
846
:
case
846
:
#line 370
1
"parse.y"
#line 370
3
"parse.y"
{
yyval
.
ttype
=
ansi_opname
[
TRUTH_NOT_EXPR
];
;
{
yyval
.
ttype
=
ansi_opname
[
TRUTH_NOT_EXPR
];
;
break
;}
break
;}
case
847
:
case
847
:
#line 370
3
"parse.y"
#line 370
5
"parse.y"
{
yyval
.
ttype
=
ansi_opname
[
COND_EXPR
];
;
{
yyval
.
ttype
=
ansi_opname
[
COND_EXPR
];
;
break
;}
break
;}
case
848
:
case
848
:
#line 370
5
"parse.y"
#line 370
7
"parse.y"
{
yyval
.
ttype
=
ansi_opname
[
yyvsp
[
0
].
code
];
;
{
yyval
.
ttype
=
ansi_opname
[
yyvsp
[
0
].
code
];
;
break
;}
break
;}
case
849
:
case
849
:
#line 370
7
"parse.y"
#line 370
9
"parse.y"
{
yyval
.
ttype
=
ansi_opname
[
COMPONENT_REF
];
;
{
yyval
.
ttype
=
ansi_opname
[
COMPONENT_REF
];
;
break
;}
break
;}
case
850
:
case
850
:
#line 37
09
"parse.y"
#line 37
11
"parse.y"
{
yyval
.
ttype
=
ansi_opname
[
MEMBER_REF
];
;
{
yyval
.
ttype
=
ansi_opname
[
MEMBER_REF
];
;
break
;}
break
;}
case
851
:
case
851
:
#line 371
1
"parse.y"
#line 371
3
"parse.y"
{
yyval
.
ttype
=
ansi_opname
[
CALL_EXPR
];
;
{
yyval
.
ttype
=
ansi_opname
[
CALL_EXPR
];
;
break
;}
break
;}
case
852
:
case
852
:
#line 371
3
"parse.y"
#line 371
5
"parse.y"
{
yyval
.
ttype
=
ansi_opname
[
ARRAY_REF
];
;
{
yyval
.
ttype
=
ansi_opname
[
ARRAY_REF
];
;
break
;}
break
;}
case
853
:
case
853
:
#line 371
5
"parse.y"
#line 371
7
"parse.y"
{
yyval
.
ttype
=
ansi_opname
[
NEW_EXPR
];
;
{
yyval
.
ttype
=
ansi_opname
[
NEW_EXPR
];
;
break
;}
break
;}
case
854
:
case
854
:
#line 371
7
"parse.y"
#line 371
9
"parse.y"
{
yyval
.
ttype
=
ansi_opname
[
DELETE_EXPR
];
;
{
yyval
.
ttype
=
ansi_opname
[
DELETE_EXPR
];
;
break
;}
break
;}
case
855
:
case
855
:
#line 37
19
"parse.y"
#line 37
21
"parse.y"
{
yyval
.
ttype
=
ansi_opname
[
VEC_NEW_EXPR
];
;
{
yyval
.
ttype
=
ansi_opname
[
VEC_NEW_EXPR
];
;
break
;}
break
;}
case
856
:
case
856
:
#line 372
1
"parse.y"
#line 372
3
"parse.y"
{
yyval
.
ttype
=
ansi_opname
[
VEC_DELETE_EXPR
];
;
{
yyval
.
ttype
=
ansi_opname
[
VEC_DELETE_EXPR
];
;
break
;}
break
;}
case
857
:
case
857
:
#line 372
4
"parse.y"
#line 372
6
"parse.y"
{
yyval
.
ttype
=
grokoptypename
(
yyvsp
[
-
1
].
ftype
.
t
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
grokoptypename
(
yyvsp
[
-
1
].
ftype
.
t
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
858
:
case
858
:
#line 372
6
"parse.y"
#line 372
8
"parse.y"
{
yyval
.
ttype
=
ansi_opname
[
ERROR_MARK
];
;
{
yyval
.
ttype
=
ansi_opname
[
ERROR_MARK
];
;
break
;}
break
;}
}
}
...
@@ -7951,7 +7951,7 @@ yyerrhandle:
...
@@ -7951,7 +7951,7 @@ yyerrhandle:
yystate
=
yyn
;
yystate
=
yyn
;
goto
yynewstate
;
goto
yynewstate
;
}
}
#line 37
29
"parse.y"
#line 37
31
"parse.y"
#ifdef SPEW_DEBUG
#ifdef SPEW_DEBUG
...
...
gcc/cp/typeck2.c
View file @
3551c177
...
@@ -1501,6 +1501,15 @@ build_functional_cast (exp, parms)
...
@@ -1501,6 +1501,15 @@ build_functional_cast (exp, parms)
if
(
parms
&&
TREE_CHAIN
(
parms
)
==
NULL_TREE
)
if
(
parms
&&
TREE_CHAIN
(
parms
)
==
NULL_TREE
)
return
build_c_cast
(
type
,
TREE_VALUE
(
parms
));
return
build_c_cast
(
type
,
TREE_VALUE
(
parms
));
/* We need to zero-initialize POD types. Let's do that for everything
that doesn't need a constructor. */
if
(
parms
==
NULL_TREE
&&
!
TYPE_NEEDS_CONSTRUCTING
(
type
)
&&
TYPE_HAS_DEFAULT_CONSTRUCTOR
(
type
))
{
exp
=
build
(
CONSTRUCTOR
,
type
,
NULL_TREE
,
NULL_TREE
);
return
get_target_expr
(
exp
);
}
exp
=
build_method_call
(
NULL_TREE
,
ctor_identifier
,
parms
,
exp
=
build_method_call
(
NULL_TREE
,
ctor_identifier
,
parms
,
TYPE_BINFO
(
type
),
LOOKUP_NORMAL
);
TYPE_BINFO
(
type
),
LOOKUP_NORMAL
);
...
...
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