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
8b1616ad
Commit
8b1616ad
authored
Mar 16, 1998
by
Mark Mitchell
Committed by
Mark Mitchell
Mar 16, 1998
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
* parse.y: Deal with CONSTRUCTORS in new_initializers.
From-SVN: r18620
parent
66bd0128
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
593 additions
and
587 deletions
+593
-587
gcc/cp/ChangeLog
+4
-0
gcc/cp/parse.c
+587
-586
gcc/cp/parse.y
+2
-1
No files found.
gcc/cp/ChangeLog
View file @
8b1616ad
Mon Mar 16 10:47:22 1998 Mark Mitchell <mmitchell@usa.net>
* parse.y: Deal with CONSTRUCTORS in new_initializers.
Mon Mar 16 10:54:21 1998 Mark Mitchell <mmitchell@usa.net>
Mon Mar 16 10:54:21 1998 Mark Mitchell <mmitchell@usa.net>
* pt.c (tsubst_copy): Deal with BIND_EXPR in a way that more
* pt.c (tsubst_copy): Deal with BIND_EXPR in a way that more
...
...
gcc/cp/parse.c
View file @
8b1616ad
...
@@ -654,69 +654,69 @@ static const short yyrline[] = { 0,
...
@@ -654,69 +654,69 @@ static const short yyrline[] = { 0,
1100
,
1103
,
1106
,
1110
,
1113
,
1115
,
1117
,
1119
,
1126
,
1139
,
1100
,
1103
,
1106
,
1110
,
1113
,
1115
,
1117
,
1119
,
1126
,
1139
,
1141
,
1143
,
1145
,
1151
,
1154
,
1157
,
1160
,
1163
,
1167
,
1170
,
1141
,
1143
,
1145
,
1151
,
1154
,
1157
,
1160
,
1163
,
1167
,
1170
,
1173
,
1177
,
1179
,
1183
,
1187
,
1189
,
1193
,
1196
,
1203
,
1206
,
1173
,
1177
,
1179
,
1183
,
1187
,
1189
,
1193
,
1196
,
1203
,
1206
,
1208
,
1216
,
122
8
,
1234
,
1241
,
1243
,
1245
,
1258
,
1261
,
1263
,
1208
,
1216
,
122
9
,
1235
,
1242
,
1244
,
1246
,
1259
,
1262
,
1264
,
126
5
,
1267
,
1269
,
1271
,
1273
,
1275
,
1277
,
1279
,
1281
,
1283
,
126
6
,
1268
,
1270
,
1272
,
1274
,
1276
,
1278
,
1280
,
1282
,
1284
,
128
5
,
1287
,
1289
,
1291
,
1293
,
1295
,
1297
,
1299
,
1301
,
1305
,
128
6
,
1288
,
1290
,
1292
,
1294
,
1296
,
1298
,
1300
,
1302
,
1306
,
130
7
,
1309
,
1326
,
1329
,
1330
,
1331
,
1332
,
1333
,
1336
,
1339
,
130
8
,
1310
,
1327
,
1330
,
1331
,
1332
,
1333
,
1334
,
1337
,
1340
,
134
2
,
1346
,
1349
,
1351
,
1356
,
1358
,
1359
,
1362
,
1364
,
1366
,
134
3
,
1347
,
1350
,
1352
,
1357
,
1359
,
1360
,
1363
,
1365
,
1367
,
136
8
,
1372
,
1375
,
1379
,
1381
,
1382
,
1383
,
1387
,
1395
,
1396
,
136
9
,
1373
,
1376
,
1380
,
1382
,
1383
,
1384
,
1388
,
1396
,
1397
,
139
7
,
1405
,
1413
,
1421
,
1423
,
1435
,
1465
,
1472
,
1479
,
1481
,
139
8
,
1406
,
1414
,
1422
,
1424
,
1436
,
1466
,
1473
,
1480
,
1482
,
149
0
,
1495
,
1518
,
1562
,
1563
,
1567
,
1571
,
1575
,
1579
,
1581
,
149
1
,
1496
,
1519
,
1563
,
1564
,
1568
,
1572
,
1576
,
1580
,
1582
,
158
5
,
1587
,
1595
,
1597
,
1602
,
1608
,
1612
,
1617
,
1622
,
1624
,
158
6
,
1588
,
1596
,
1598
,
1603
,
1609
,
1613
,
1618
,
1623
,
1625
,
16
29
,
1644
,
1659
,
1670
,
1682
,
1690
,
1699
,
1743
,
1746
,
1750
,
16
30
,
1645
,
1660
,
1671
,
1683
,
1691
,
1700
,
1744
,
1747
,
1751
,
175
3
,
1757
,
1760
,
1765
,
1767
,
1771
,
1784
,
1787
,
1794
,
1801
,
175
4
,
1758
,
1761
,
1766
,
1768
,
1772
,
1785
,
1788
,
1795
,
1802
,
180
6
,
1808
,
1813
,
1815
,
1822
,
1824
,
1828
,
1832
,
1838
,
1842
,
180
7
,
1809
,
1814
,
1816
,
1823
,
1825
,
1829
,
1833
,
1839
,
1843
,
184
5
,
1848
,
1851
,
1861
,
1863
,
1866
,
1870
,
1873
,
1876
,
1879
,
184
6
,
1849
,
1852
,
1862
,
1864
,
1867
,
1871
,
1874
,
1877
,
1880
,
188
2
,
1888
,
1894
,
1896
,
1901
,
1903
,
1912
,
1915
,
1917
,
1920
,
188
3
,
1889
,
1895
,
1897
,
1902
,
1904
,
1913
,
1916
,
1918
,
1921
,
192
6
,
1928
,
1938
,
1942
,
1945
,
1948
,
1953
,
1956
,
1964
,
1966
,
192
7
,
1929
,
1939
,
1943
,
1946
,
1949
,
1954
,
1957
,
1965
,
1967
,
196
8
,
1970
,
1973
,
1976
,
1991
,
2010
,
2013
,
2015
,
2018
,
2020
,
196
9
,
1971
,
1974
,
1977
,
1992
,
2011
,
2014
,
2016
,
2019
,
2021
,
202
3
,
2025
,
2028
,
2030
,
2033
,
2036
,
2040
,
2046
,
2047
,
2058
,
202
4
,
2026
,
2029
,
2031
,
2034
,
2037
,
2041
,
2047
,
2048
,
2059
,
206
5
,
2067
,
2073
,
2077
,
2082
,
2088
,
2089
,
2096
,
2099
,
2103
,
206
6
,
2068
,
2074
,
2078
,
2083
,
2089
,
2090
,
2097
,
2100
,
2104
,
210
6
,
2110
,
2115
,
2118
,
2122
,
2125
,
2127
,
2129
,
2131
,
2138
,
210
7
,
2111
,
2116
,
2119
,
2123
,
2126
,
2128
,
2130
,
2132
,
2139
,
214
0
,
2141
,
2142
,
2146
,
2149
,
2153
,
2156
,
2162
,
2164
,
2167
,
214
1
,
2142
,
2143
,
2147
,
2150
,
2154
,
2157
,
2163
,
2165
,
2168
,
217
0
,
2173
,
2179
,
2182
,
2185
,
2187
,
2189
,
2193
,
2199
,
2207
,
217
1
,
2174
,
2180
,
2183
,
2186
,
2188
,
2190
,
2194
,
2200
,
2208
,
22
09
,
2213
,
2215
,
2220
,
2223
,
2226
,
2228
,
2230
,
2234
,
2238
,
22
10
,
2214
,
2216
,
2221
,
2224
,
2227
,
2229
,
2231
,
2235
,
2239
,
224
3
,
2247
,
2250
,
2255
,
2259
,
2262
,
2265
,
2269
,
2304
,
2310
,
224
4
,
2248
,
2251
,
2256
,
2260
,
2263
,
2266
,
2270
,
2305
,
2311
,
23
19
,
2339
,
2341
,
2344
,
2346
,
2351
,
2353
,
2355
,
2357
,
2359
,
23
20
,
2340
,
2342
,
2345
,
2347
,
2352
,
2354
,
2356
,
2358
,
2360
,
236
3
,
2368
,
2373
,
2379
,
2384
,
2389
,
2391
,
2395
,
2400
,
2403
,
236
4
,
2369
,
2374
,
2380
,
2385
,
2390
,
2392
,
2396
,
2401
,
2404
,
241
0
,
2438
,
2444
,
2446
,
2449
,
2452
,
2454
,
2458
,
2460
,
2464
,
241
1
,
2439
,
2445
,
2447
,
2450
,
2453
,
2455
,
2459
,
2461
,
2465
,
249
0
,
2519
,
2522
,
2523
,
2544
,
2567
,
2569
,
2573
,
2584
,
2598
,
249
1
,
2520
,
2523
,
2524
,
2545
,
2568
,
2570
,
2574
,
2585
,
2599
,
268
7
,
2694
,
2697
,
2705
,
2716
,
2725
,
2729
,
2744
,
2747
,
2752
,
268
8
,
2695
,
2698
,
2706
,
2717
,
2726
,
2730
,
2745
,
2748
,
2753
,
275
4
,
2756
,
2758
,
2760
,
2762
,
2765
,
2767
,
2775
,
2781
,
2783
,
275
5
,
2757
,
2759
,
2761
,
2763
,
2766
,
2768
,
2776
,
2782
,
2784
,
278
6
,
2789
,
2791
,
2802
,
2807
,
2810
,
2815
,
2818
,
2819
,
2830
,
278
7
,
2790
,
2792
,
2803
,
2808
,
2811
,
2816
,
2819
,
2820
,
2831
,
283
3
,
2834
,
2845
,
2847
,
2850
,
2852
,
2855
,
2862
,
2870
,
2877
,
283
4
,
2835
,
2846
,
2848
,
2851
,
2853
,
2856
,
2863
,
2871
,
2878
,
288
3
,
2889
,
2897
,
2901
,
2906
,
2910
,
2913
,
2922
,
2924
,
2928
,
288
4
,
2890
,
2898
,
2902
,
2907
,
2911
,
2914
,
2923
,
2925
,
2929
,
293
1
,
2936
,
2940
,
2945
,
2955
,
2958
,
2962
,
2966
,
2974
,
2979
,
293
2
,
2937
,
2941
,
2946
,
2956
,
2959
,
2963
,
2967
,
2975
,
2980
,
298
5
,
2988
,
2990
,
2992
,
2998
,
3001
,
3003
,
3005
,
3007
,
3011
,
298
6
,
2989
,
2991
,
2993
,
2999
,
3002
,
3004
,
3006
,
3008
,
3012
,
301
4
,
3032
,
3042
,
3044
,
3045
,
3049
,
3054
,
3057
,
3059
,
3061
,
301
5
,
3033
,
3043
,
3045
,
3046
,
3050
,
3055
,
3058
,
3060
,
3062
,
306
3
,
3067
,
3073
,
3076
,
3078
,
3080
,
3082
,
3086
,
3089
,
3092
,
306
4
,
3068
,
3074
,
3077
,
3079
,
3081
,
3083
,
3087
,
3090
,
3093
,
309
4
,
3096
,
3098
,
3102
,
3105
,
3108
,
3110
,
3112
,
3114
,
3121
,
309
5
,
3097
,
3099
,
3103
,
3106
,
3109
,
3111
,
3113
,
3115
,
3122
,
313
2
,
3136
,
3141
,
3145
,
3150
,
3152
,
3156
,
3159
,
3161
,
3165
,
313
3
,
3137
,
3142
,
3146
,
3151
,
3153
,
3157
,
3160
,
3162
,
3166
,
316
7
,
3168
,
3171
,
3173
,
3175
,
3181
,
3196
,
3202
,
3208
,
3222
,
316
8
,
3169
,
3172
,
3174
,
3176
,
3182
,
3197
,
3203
,
3209
,
3223
,
322
4
,
3228
,
3242
,
3244
,
3246
,
3250
,
3256
,
3269
,
3271
,
3275
,
322
5
,
3229
,
3243
,
3245
,
3247
,
3251
,
3257
,
3270
,
3272
,
3276
,
328
6
,
3292
,
3294
,
3295
,
3296
,
3304
,
3309
,
3318
,
3319
,
3323
,
328
7
,
3293
,
3295
,
3296
,
3297
,
3305
,
3310
,
3319
,
3320
,
3324
,
332
6
,
3332
,
3338
,
3341
,
3343
,
3345
,
3347
,
3351
,
3355
,
3359
,
332
7
,
3333
,
3339
,
3342
,
3344
,
3346
,
3348
,
3352
,
3356
,
3360
,
336
2
,
3367
,
3370
,
3372
,
3374
,
3376
,
3378
,
3380
,
3382
,
3384
,
336
3
,
3368
,
3371
,
3373
,
3375
,
3377
,
3379
,
3381
,
3383
,
3385
,
338
8
,
3392
,
3396
,
3400
,
3401
,
3403
,
3405
,
3407
,
3409
,
3411
,
338
9
,
3393
,
3397
,
3401
,
3402
,
3404
,
3406
,
3408
,
3410
,
3412
,
341
3
,
3415
,
3417
,
3425
,
3427
,
3428
,
3429
,
3432
,
3440
,
3445
,
341
4
,
3416
,
3418
,
3426
,
3428
,
3429
,
3430
,
3433
,
3441
,
3446
,
345
2
,
3454
,
3459
,
3461
,
3464
,
3478
,
3481
,
3484
,
3493
,
3505
,
345
3
,
3455
,
3460
,
3462
,
3465
,
3479
,
3482
,
3485
,
3494
,
3506
,
351
6
,
3536
,
3546
,
3549
,
3557
,
3569
,
3572
,
3575
,
3578
,
3594
,
351
7
,
3537
,
3547
,
3550
,
3558
,
3570
,
3573
,
3576
,
3579
,
3595
,
359
7
,
3608
,
3609
,
3613
,
3628
,
3656
,
3668
,
3682
,
3696
,
3709
,
359
8
,
3609
,
3610
,
3614
,
3629
,
3657
,
3669
,
3683
,
3697
,
3710
,
372
8
,
3746
,
3774
,
3782
,
3803
,
3821
,
3834
,
3835
,
3838
,
3838
,
372
9
,
3747
,
3775
,
3783
,
3804
,
3822
,
3835
,
3836
,
3839
,
3839
,
384
1
,
3841
,
3844
,
3844
,
3850
,
3856
,
3859
,
3864
,
3871
,
3880
,
384
2
,
3842
,
3845
,
3845
,
3851
,
3857
,
3860
,
3865
,
3872
,
3881
,
38
89
,
3898
,
3906
,
3919
,
3921
,
3925
,
3927
,
3930
,
3937
,
3940
,
38
90
,
3899
,
3907
,
3920
,
3922
,
3926
,
3928
,
3931
,
3938
,
3941
,
394
8
,
3964
,
3975
,
3987
,
3989
,
3992
,
4002
,
4012
,
4023
,
4025
,
394
9
,
3965
,
3976
,
3988
,
3990
,
3993
,
4003
,
4013
,
4024
,
4026
,
402
7
,
4030
,
4047
,
4053
,
4061
,
4063
,
4065
,
4069
,
4072
,
4073
,
402
8
,
4031
,
4048
,
4054
,
4062
,
4064
,
4066
,
4070
,
4073
,
4074
,
408
1
,
4085
,
4089
,
4092
,
4093
,
4099
,
4102
,
4105
,
4107
,
4111
,
408
2
,
4086
,
4090
,
4093
,
4094
,
4100
,
4103
,
4106
,
4108
,
4112
,
411
6
,
4119
,
4129
,
4134
,
4135
,
4143
,
4149
,
4154
,
4158
,
4163
,
411
7
,
4120
,
4130
,
4135
,
4136
,
4144
,
4150
,
4155
,
4159
,
4164
,
416
7
,
4171
,
4175
,
4180
,
4191
,
4205
,
4209
,
4212
,
4214
,
4218
,
416
8
,
4172
,
4176
,
4181
,
4192
,
4206
,
4210
,
4213
,
4215
,
4219
,
422
2
,
4225
,
4228
,
4230
,
4234
,
4236
,
4243
,
4250
,
4253
,
4256
,
422
3
,
4226
,
4229
,
4231
,
4235
,
4237
,
4244
,
4251
,
4254
,
4257
,
426
0
,
4264
,
4270
,
4274
,
4279
,
4281
,
4284
,
4289
,
4295
,
4306
,
426
1
,
4265
,
4271
,
4275
,
4280
,
4282
,
4285
,
4290
,
4296
,
4307
,
43
09
,
4311
,
4315
,
4320
,
4322
,
4329
,
4332
,
4334
,
4336
,
4342
,
43
10
,
4312
,
4316
,
4321
,
4323
,
4330
,
4333
,
4335
,
4337
,
4343
,
434
7
,
4350
,
4352
,
4354
,
4356
,
4358
,
4360
,
4362
,
4364
,
4366
,
434
8
,
4351
,
4353
,
4355
,
4357
,
4359
,
4361
,
4363
,
4365
,
4367
,
436
8
,
4370
,
4372
,
4374
,
4376
,
4378
,
4380
,
4382
,
4384
,
4386
,
436
9
,
4371
,
4373
,
4375
,
4377
,
4379
,
4381
,
4383
,
4385
,
4387
,
438
8
,
4390
,
4392
,
4394
,
4396
,
4398
,
4400
,
4402
,
4404
,
4406
,
438
9
,
4391
,
4393
,
4395
,
4397
,
4399
,
4401
,
4403
,
4405
,
4407
,
440
8
,
4410
,
4412
,
4415
,
4417
440
9
,
4411
,
4413
,
4416
,
4418
};
};
#endif
#endif
...
@@ -5001,32 +5001,33 @@ case 222:
...
@@ -5001,32 +5001,33 @@ case 222:
{
{
if
(
pedantic
)
if
(
pedantic
)
pedwarn
(
"ANSI C++ forbids initialization of new expression with `='"
);
pedwarn
(
"ANSI C++ forbids initialization of new expression with `='"
);
if
(
TREE_CODE
(
yyvsp
[
0
].
ttype
)
!=
TREE_LIST
)
if
(
TREE_CODE
(
yyvsp
[
0
].
ttype
)
!=
TREE_LIST
&&
TREE_CODE
(
yyvsp
[
0
].
ttype
)
!=
CONSTRUCTOR
)
yyval
.
ttype
=
build_expr_list
(
NULL_TREE
,
yyvsp
[
0
].
ttype
);
yyval
.
ttype
=
build_expr_list
(
NULL_TREE
,
yyvsp
[
0
].
ttype
);
else
else
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
;
break
;}
break
;}
case
223
:
case
223
:
#line 123
0
"parse.y"
#line 123
1
"parse.y"
{
yyvsp
[
-
1
].
ftype
.
t
=
tree_cons
(
NULL_TREE
,
yyvsp
[
-
1
].
ftype
.
t
,
void_list_node
);
{
yyvsp
[
-
1
].
ftype
.
t
=
tree_cons
(
NULL_TREE
,
yyvsp
[
-
1
].
ftype
.
t
,
void_list_node
);
TREE_PARMLIST
(
yyvsp
[
-
1
].
ftype
.
t
)
=
1
;
TREE_PARMLIST
(
yyvsp
[
-
1
].
ftype
.
t
)
=
1
;
yyval
.
ttype
=
make_call_declarator
(
NULL_TREE
,
yyvsp
[
-
1
].
ftype
.
t
,
NULL_TREE
,
NULL_TREE
);
yyval
.
ttype
=
make_call_declarator
(
NULL_TREE
,
yyvsp
[
-
1
].
ftype
.
t
,
NULL_TREE
,
NULL_TREE
);
check_for_new_type
(
"cast"
,
yyvsp
[
-
1
].
ftype
);
;
check_for_new_type
(
"cast"
,
yyvsp
[
-
1
].
ftype
);
;
break
;}
break
;}
case
224
:
case
224
:
#line 123
5
"parse.y"
#line 123
6
"parse.y"
{
yyvsp
[
-
1
].
ftype
.
t
=
tree_cons
(
NULL_TREE
,
yyvsp
[
-
1
].
ftype
.
t
,
void_list_node
);
{
yyvsp
[
-
1
].
ftype
.
t
=
tree_cons
(
NULL_TREE
,
yyvsp
[
-
1
].
ftype
.
t
,
void_list_node
);
TREE_PARMLIST
(
yyvsp
[
-
1
].
ftype
.
t
)
=
1
;
TREE_PARMLIST
(
yyvsp
[
-
1
].
ftype
.
t
)
=
1
;
yyval
.
ttype
=
make_call_declarator
(
yyval
.
ttype
,
yyvsp
[
-
1
].
ftype
.
t
,
NULL_TREE
,
NULL_TREE
);
yyval
.
ttype
=
make_call_declarator
(
yyval
.
ttype
,
yyvsp
[
-
1
].
ftype
.
t
,
NULL_TREE
,
NULL_TREE
);
check_for_new_type
(
"cast"
,
yyvsp
[
-
1
].
ftype
);
;
check_for_new_type
(
"cast"
,
yyvsp
[
-
1
].
ftype
);
;
break
;}
break
;}
case
226
:
case
226
:
#line 124
4
"parse.y"
#line 124
5
"parse.y"
{
yyval
.
ttype
=
reparse_absdcl_as_casts
(
yyval
.
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
reparse_absdcl_as_casts
(
yyval
.
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
227
:
case
227
:
#line 124
6
"parse.y"
#line 124
7
"parse.y"
{
{
tree
init
=
build_nt
(
CONSTRUCTOR
,
NULL_TREE
,
tree
init
=
build_nt
(
CONSTRUCTOR
,
NULL_TREE
,
nreverse
(
yyvsp
[
-
2
].
ttype
));
nreverse
(
yyvsp
[
-
2
].
ttype
));
...
@@ -5039,157 +5040,157 @@ case 227:
...
@@ -5039,157 +5040,157 @@ case 227:
;
;
break
;}
break
;}
case
229
:
case
229
:
#line 126
2
"parse.y"
#line 126
3
"parse.y"
{
yyval
.
ttype
=
build_x_binary_op
(
MEMBER_REF
,
yyval
.
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
build_x_binary_op
(
MEMBER_REF
,
yyval
.
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
230
:
case
230
:
#line 126
4
"parse.y"
#line 126
5
"parse.y"
{
yyval
.
ttype
=
build_m_component_ref
(
yyval
.
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
build_m_component_ref
(
yyval
.
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
231
:
case
231
:
#line 126
6
"parse.y"
#line 126
7
"parse.y"
{
yyval
.
ttype
=
build_x_binary_op
(
yyvsp
[
-
1
].
code
,
yyval
.
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
build_x_binary_op
(
yyvsp
[
-
1
].
code
,
yyval
.
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
232
:
case
232
:
#line 126
8
"parse.y"
#line 126
9
"parse.y"
{
yyval
.
ttype
=
build_x_binary_op
(
yyvsp
[
-
1
].
code
,
yyval
.
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
build_x_binary_op
(
yyvsp
[
-
1
].
code
,
yyval
.
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
233
:
case
233
:
#line 127
0
"parse.y"
#line 127
1
"parse.y"
{
yyval
.
ttype
=
build_x_binary_op
(
yyvsp
[
-
1
].
code
,
yyval
.
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
build_x_binary_op
(
yyvsp
[
-
1
].
code
,
yyval
.
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
234
:
case
234
:
#line 127
2
"parse.y"
#line 127
3
"parse.y"
{
yyval
.
ttype
=
build_x_binary_op
(
yyvsp
[
-
1
].
code
,
yyval
.
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
build_x_binary_op
(
yyvsp
[
-
1
].
code
,
yyval
.
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
235
:
case
235
:
#line 127
4
"parse.y"
#line 127
5
"parse.y"
{
yyval
.
ttype
=
build_x_binary_op
(
yyvsp
[
-
1
].
code
,
yyval
.
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
build_x_binary_op
(
yyvsp
[
-
1
].
code
,
yyval
.
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
236
:
case
236
:
#line 127
6
"parse.y"
#line 127
7
"parse.y"
{
yyval
.
ttype
=
build_x_binary_op
(
yyvsp
[
-
1
].
code
,
yyval
.
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
build_x_binary_op
(
yyvsp
[
-
1
].
code
,
yyval
.
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
237
:
case
237
:
#line 127
8
"parse.y"
#line 127
9
"parse.y"
{
yyval
.
ttype
=
build_x_binary_op
(
yyvsp
[
-
1
].
code
,
yyval
.
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
build_x_binary_op
(
yyvsp
[
-
1
].
code
,
yyval
.
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
238
:
case
238
:
#line 128
0
"parse.y"
#line 128
1
"parse.y"
{
yyval
.
ttype
=
build_x_binary_op
(
yyvsp
[
-
1
].
code
,
yyval
.
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
build_x_binary_op
(
yyvsp
[
-
1
].
code
,
yyval
.
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
239
:
case
239
:
#line 128
2
"parse.y"
#line 128
3
"parse.y"
{
yyval
.
ttype
=
build_x_binary_op
(
LT_EXPR
,
yyval
.
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
build_x_binary_op
(
LT_EXPR
,
yyval
.
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
240
:
case
240
:
#line 128
4
"parse.y"
#line 128
5
"parse.y"
{
yyval
.
ttype
=
build_x_binary_op
(
GT_EXPR
,
yyval
.
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
build_x_binary_op
(
GT_EXPR
,
yyval
.
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
241
:
case
241
:
#line 128
6
"parse.y"
#line 128
7
"parse.y"
{
yyval
.
ttype
=
build_x_binary_op
(
yyvsp
[
-
1
].
code
,
yyval
.
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
build_x_binary_op
(
yyvsp
[
-
1
].
code
,
yyval
.
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
242
:
case
242
:
#line 128
8
"parse.y"
#line 128
9
"parse.y"
{
yyval
.
ttype
=
build_x_binary_op
(
yyvsp
[
-
1
].
code
,
yyval
.
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
build_x_binary_op
(
yyvsp
[
-
1
].
code
,
yyval
.
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
243
:
case
243
:
#line 129
0
"parse.y"
#line 129
1
"parse.y"
{
yyval
.
ttype
=
build_x_binary_op
(
yyvsp
[
-
1
].
code
,
yyval
.
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
build_x_binary_op
(
yyvsp
[
-
1
].
code
,
yyval
.
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
244
:
case
244
:
#line 129
2
"parse.y"
#line 129
3
"parse.y"
{
yyval
.
ttype
=
build_x_binary_op
(
yyvsp
[
-
1
].
code
,
yyval
.
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
build_x_binary_op
(
yyvsp
[
-
1
].
code
,
yyval
.
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
245
:
case
245
:
#line 129
4
"parse.y"
#line 129
5
"parse.y"
{
yyval
.
ttype
=
build_x_binary_op
(
yyvsp
[
-
1
].
code
,
yyval
.
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
build_x_binary_op
(
yyvsp
[
-
1
].
code
,
yyval
.
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
246
:
case
246
:
#line 129
6
"parse.y"
#line 129
7
"parse.y"
{
yyval
.
ttype
=
build_x_binary_op
(
TRUTH_ANDIF_EXPR
,
yyval
.
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
build_x_binary_op
(
TRUTH_ANDIF_EXPR
,
yyval
.
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
247
:
case
247
:
#line 129
8
"parse.y"
#line 129
9
"parse.y"
{
yyval
.
ttype
=
build_x_binary_op
(
TRUTH_ORIF_EXPR
,
yyval
.
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
build_x_binary_op
(
TRUTH_ORIF_EXPR
,
yyval
.
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
248
:
case
248
:
#line 130
0
"parse.y"
#line 130
1
"parse.y"
{
yyval
.
ttype
=
build_x_conditional_expr
(
yyval
.
ttype
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
build_x_conditional_expr
(
yyval
.
ttype
,
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
249
:
case
249
:
#line 130
2
"parse.y"
#line 130
3
"parse.y"
{
yyval
.
ttype
=
build_x_modify_expr
(
yyval
.
ttype
,
NOP_EXPR
,
yyvsp
[
0
].
ttype
);
{
yyval
.
ttype
=
build_x_modify_expr
(
yyval
.
ttype
,
NOP_EXPR
,
yyvsp
[
0
].
ttype
);
if
(
yyval
.
ttype
!=
error_mark_node
)
if
(
yyval
.
ttype
!=
error_mark_node
)
C_SET_EXP_ORIGINAL_CODE
(
yyval
.
ttype
,
MODIFY_EXPR
);
;
C_SET_EXP_ORIGINAL_CODE
(
yyval
.
ttype
,
MODIFY_EXPR
);
;
break
;}
break
;}
case
250
:
case
250
:
#line 130
6
"parse.y"
#line 130
7
"parse.y"
{
yyval
.
ttype
=
build_x_modify_expr
(
yyval
.
ttype
,
yyvsp
[
-
1
].
code
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
build_x_modify_expr
(
yyval
.
ttype
,
yyvsp
[
-
1
].
code
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
251
:
case
251
:
#line 130
8
"parse.y"
#line 130
9
"parse.y"
{
yyval
.
ttype
=
build_throw
(
NULL_TREE
);
;
{
yyval
.
ttype
=
build_throw
(
NULL_TREE
);
;
break
;}
break
;}
case
252
:
case
252
:
#line 131
0
"parse.y"
#line 131
1
"parse.y"
{
yyval
.
ttype
=
build_throw
(
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
build_throw
(
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
253
:
case
253
:
#line 132
8
"parse.y"
#line 132
9
"parse.y"
{
yyval
.
ttype
=
build_parse_node
(
BIT_NOT_EXPR
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
build_parse_node
(
BIT_NOT_EXPR
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
259
:
case
259
:
#line 133
7
"parse.y"
#line 133
8
"parse.y"
{
yyval
.
ttype
=
do_identifier
(
yyvsp
[
-
1
].
ttype
,
1
);
;
{
yyval
.
ttype
=
do_identifier
(
yyvsp
[
-
1
].
ttype
,
1
);
;
break
;}
break
;}
case
260
:
case
260
:
#line 134
1
"parse.y"
#line 134
2
"parse.y"
{
yyval
.
ttype
=
lookup_template_function
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
lookup_template_function
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
261
:
case
261
:
#line 134
3
"parse.y"
#line 134
4
"parse.y"
{
yyval
.
ttype
=
lookup_template_function
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
lookup_template_function
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
262
:
case
262
:
#line 134
8
"parse.y"
#line 134
9
"parse.y"
{
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
263
:
case
263
:
#line 135
0
"parse.y"
#line 135
1
"parse.y"
{
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
264
:
case
264
:
#line 135
3
"parse.y"
#line 135
4
"parse.y"
{
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
269
:
case
269
:
#line 136
5
"parse.y"
#line 136
6
"parse.y"
{
yyval
.
ttype
=
build_parse_node
(
INDIRECT_REF
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
build_parse_node
(
INDIRECT_REF
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
270
:
case
270
:
#line 136
7
"parse.y"
#line 136
8
"parse.y"
{
yyval
.
ttype
=
build_parse_node
(
ADDR_EXPR
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
build_parse_node
(
ADDR_EXPR
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
271
:
case
271
:
#line 13
69
"parse.y"
#line 13
70
"parse.y"
{
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
;
break
;}
break
;}
case
272
:
case
272
:
#line 137
4
"parse.y"
#line 137
5
"parse.y"
{
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
273
:
case
273
:
#line 137
6
"parse.y"
#line 137
7
"parse.y"
{
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
277
:
case
277
:
#line 138
4
"parse.y"
#line 138
5
"parse.y"
{
yyval
.
ttype
=
finish_decl_parsing
(
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
finish_decl_parsing
(
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
278
:
case
278
:
#line 13
89
"parse.y"
#line 13
90
"parse.y"
{
{
if
(
TREE_CODE
(
yyval
.
ttype
)
==
BIT_NOT_EXPR
)
if
(
TREE_CODE
(
yyval
.
ttype
)
==
BIT_NOT_EXPR
)
yyval
.
ttype
=
build_x_unary_op
(
BIT_NOT_EXPR
,
TREE_OPERAND
(
yyval
.
ttype
,
0
));
yyval
.
ttype
=
build_x_unary_op
(
BIT_NOT_EXPR
,
TREE_OPERAND
(
yyval
.
ttype
,
0
));
...
@@ -5198,7 +5199,7 @@ case 278:
...
@@ -5198,7 +5199,7 @@ case 278:
;
;
break
;}
break
;}
case
281
:
case
281
:
#line 139
8
"parse.y"
#line 139
9
"parse.y"
{
{
if
(
processing_template_decl
)
if
(
processing_template_decl
)
push_obstacks
(
&
permanent_obstack
,
&
permanent_obstack
);
push_obstacks
(
&
permanent_obstack
,
&
permanent_obstack
);
...
@@ -5208,7 +5209,7 @@ case 281:
...
@@ -5208,7 +5209,7 @@ case 281:
;
;
break
;}
break
;}
case
282
:
case
282
:
#line 140
6
"parse.y"
#line 140
7
"parse.y"
{
char
class
;
{
char
class
;
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
class
=
TREE_CODE_CLASS
(
TREE_CODE
(
yyval
.
ttype
));
class
=
TREE_CODE_CLASS
(
TREE_CODE
(
yyval
.
ttype
));
...
@@ -5218,7 +5219,7 @@ case 282:
...
@@ -5218,7 +5219,7 @@ case 282:
C_SET_EXP_ORIGINAL_CODE
(
yyval
.
ttype
,
ERROR_MARK
);
;
C_SET_EXP_ORIGINAL_CODE
(
yyval
.
ttype
,
ERROR_MARK
);
;
break
;}
break
;}
case
283
:
case
283
:
#line 141
4
"parse.y"
#line 141
5
"parse.y"
{
char
class
;
{
char
class
;
yyval
.
ttype
=
reparse_decl_as_expr
(
NULL_TREE
,
yyvsp
[
-
1
].
ttype
);
yyval
.
ttype
=
reparse_decl_as_expr
(
NULL_TREE
,
yyvsp
[
-
1
].
ttype
);
class
=
TREE_CODE_CLASS
(
TREE_CODE
(
yyval
.
ttype
));
class
=
TREE_CODE_CLASS
(
TREE_CODE
(
yyval
.
ttype
));
...
@@ -5228,11 +5229,11 @@ case 283:
...
@@ -5228,11 +5229,11 @@ case 283:
C_SET_EXP_ORIGINAL_CODE
(
yyval
.
ttype
,
ERROR_MARK
);
;
C_SET_EXP_ORIGINAL_CODE
(
yyval
.
ttype
,
ERROR_MARK
);
;
break
;}
break
;}
case
284
:
case
284
:
#line 142
2
"parse.y"
#line 142
3
"parse.y"
{
yyval
.
ttype
=
error_mark_node
;
;
{
yyval
.
ttype
=
error_mark_node
;
;
break
;}
break
;}
case
285
:
case
285
:
#line 142
4
"parse.y"
#line 142
5
"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"
);
...
@@ -5246,7 +5247,7 @@ case 285:
...
@@ -5246,7 +5247,7 @@ case 285:
;
;
break
;}
break
;}
case
286
:
case
286
:
#line 143
6
"parse.y"
#line 143
7
"parse.y"
{
tree
rtl_exp
;
{
tree
rtl_exp
;
if
(
pedantic
)
if
(
pedantic
)
pedwarn
(
"ANSI C++ forbids braced-groups within expressions"
);
pedwarn
(
"ANSI C++ forbids braced-groups within expressions"
);
...
@@ -5278,7 +5279,7 @@ case 286:
...
@@ -5278,7 +5279,7 @@ case 286:
;
;
break
;}
break
;}
case
287
:
case
287
:
#line 146
6
"parse.y"
#line 146
7
"parse.y"
{
{
yyval
.
ttype
=
build_x_function_call
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
,
current_class_ref
);
yyval
.
ttype
=
build_x_function_call
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
,
current_class_ref
);
if
(
TREE_CODE
(
yyval
.
ttype
)
==
CALL_EXPR
if
(
TREE_CODE
(
yyval
.
ttype
)
==
CALL_EXPR
...
@@ -5287,7 +5288,7 @@ case 287:
...
@@ -5287,7 +5288,7 @@ case 287:
;
;
break
;}
break
;}
case
288
:
case
288
:
#line 147
3
"parse.y"
#line 147
4
"parse.y"
{
{
yyval
.
ttype
=
build_x_function_call
(
yyval
.
ttype
,
NULL_TREE
,
current_class_ref
);
yyval
.
ttype
=
build_x_function_call
(
yyval
.
ttype
,
NULL_TREE
,
current_class_ref
);
if
(
TREE_CODE
(
yyval
.
ttype
)
==
CALL_EXPR
if
(
TREE_CODE
(
yyval
.
ttype
)
==
CALL_EXPR
...
@@ -5296,11 +5297,11 @@ case 288:
...
@@ -5296,11 +5297,11 @@ case 288:
;
;
break
;}
break
;}
case
289
:
case
289
:
#line 148
0
"parse.y"
#line 148
1
"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
290
:
case
290
:
#line 148
2
"parse.y"
#line 148
3
"parse.y"
{
/* If we get an OFFSET_REF, turn it into what it really
{
/* If we get an OFFSET_REF, turn it into what it really
means (e.g., a COMPONENT_REF). This way if we've got,
means (e.g., a COMPONENT_REF). This way if we've got,
say, a reference to a static member that's being operated
say, a reference to a static member that's being operated
...
@@ -5311,13 +5312,13 @@ case 290:
...
@@ -5311,13 +5312,13 @@ case 290:
yyval
.
ttype
=
build_x_unary_op
(
POSTINCREMENT_EXPR
,
yyval
.
ttype
);
;
yyval
.
ttype
=
build_x_unary_op
(
POSTINCREMENT_EXPR
,
yyval
.
ttype
);
;
break
;}
break
;}
case
291
:
case
291
:
#line 149
1
"parse.y"
#line 149
2
"parse.y"
{
if
(
TREE_CODE
(
yyval
.
ttype
)
==
OFFSET_REF
)
{
if
(
TREE_CODE
(
yyval
.
ttype
)
==
OFFSET_REF
)
yyval
.
ttype
=
resolve_offset_ref
(
yyval
.
ttype
);
yyval
.
ttype
=
resolve_offset_ref
(
yyval
.
ttype
);
yyval
.
ttype
=
build_x_unary_op
(
POSTDECREMENT_EXPR
,
yyval
.
ttype
);
;
yyval
.
ttype
=
build_x_unary_op
(
POSTDECREMENT_EXPR
,
yyval
.
ttype
);
;
break
;}
break
;}
case
292
:
case
292
:
#line 149
6
"parse.y"
#line 149
7
"parse.y"
{
if
(
current_class_ptr
)
{
if
(
current_class_ptr
)
{
{
#ifdef WARNING_ABOUT_CCD
#ifdef WARNING_ABOUT_CCD
...
@@ -5342,7 +5343,7 @@ case 292:
...
@@ -5342,7 +5343,7 @@ case 292:
;
;
break
;}
break
;}
case
293
:
case
293
:
#line 15
19
"parse.y"
#line 15
20
"parse.y"
{
{
tree
type
=
NULL_TREE
;
tree
type
=
NULL_TREE
;
tree
id
=
yyval
.
ttype
;
tree
id
=
yyval
.
ttype
;
...
@@ -5388,45 +5389,45 @@ case 293:
...
@@ -5388,45 +5389,45 @@ case 293:
;
;
break
;}
break
;}
case
295
:
case
295
:
#line 156
4
"parse.y"
#line 156
5
"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
296
:
case
296
:
#line 156
8
"parse.y"
#line 156
9
"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
297
:
case
297
:
#line 157
2
"parse.y"
#line 157
3
"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
298
:
case
298
:
#line 157
6
"parse.y"
#line 157
7
"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
299
:
case
299
:
#line 158
0
"parse.y"
#line 158
1
"parse.y"
{
yyval
.
ttype
=
build_x_typeid
(
yyvsp
[
-
1
].
ttype
);
;
{
yyval
.
ttype
=
build_x_typeid
(
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
300
:
case
300
:
#line 158
2
"parse.y"
#line 158
3
"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
301
:
case
301
:
#line 158
6
"parse.y"
#line 158
7
"parse.y"
{
yyval
.
ttype
=
do_scoped_id
(
yyvsp
[
0
].
ttype
,
1
);
;
{
yyval
.
ttype
=
do_scoped_id
(
yyvsp
[
0
].
ttype
,
1
);
;
break
;}
break
;}
case
302
:
case
302
:
#line 158
8
"parse.y"
#line 158
9
"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
)
...
@@ -5436,18 +5437,18 @@ case 302:
...
@@ -5436,18 +5437,18 @@ case 302:
;
;
break
;}
break
;}
case
303
:
case
303
:
#line 159
6
"parse.y"
#line 159
7
"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
304
:
case
304
:
#line 159
8
"parse.y"
#line 159
9
"parse.y"
{
if
(
processing_template_decl
)
{
if
(
processing_template_decl
)
yyval
.
ttype
=
build_min_nt
(
CALL_EXPR
,
copy_to_permanent
(
yyvsp
[
-
3
].
ttype
),
yyvsp
[
-
1
].
ttype
,
NULL_TREE
);
yyval
.
ttype
=
build_min_nt
(
CALL_EXPR
,
copy_to_permanent
(
yyvsp
[
-
3
].
ttype
),
yyvsp
[
-
1
].
ttype
,
NULL_TREE
);
else
else
yyval
.
ttype
=
build_member_call
(
OP0
(
yyval
.
ttype
),
OP1
(
yyval
.
ttype
),
yyvsp
[
-
1
].
ttype
);
;
yyval
.
ttype
=
build_member_call
(
OP0
(
yyval
.
ttype
),
OP1
(
yyval
.
ttype
),
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
305
:
case
305
:
#line 160
3
"parse.y"
#line 160
4
"parse.y"
{
if
(
processing_template_decl
)
{
if
(
processing_template_decl
)
yyval
.
ttype
=
build_min_nt
(
CALL_EXPR
,
copy_to_permanent
(
yyvsp
[
-
1
].
ttype
),
yyval
.
ttype
=
build_min_nt
(
CALL_EXPR
,
copy_to_permanent
(
yyvsp
[
-
1
].
ttype
),
NULL_TREE
,
NULL_TREE
);
NULL_TREE
,
NULL_TREE
);
...
@@ -5455,38 +5456,38 @@ case 305:
...
@@ -5455,38 +5456,38 @@ case 305:
yyval
.
ttype
=
build_member_call
(
OP0
(
yyval
.
ttype
),
OP1
(
yyval
.
ttype
),
NULL_TREE
);
;
yyval
.
ttype
=
build_member_call
(
OP0
(
yyval
.
ttype
),
OP1
(
yyval
.
ttype
),
NULL_TREE
);
;
break
;}
break
;}
case
306
:
case
306
:
#line 16
09
"parse.y"
#line 16
10
"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
307
:
case
307
:
#line 161
3
"parse.y"
#line 161
4
"parse.y"
{
{
yyval
.
ttype
=
build_method_call
(
yyvsp
[
-
4
].
ttype
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
,
yyval
.
ttype
=
build_method_call
(
yyvsp
[
-
4
].
ttype
,
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
,
NULL_TREE
,
LOOKUP_NORMAL
);
NULL_TREE
,
LOOKUP_NORMAL
);
;
;
break
;}
break
;}
case
308
:
case
308
:
#line 161
8
"parse.y"
#line 161
9
"parse.y"
{
{
yyval
.
ttype
=
build_method_call
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
-
1
].
ttype
,
NULL_TREE
,
yyval
.
ttype
=
build_method_call
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
-
1
].
ttype
,
NULL_TREE
,
NULL_TREE
,
LOOKUP_NORMAL
);
NULL_TREE
,
LOOKUP_NORMAL
);
;
;
break
;}
break
;}
case
309
:
case
309
:
#line 162
3
"parse.y"
#line 162
4
"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
310
:
case
310
:
#line 162
5
"parse.y"
#line 162
6
"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
311
:
case
311
:
#line 163
0
"parse.y"
#line 163
1
"parse.y"
{
{
#if 0
#if 0
/* This is a future direction of this code, but because
/* This is a future direction of this code, but because
...
@@ -5503,7 +5504,7 @@ case 311:
...
@@ -5503,7 +5504,7 @@ case 311:
;
;
break
;}
break
;}
case
312
:
case
312
:
#line 164
5
"parse.y"
#line 164
6
"parse.y"
{
{
#if 0
#if 0
/* This is a future direction of this code, but because
/* This is a future direction of this code, but because
...
@@ -5520,7 +5521,7 @@ case 312:
...
@@ -5520,7 +5521,7 @@ case 312:
;
;
break
;}
break
;}
case
313
:
case
313
:
#line 166
0
"parse.y"
#line 166
1
"parse.y"
{
{
if
(
IS_SIGNATURE
(
OP0
(
yyvsp
[
-
3
].
ttype
)))
if
(
IS_SIGNATURE
(
OP0
(
yyvsp
[
-
3
].
ttype
)))
{
{
...
@@ -5533,7 +5534,7 @@ case 313:
...
@@ -5533,7 +5534,7 @@ case 313:
;
;
break
;}
break
;}
case
314
:
case
314
:
#line 167
1
"parse.y"
#line 167
2
"parse.y"
{
{
if
(
IS_SIGNATURE
(
OP0
(
yyvsp
[
-
1
].
ttype
)))
if
(
IS_SIGNATURE
(
OP0
(
yyvsp
[
-
1
].
ttype
)))
{
{
...
@@ -5546,7 +5547,7 @@ case 314:
...
@@ -5546,7 +5547,7 @@ case 314:
;
;
break
;}
break
;}
case
315
:
case
315
:
#line 168
3
"parse.y"
#line 168
4
"parse.y"
{
{
if
(
IDENTIFIER_GLOBAL_VALUE
(
yyvsp
[
-
1
].
ttype
)
if
(
IDENTIFIER_GLOBAL_VALUE
(
yyvsp
[
-
1
].
ttype
)
&&
(
TREE_CODE
(
TREE_TYPE
(
yyvsp
[
-
3
].
ttype
))
&&
(
TREE_CODE
(
TREE_TYPE
(
yyvsp
[
-
3
].
ttype
))
...
@@ -5556,7 +5557,7 @@ case 315:
...
@@ -5556,7 +5557,7 @@ case 315:
;
;
break
;}
break
;}
case
316
:
case
316
:
#line 169
1
"parse.y"
#line 169
2
"parse.y"
{
{
if
(
yyvsp
[
-
4
].
ttype
!=
yyvsp
[
-
1
].
ttype
)
if
(
yyvsp
[
-
4
].
ttype
!=
yyvsp
[
-
1
].
ttype
)
cp_error
(
"destructor specifier `%T::~%T()' must have matching names"
,
yyvsp
[
-
4
].
ttype
,
yyvsp
[
-
1
].
ttype
);
cp_error
(
"destructor specifier `%T::~%T()' must have matching names"
,
yyvsp
[
-
4
].
ttype
,
yyvsp
[
-
1
].
ttype
);
...
@@ -5567,41 +5568,41 @@ case 316:
...
@@ -5567,41 +5568,41 @@ case 316:
;
;
break
;}
break
;}
case
317
:
case
317
:
#line 170
0
"parse.y"
#line 170
1
"parse.y"
{
{
yyval
.
ttype
=
error_mark_node
;
yyval
.
ttype
=
error_mark_node
;
;
;
break
;}
break
;}
case
318
:
case
318
:
#line 174
5
"parse.y"
#line 174
6
"parse.y"
{
yyval
.
itype
=
0
;
;
{
yyval
.
itype
=
0
;
;
break
;}
break
;}
case
319
:
case
319
:
#line 174
7
"parse.y"
#line 174
8
"parse.y"
{
got_scope
=
NULL_TREE
;
yyval
.
itype
=
1
;
;
{
got_scope
=
NULL_TREE
;
yyval
.
itype
=
1
;
;
break
;}
break
;}
case
320
:
case
320
:
#line 175
2
"parse.y"
#line 175
3
"parse.y"
{
yyval
.
itype
=
0
;
;
{
yyval
.
itype
=
0
;
;
break
;}
break
;}
case
321
:
case
321
:
#line 175
4
"parse.y"
#line 175
5
"parse.y"
{
got_scope
=
NULL_TREE
;
yyval
.
itype
=
1
;
;
{
got_scope
=
NULL_TREE
;
yyval
.
itype
=
1
;
;
break
;}
break
;}
case
322
:
case
322
:
#line 17
59
"parse.y"
#line 17
60
"parse.y"
{
yyval
.
ttype
=
boolean_true_node
;
;
{
yyval
.
ttype
=
boolean_true_node
;
;
break
;}
break
;}
case
323
:
case
323
:
#line 176
1
"parse.y"
#line 176
2
"parse.y"
{
yyval
.
ttype
=
boolean_false_node
;
;
{
yyval
.
ttype
=
boolean_false_node
;
;
break
;}
break
;}
case
325
:
case
325
:
#line 176
8
"parse.y"
#line 176
9
"parse.y"
{
yyval
.
ttype
=
chainon
(
yyval
.
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
chainon
(
yyval
.
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
326
:
case
326
:
#line 177
3
"parse.y"
#line 177
4
"parse.y"
{
{
if
(
!
current_function_parms_stored
)
if
(
!
current_function_parms_stored
)
store_parm_decls
();
store_parm_decls
();
...
@@ -5613,18 +5614,18 @@ case 326:
...
@@ -5613,18 +5614,18 @@ case 326:
;
;
break
;}
break
;}
case
327
:
case
327
:
#line 178
6
"parse.y"
#line 178
7
"parse.y"
{
got_object
=
TREE_TYPE
(
yyval
.
ttype
);
;
{
got_object
=
TREE_TYPE
(
yyval
.
ttype
);
;
break
;}
break
;}
case
328
:
case
328
:
#line 178
8
"parse.y"
#line 178
9
"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
329
:
case
329
:
#line 179
6
"parse.y"
#line 179
7
"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
)))
...
@@ -5632,138 +5633,138 @@ case 329:
...
@@ -5632,138 +5633,138 @@ case 329:
;
;
break
;}
break
;}
case
330
:
case
330
:
#line 180
2
"parse.y"
#line 180
3
"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
331
:
case
331
:
#line 180
7
"parse.y"
#line 180
8
"parse.y"
{
resume_momentary
(
yyvsp
[
-
1
].
itype
);
;
{
resume_momentary
(
yyvsp
[
-
1
].
itype
);
;
break
;}
break
;}
case
332
:
case
332
:
#line 18
09
"parse.y"
#line 18
10
"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
333
:
case
333
:
#line 181
4
"parse.y"
#line 181
5
"parse.y"
{
warning
(
"empty declaration"
);
;
{
warning
(
"empty declaration"
);
;
break
;}
break
;}
case
334
:
case
334
:
#line 181
6
"parse.y"
#line 181
7
"parse.y"
{
pedantic
=
yyvsp
[
-
1
].
itype
;
;
{
pedantic
=
yyvsp
[
-
1
].
itype
;
;
break
;}
break
;}
case
337
:
case
337
:
#line 183
0
"parse.y"
#line 183
1
"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
338
:
case
338
:
#line 183
3
"parse.y"
#line 183
4
"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
339
:
case
339
:
#line 184
0
"parse.y"
#line 184
1
"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
340
:
case
340
:
#line 184
3
"parse.y"
#line 184
4
"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
341
:
case
341
:
#line 184
6
"parse.y"
#line 184
7
"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
342
:
case
342
:
#line 18
49
"parse.y"
#line 18
50
"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
343
:
case
343
:
#line 185
2
"parse.y"
#line 185
3
"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
346
:
case
346
:
#line 186
8
"parse.y"
#line 186
9
"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
347
:
case
347
:
#line 187
1
"parse.y"
#line 187
2
"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
348
:
case
348
:
#line 187
4
"parse.y"
#line 187
5
"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
349
:
case
349
:
#line 187
7
"parse.y"
#line 187
8
"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
350
:
case
350
:
#line 188
0
"parse.y"
#line 188
1
"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
351
:
case
351
:
#line 188
3
"parse.y"
#line 188
4
"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
352
:
case
352
:
#line 189
0
"parse.y"
#line 189
1
"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
353
:
case
353
:
#line 189
5
"parse.y"
#line 189
6
"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
354
:
case
354
:
#line 189
7
"parse.y"
#line 189
8
"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
355
:
case
355
:
#line 190
2
"parse.y"
#line 190
3
"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
356
:
case
356
:
#line 190
4
"parse.y"
#line 190
5
"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
357
:
case
357
:
#line 191
4
"parse.y"
#line 191
5
"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
358
:
case
358
:
#line 191
6
"parse.y"
#line 191
7
"parse.y"
{
yyval
.
ttype
=
IDENTIFIER_AS_LIST
(
yyval
.
ttype
);
;
{
yyval
.
ttype
=
IDENTIFIER_AS_LIST
(
yyval
.
ttype
);
;
break
;}
break
;}
case
359
:
case
359
:
#line 191
8
"parse.y"
#line 191
9
"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
360
:
case
360
:
#line 192
1
"parse.y"
#line 192
2
"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
));
...
@@ -5771,61 +5772,61 @@ case 360:
...
@@ -5771,61 +5772,61 @@ case 360:
TREE_STATIC
(
yyval
.
ttype
)
=
TREE_STATIC
(
yyvsp
[
-
1
].
ttype
);
;
TREE_STATIC
(
yyval
.
ttype
)
=
TREE_STATIC
(
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
361
:
case
361
:
#line 192
7
"parse.y"
#line 192
8
"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
362
:
case
362
:
#line 19
29
"parse.y"
#line 19
30
"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
363
:
case
363
:
#line 194
0
"parse.y"
#line 194
1
"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
364
:
case
364
:
#line 194
3
"parse.y"
#line 194
4
"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
365
:
case
365
:
#line 194
6
"parse.y"
#line 194
7
"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
366
:
case
366
:
#line 19
49
"parse.y"
#line 19
50
"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
367
:
case
367
:
#line 195
5
"parse.y"
#line 195
6
"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
368
:
case
368
:
#line 195
7
"parse.y"
#line 195
8
"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
370
:
case
370
:
#line 196
7
"parse.y"
#line 196
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
371
:
case
371
:
#line 19
69
"parse.y"
#line 19
70
"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
372
:
case
372
:
#line 197
1
"parse.y"
#line 197
2
"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
373
:
case
373
:
#line 197
4
"parse.y"
#line 197
5
"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
374
:
case
374
:
#line 197
7
"parse.y"
#line 197
8
"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
;
...
@@ -5842,7 +5843,7 @@ case 374:
...
@@ -5842,7 +5843,7 @@ case 374:
;
;
break
;}
break
;}
case
375
:
case
375
:
#line 199
2
"parse.y"
#line 199
3
"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
;
...
@@ -5859,186 +5860,186 @@ case 375:
...
@@ -5859,186 +5860,186 @@ case 375:
;
;
break
;}
break
;}
case
376
:
case
376
:
#line 201
2
"parse.y"
#line 201
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
377
:
case
377
:
#line 201
4
"parse.y"
#line 201
5
"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 203
5
"parse.y"
#line 203
6
"parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
386
:
case
386
:
#line 203
7
"parse.y"
#line 203
8
"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
387
:
case
387
:
#line 204
2
"parse.y"
#line 204
3
"parse.y"
{
yyval
.
ttype
=
start_decl
(
yyvsp
[
-
3
].
ttype
,
current_declspecs
,
1
);
{
yyval
.
ttype
=
start_decl
(
yyvsp
[
-
3
].
ttype
,
current_declspecs
,
1
);
cplus_decl_attributes
(
yyval
.
ttype
,
yyvsp
[
-
1
].
ttype
,
prefix_attributes
);
;
cplus_decl_attributes
(
yyval
.
ttype
,
yyvsp
[
-
1
].
ttype
,
prefix_attributes
);
;
break
;}
break
;}
case
388
:
case
388
:
#line 204
6
"parse.y"
#line 204
7
"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
389
:
case
389
:
#line 204
8
"parse.y"
#line 204
9
"parse.y"
{
yyval
.
ttype
=
start_decl
(
yyvsp
[
-
2
].
ttype
,
current_declspecs
,
0
);
{
yyval
.
ttype
=
start_decl
(
yyvsp
[
-
2
].
ttype
,
current_declspecs
,
0
);
cplus_decl_attributes
(
yyval
.
ttype
,
yyvsp
[
0
].
ttype
,
prefix_attributes
);
cplus_decl_attributes
(
yyval
.
ttype
,
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
390
:
case
390
:
#line 206
0
"parse.y"
#line 206
1
"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
391
:
case
391
:
#line 206
5
"parse.y"
#line 206
6
"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
);
yyval
.
itype
=
yyvsp
[
-
2
].
itype
;
;
yyval
.
itype
=
yyvsp
[
-
2
].
itype
;
;
break
;}
break
;}
case
392
:
case
392
:
#line 206
8
"parse.y"
#line 206
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
393
:
case
393
:
#line 207
5
"parse.y"
#line 207
6
"parse.y"
{
yyval
.
itype
=
yyvsp
[
0
].
itype
;
;
{
yyval
.
itype
=
yyvsp
[
0
].
itype
;
;
break
;}
break
;}
case
394
:
case
394
:
#line 20
79
"parse.y"
#line 20
80
"parse.y"
{
yyval
.
itype
=
yyvsp
[
0
].
itype
;
;
{
yyval
.
itype
=
yyvsp
[
0
].
itype
;
;
break
;}
break
;}
case
395
:
case
395
:
#line 208
4
"parse.y"
#line 208
5
"parse.y"
{
/* Set things up as initdcl0_innards expects. */
{
/* Set things up as initdcl0_innards expects. */
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
yyvsp
[
0
].
ttype
=
NULL_TREE
;
;
yyvsp
[
0
].
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
396
:
case
396
:
#line 208
8
"parse.y"
#line 208
9
"parse.y"
{;
{;
break
;}
break
;}
case
397
:
case
397
:
#line 209
0
"parse.y"
#line 209
1
"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
);
;
break
;}
break
;}
case
398
:
case
398
:
#line 209
8
"parse.y"
#line 209
9
"parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
399
:
case
399
:
#line 210
0
"parse.y"
#line 210
1
"parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
400
:
case
400
:
#line 210
5
"parse.y"
#line 210
6
"parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
401
:
case
401
:
#line 210
7
"parse.y"
#line 210
8
"parse.y"
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
1
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
402
:
case
402
:
#line 211
2
"parse.y"
#line 211
3
"parse.y"
{
yyval
.
ttype
=
yyvsp
[
-
2
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
-
2
].
ttype
;
;
break
;}
break
;}
case
403
:
case
403
:
#line 211
7
"parse.y"
#line 211
8
"parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
404
:
case
404
:
#line 21
19
"parse.y"
#line 21
20
"parse.y"
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
405
:
case
405
:
#line 212
4
"parse.y"
#line 212
5
"parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
406
:
case
406
:
#line 212
6
"parse.y"
#line 212
7
"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
407
:
case
407
:
#line 212
8
"parse.y"
#line 212
9
"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
408
:
case
408
:
#line 213
0
"parse.y"
#line 213
1
"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
409
:
case
409
:
#line 213
2
"parse.y"
#line 213
3
"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
414
:
case
414
:
#line 214
8
"parse.y"
#line 214
9
"parse.y"
{
yyval
.
ttype
=
build_tree_list
(
NULL_TREE
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
build_tree_list
(
NULL_TREE
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
415
:
case
415
:
#line 215
0
"parse.y"
#line 215
1
"parse.y"
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
2
].
ttype
,
build_tree_list
(
NULL_TREE
,
yyvsp
[
0
].
ttype
));
;
{
yyval
.
ttype
=
chainon
(
yyvsp
[
-
2
].
ttype
,
build_tree_list
(
NULL_TREE
,
yyvsp
[
0
].
ttype
));
;
break
;}
break
;}
case
416
:
case
416
:
#line 215
5
"parse.y"
#line 215
6
"parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
417
:
case
417
:
#line 215
7
"parse.y"
#line 215
8
"parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
419
:
case
419
:
#line 216
5
"parse.y"
#line 216
6
"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
420
:
case
420
:
#line 216
8
"parse.y"
#line 216
9
"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
421
:
case
421
:
#line 217
1
"parse.y"
#line 217
2
"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
422
:
case
422
:
#line 217
4
"parse.y"
#line 217
5
"parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
423
:
case
423
:
#line 218
1
"parse.y"
#line 218
2
"parse.y"
{
yyval
.
ttype
=
build_tree_list
(
NULL_TREE
,
yyval
.
ttype
);
;
{
yyval
.
ttype
=
build_tree_list
(
NULL_TREE
,
yyval
.
ttype
);
;
break
;}
break
;}
case
424
:
case
424
:
#line 218
3
"parse.y"
#line 218
4
"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
425
:
case
425
:
#line 218
6
"parse.y"
#line 218
7
"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
426
:
case
426
:
#line 218
8
"parse.y"
#line 218
9
"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
427
:
case
427
:
#line 219
0
"parse.y"
#line 219
1
"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
428
:
case
428
:
#line 219
5
"parse.y"
#line 219
6
"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
429
:
case
429
:
#line 220
1
"parse.y"
#line 220
2
"parse.y"
{
{
int
nested
=
(
hack_decl_function_context
int
nested
=
(
hack_decl_function_context
(
current_function_decl
)
!=
NULL_TREE
);
(
current_function_decl
)
!=
NULL_TREE
);
...
@@ -6047,82 +6048,82 @@ case 429:
...
@@ -6047,82 +6048,82 @@ case 429:
;
;
break
;}
break
;}
case
430
:
case
430
:
#line 220
8
"parse.y"
#line 220
9
"parse.y"
{
process_next_inline
(
yyvsp
[
-
2
].
ttype
);
;
{
process_next_inline
(
yyvsp
[
-
2
].
ttype
);
;
break
;}
break
;}
case
431
:
case
431
:
#line 221
0
"parse.y"
#line 221
1
"parse.y"
{
process_next_inline
(
yyvsp
[
-
2
].
ttype
);
;
{
process_next_inline
(
yyvsp
[
-
2
].
ttype
);
;
break
;}
break
;}
case
434
:
case
434
:
#line 222
2
"parse.y"
#line 222
3
"parse.y"
{
replace_defarg
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
replace_defarg
(
yyvsp
[
-
2
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
435
:
case
435
:
#line 222
4
"parse.y"
#line 222
5
"parse.y"
{
replace_defarg
(
yyvsp
[
-
2
].
ttype
,
error_mark_node
);
;
{
replace_defarg
(
yyvsp
[
-
2
].
ttype
,
error_mark_node
);
;
break
;}
break
;}
case
437
:
case
437
:
#line 22
29
"parse.y"
#line 22
30
"parse.y"
{
do_pending_defargs
();
;
{
do_pending_defargs
();
;
break
;}
break
;}
case
438
:
case
438
:
#line 223
1
"parse.y"
#line 223
2
"parse.y"
{
do_pending_defargs
();
;
{
do_pending_defargs
();
;
break
;}
break
;}
case
439
:
case
439
:
#line 223
6
"parse.y"
#line 223
7
"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
440
:
case
440
:
#line 22
39
"parse.y"
#line 22
40
"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
441
:
case
441
:
#line 224
4
"parse.y"
#line 224
5
"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
442
:
case
442
:
#line 224
8
"parse.y"
#line 224
9
"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
443
:
case
443
:
#line 225
1
"parse.y"
#line 225
2
"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
444
:
case
444
:
#line 225
6
"parse.y"
#line 225
7
"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
445
:
case
445
:
#line 226
0
"parse.y"
#line 226
1
"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
446
:
case
446
:
#line 226
3
"parse.y"
#line 226
4
"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
447
:
case
447
:
#line 226
6
"parse.y"
#line 226
7
"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
448
:
case
448
:
#line 227
1
"parse.y"
#line 227
2
"parse.y"
{
{
int
semi
;
int
semi
;
...
@@ -6157,7 +6158,7 @@ case 448:
...
@@ -6157,7 +6158,7 @@ case 448:
;
;
break
;}
break
;}
case
449
:
case
449
:
#line 230
4
"parse.y"
#line 230
5
"parse.y"
{
{
if
(
pending_inlines
if
(
pending_inlines
&&
current_scope
()
==
current_function_decl
)
&&
current_scope
()
==
current_function_decl
)
...
@@ -6165,7 +6166,7 @@ case 449:
...
@@ -6165,7 +6166,7 @@ case 449:
;
;
break
;}
break
;}
case
450
:
case
450
:
#line 231
0
"parse.y"
#line 231
1
"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
;
...
@@ -6177,7 +6178,7 @@ case 450:
...
@@ -6177,7 +6178,7 @@ case 450:
;
;
break
;}
break
;}
case
451
:
case
451
:
#line 232
0
"parse.y"
#line 232
1
"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
)
...
@@ -6197,73 +6198,73 @@ case 451:
...
@@ -6197,73 +6198,73 @@ case 451:
;
;
break
;}
break
;}
case
455
:
case
455
:
#line 234
7
"parse.y"
#line 234
8
"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
457
:
case
457
:
#line 235
4
"parse.y"
#line 235
5
"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
458
:
case
458
:
#line 235
6
"parse.y"
#line 235
7
"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
459
:
case
459
:
#line 235
8
"parse.y"
#line 235
9
"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
460
:
case
460
:
#line 236
0
"parse.y"
#line 236
1
"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
461
:
case
461
:
#line 236
5
"parse.y"
#line 236
6
"parse.y"
{
current_aggr
=
yyval
.
ttype
;
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
current_aggr
=
yyval
.
ttype
;
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
462
:
case
462
:
#line 237
0
"parse.y"
#line 237
1
"parse.y"
{
current_aggr
=
yyval
.
ttype
;
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
current_aggr
=
yyval
.
ttype
;
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
463
:
case
463
:
#line 237
5
"parse.y"
#line 237
6
"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
464
:
case
464
:
#line 238
0
"parse.y"
#line 238
1
"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
465
:
case
465
:
#line 238
5
"parse.y"
#line 238
6
"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
466
:
case
466
:
#line 239
0
"parse.y"
#line 239
1
"parse.y"
{
current_aggr
=
yyval
.
ttype
;
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
current_aggr
=
yyval
.
ttype
;
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
467
:
case
467
:
#line 239
2
"parse.y"
#line 239
3
"parse.y"
{
current_aggr
=
yyval
.
ttype
;
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
current_aggr
=
yyval
.
ttype
;
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
468
:
case
468
:
#line 239
7
"parse.y"
#line 239
8
"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
469
:
case
469
:
#line 240
2
"parse.y"
#line 240
3
"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
470
:
case
470
:
#line 240
5
"parse.y"
#line 240
6
"parse.y"
{
{
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
if
(
yyvsp
[
0
].
ttype
)
if
(
yyvsp
[
0
].
ttype
)
...
@@ -6271,7 +6272,7 @@ case 470:
...
@@ -6271,7 +6272,7 @@ case 470:
;
;
break
;}
break
;}
case
471
:
case
471
:
#line 241
1
"parse.y"
#line 241
2
"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
...
@@ -6299,28 +6300,28 @@ case 471:
...
@@ -6299,28 +6300,28 @@ case 471:
;
;
break
;}
break
;}
case
472
:
case
472
:
#line 244
0
"parse.y"
#line 244
1
"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
475
:
case
475
:
#line 245
1
"parse.y"
#line 245
2
"parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
476
:
case
476
:
#line 245
3
"parse.y"
#line 245
4
"parse.y"
{
yyungetc
(
':'
,
1
);
yyval
.
ttype
=
NULL_TREE
;
;
{
yyungetc
(
':'
,
1
);
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
477
:
case
477
:
#line 245
5
"parse.y"
#line 245
6
"parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
479
:
case
479
:
#line 246
1
"parse.y"
#line 246
2
"parse.y"
{
yyval
.
ttype
=
chainon
(
yyval
.
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
chainon
(
yyval
.
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
480
:
case
480
:
#line 246
6
"parse.y"
#line 246
7
"parse.y"
{
{
tree
type
=
TREE_TYPE
(
yyvsp
[
0
].
ttype
);
tree
type
=
TREE_TYPE
(
yyvsp
[
0
].
ttype
);
if
(
!
is_aggr_type
(
type
,
1
))
if
(
!
is_aggr_type
(
type
,
1
))
...
@@ -6347,7 +6348,7 @@ case 480:
...
@@ -6347,7 +6348,7 @@ case 480:
;
;
break
;}
break
;}
case
481
:
case
481
:
#line 249
1
"parse.y"
#line 249
2
"parse.y"
{
{
tree
type
=
TREE_TYPE
(
yyvsp
[
0
].
ttype
);
tree
type
=
TREE_TYPE
(
yyvsp
[
0
].
ttype
);
if
(
current_aggr
==
signature_type_node
)
if
(
current_aggr
==
signature_type_node
)
...
@@ -6376,11 +6377,11 @@ case 481:
...
@@ -6376,11 +6377,11 @@ case 481:
;
;
break
;}
break
;}
case
482
:
case
482
:
#line 252
1
"parse.y"
#line 252
2
"parse.y"
{
yyval
.
ttype
=
TYPE_MAIN_DECL
(
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
TYPE_MAIN_DECL
(
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
484
:
case
484
:
#line 252
4
"parse.y"
#line 252
5
"parse.y"
{
{
if
(
current_aggr
==
signature_type_node
)
if
(
current_aggr
==
signature_type_node
)
{
{
...
@@ -6403,7 +6404,7 @@ case 484:
...
@@ -6403,7 +6404,7 @@ case 484:
;
;
break
;}
break
;}
case
485
:
case
485
:
#line 254
5
"parse.y"
#line 254
6
"parse.y"
{
{
if
(
current_aggr
==
signature_type_node
)
if
(
current_aggr
==
signature_type_node
)
{
{
...
@@ -6426,13 +6427,13 @@ case 485:
...
@@ -6426,13 +6427,13 @@ case 485:
;
;
break
;}
break
;}
case
487
:
case
487
:
#line 257
0
"parse.y"
#line 257
1
"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
488
:
case
488
:
#line 257
4
"parse.y"
#line 257
5
"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"
);
...
@@ -6445,7 +6446,7 @@ case 488:
...
@@ -6445,7 +6446,7 @@ case 488:
;
;
break
;}
break
;}
case
489
:
case
489
:
#line 258
5
"parse.y"
#line 258
6
"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
)
...
@@ -6459,7 +6460,7 @@ case 489:
...
@@ -6459,7 +6460,7 @@ case 489:
;
;
break
;}
break
;}
case
490
:
case
490
:
#line 260
0
"parse.y"
#line 260
1
"parse.y"
{
tree
t
=
yyvsp
[
-
1
].
ttype
;
{
tree
t
=
yyvsp
[
-
1
].
ttype
;
push_obstacks_nochange
();
push_obstacks_nochange
();
end_temporary_allocation
();
end_temporary_allocation
();
...
@@ -6547,17 +6548,17 @@ case 490:
...
@@ -6547,17 +6548,17 @@ case 490:
;
;
break
;}
break
;}
case
491
:
case
491
:
#line 26
89
"parse.y"
#line 26
90
"parse.y"
{
{
yyval
.
ttype
=
build_self_reference
();
yyval
.
ttype
=
build_self_reference
();
;
;
break
;}
break
;}
case
492
:
case
492
:
#line 269
6
"parse.y"
#line 269
7
"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
493
:
case
493
:
#line 269
8
"parse.y"
#line 269
9
"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
);
...
@@ -6567,7 +6568,7 @@ case 493:
...
@@ -6567,7 +6568,7 @@ case 493:
;
;
break
;}
break
;}
case
494
:
case
494
:
#line 270
6
"parse.y"
#line 270
7
"parse.y"
{
{
tree
visspec
=
yyvsp
[
-
2
].
ttype
;
tree
visspec
=
yyvsp
[
-
2
].
ttype
;
...
@@ -6580,19 +6581,19 @@ case 494:
...
@@ -6580,19 +6581,19 @@ case 494:
;
;
break
;}
break
;}
case
495
:
case
495
:
#line 271
7
"parse.y"
#line 271
8
"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
496
:
case
496
:
#line 272
7
"parse.y"
#line 272
8
"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
497
:
case
497
:
#line 273
0
"parse.y"
#line 273
1
"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
...
@@ -6607,45 +6608,45 @@ case 497:
...
@@ -6607,45 +6608,45 @@ case 497:
;
;
break
;}
break
;}
case
498
:
case
498
:
#line 274
6
"parse.y"
#line 274
7
"parse.y"
{
;
{
;
break
;}
break
;}
case
499
:
case
499
:
#line 274
8
"parse.y"
#line 274
9
"parse.y"
{
error
(
"missing ';' before right brace"
);
{
error
(
"missing ';' before right brace"
);
yyungetc
(
'}'
,
0
);
;
yyungetc
(
'}'
,
0
);
;
break
;}
break
;}
case
500
:
case
500
:
#line 275
3
"parse.y"
#line 275
4
"parse.y"
{
yyval
.
ttype
=
finish_method
(
yyval
.
ttype
);
;
{
yyval
.
ttype
=
finish_method
(
yyval
.
ttype
);
;
break
;}
break
;}
case
501
:
case
501
:
#line 275
5
"parse.y"
#line 275
6
"parse.y"
{
yyval
.
ttype
=
finish_method
(
yyval
.
ttype
);
;
{
yyval
.
ttype
=
finish_method
(
yyval
.
ttype
);
;
break
;}
break
;}
case
502
:
case
502
:
#line 275
7
"parse.y"
#line 275
8
"parse.y"
{
yyval
.
ttype
=
finish_method
(
yyval
.
ttype
);
;
{
yyval
.
ttype
=
finish_method
(
yyval
.
ttype
);
;
break
;}
break
;}
case
503
:
case
503
:
#line 27
59
"parse.y"
#line 27
60
"parse.y"
{
yyval
.
ttype
=
finish_method
(
yyval
.
ttype
);
;
{
yyval
.
ttype
=
finish_method
(
yyval
.
ttype
);
;
break
;}
break
;}
case
504
:
case
504
:
#line 276
1
"parse.y"
#line 276
2
"parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
505
:
case
505
:
#line 276
3
"parse.y"
#line 276
4
"parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
pedantic
=
yyvsp
[
-
1
].
itype
;
;
pedantic
=
yyvsp
[
-
1
].
itype
;
;
break
;}
break
;}
case
506
:
case
506
:
#line 276
6
"parse.y"
#line 276
7
"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
507
:
case
507
:
#line 276
8
"parse.y"
#line 276
9
"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
);
...
@@ -6653,53 +6654,53 @@ case 507:
...
@@ -6653,53 +6654,53 @@ case 507:
;
;
break
;}
break
;}
case
508
:
case
508
:
#line 278
0
"parse.y"
#line 278
1
"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
509
:
case
509
:
#line 278
2
"parse.y"
#line 278
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
510
:
case
510
:
#line 278
4
"parse.y"
#line 278
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
511
:
case
511
:
#line 278
7
"parse.y"
#line 278
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
512
:
case
512
:
#line 279
0
"parse.y"
#line 279
1
"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
513
:
case
513
:
#line 279
2
"parse.y"
#line 279
3
"parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
514
:
case
514
:
#line 280
3
"parse.y"
#line 280
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
515
:
case
515
:
#line 280
8
"parse.y"
#line 280
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
516
:
case
516
:
#line 281
1
"parse.y"
#line 281
2
"parse.y"
{
yyval
.
ttype
=
do_class_using_decl
(
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
do_class_using_decl
(
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
517
:
case
517
:
#line 281
7
"parse.y"
#line 281
8
"parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
519
:
case
519
:
#line 282
0
"parse.y"
#line 282
1
"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. */
...
@@ -6710,11 +6711,11 @@ case 519:
...
@@ -6710,11 +6711,11 @@ case 519:
;
;
break
;}
break
;}
case
520
:
case
520
:
#line 283
2
"parse.y"
#line 283
3
"parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
522
:
case
522
:
#line 283
5
"parse.y"
#line 283
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. */
...
@@ -6725,7 +6726,7 @@ case 522:
...
@@ -6725,7 +6726,7 @@ case 522:
;
;
break
;}
break
;}
case
527
:
case
527
:
#line 285
7
"parse.y"
#line 285
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
;
...
@@ -6733,7 +6734,7 @@ case 527:
...
@@ -6733,7 +6734,7 @@ case 527:
build_tree_list
(
yyvsp
[
-
1
].
ttype
,
prefix_attributes
));
;
build_tree_list
(
yyvsp
[
-
1
].
ttype
,
prefix_attributes
));
;
break
;}
break
;}
case
528
:
case
528
:
#line 286
3
"parse.y"
#line 286
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
;
...
@@ -6741,7 +6742,7 @@ case 528:
...
@@ -6741,7 +6742,7 @@ case 528:
cplus_decl_attributes
(
yyval
.
ttype
,
yyvsp
[
0
].
ttype
,
prefix_attributes
);
;
cplus_decl_attributes
(
yyval
.
ttype
,
yyvsp
[
0
].
ttype
,
prefix_attributes
);
;
break
;}
break
;}
case
529
:
case
529
:
#line 287
2
"parse.y"
#line 287
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
;
...
@@ -6749,7 +6750,7 @@ case 529:
...
@@ -6749,7 +6750,7 @@ case 529:
build_tree_list
(
yyvsp
[
-
1
].
ttype
,
prefix_attributes
));
;
build_tree_list
(
yyvsp
[
-
1
].
ttype
,
prefix_attributes
));
;
break
;}
break
;}
case
530
:
case
530
:
#line 287
8
"parse.y"
#line 287
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
;
...
@@ -6757,7 +6758,7 @@ case 530:
...
@@ -6757,7 +6758,7 @@ case 530:
build_tree_list
(
yyvsp
[
-
1
].
ttype
,
prefix_attributes
));
;
build_tree_list
(
yyvsp
[
-
1
].
ttype
,
prefix_attributes
));
;
break
;}
break
;}
case
531
:
case
531
:
#line 288
4
"parse.y"
#line 288
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
;
...
@@ -6765,7 +6766,7 @@ case 531:
...
@@ -6765,7 +6766,7 @@ case 531:
cplus_decl_attributes
(
yyval
.
ttype
,
yyvsp
[
0
].
ttype
,
prefix_attributes
);
;
cplus_decl_attributes
(
yyval
.
ttype
,
yyvsp
[
0
].
ttype
,
prefix_attributes
);
;
break
;}
break
;}
case
532
:
case
532
:
#line 289
0
"parse.y"
#line 289
1
"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
;
...
@@ -6773,54 +6774,54 @@ case 532:
...
@@ -6773,54 +6774,54 @@ case 532:
cplus_decl_attributes
(
yyval
.
ttype
,
yyvsp
[
0
].
ttype
,
prefix_attributes
);
;
cplus_decl_attributes
(
yyval
.
ttype
,
yyvsp
[
0
].
ttype
,
prefix_attributes
);
;
break
;}
break
;}
case
533
:
case
533
:
#line 2
899
"parse.y"
#line 2
900
"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
534
:
case
534
:
#line 290
2
"parse.y"
#line 290
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
535
:
case
535
:
#line 290
8
"parse.y"
#line 290
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
536
:
case
536
:
#line 291
1
"parse.y"
#line 291
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
537
:
case
537
:
#line 291
4
"parse.y"
#line 291
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
539
:
case
539
:
#line 292
5
"parse.y"
#line 292
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
540
:
case
540
:
#line 293
0
"parse.y"
#line 293
1
"parse.y"
{
yyval
.
ttype
=
build_enumerator
(
yyval
.
ttype
,
NULL_TREE
);
;
{
yyval
.
ttype
=
build_enumerator
(
yyval
.
ttype
,
NULL_TREE
);
;
break
;}
break
;}
case
541
:
case
541
:
#line 293
2
"parse.y"
#line 293
3
"parse.y"
{
yyval
.
ttype
=
build_enumerator
(
yyval
.
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
build_enumerator
(
yyval
.
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
542
:
case
542
:
#line 293
8
"parse.y"
#line 293
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
543
:
case
543
:
#line 294
1
"parse.y"
#line 294
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
544
:
case
544
:
#line 294
6
"parse.y"
#line 294
7
"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"
);
...
@@ -6830,71 +6831,71 @@ case 544:
...
@@ -6830,71 +6831,71 @@ case 544:
;
;
break
;}
break
;}
case
545
:
case
545
:
#line 295
7
"parse.y"
#line 295
8
"parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
546
:
case
546
:
#line 29
59
"parse.y"
#line 29
60
"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
547
:
case
547
:
#line 296
4
"parse.y"
#line 296
5
"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
548
:
case
548
:
#line 296
7
"parse.y"
#line 296
8
"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
549
:
case
549
:
#line 297
6
"parse.y"
#line 297
7
"parse.y"
{
yyval
.
itype
=
suspend_momentary
();
;
{
yyval
.
itype
=
suspend_momentary
();
;
break
;}
break
;}
case
550
:
case
550
:
#line 298
1
"parse.y"
#line 298
2
"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
551
:
case
551
:
#line 298
7
"parse.y"
#line 298
8
"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
552
:
case
552
:
#line 29
89
"parse.y"
#line 29
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
553
:
case
553
:
#line 299
1
"parse.y"
#line 299
2
"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
554
:
case
554
:
#line 299
3
"parse.y"
#line 299
4
"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
555
:
case
555
:
#line 300
0
"parse.y"
#line 300
1
"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
556
:
case
556
:
#line 300
2
"parse.y"
#line 300
3
"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
557
:
case
557
:
#line 300
4
"parse.y"
#line 300
5
"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
558
:
case
558
:
#line 300
6
"parse.y"
#line 300
7
"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
559
:
case
559
:
#line 300
8
"parse.y"
#line 300
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
561
:
case
561
:
#line 301
6
"parse.y"
#line 301
7
"parse.y"
{
{
if
(
TREE_CODE
(
yyvsp
[
0
].
ttype
)
==
IDENTIFIER_NODE
)
if
(
TREE_CODE
(
yyvsp
[
0
].
ttype
)
==
IDENTIFIER_NODE
)
{
{
...
@@ -6913,7 +6914,7 @@ case 561:
...
@@ -6913,7 +6914,7 @@ case 561:
;
;
break
;}
break
;}
case
562
:
case
562
:
#line 303
3
"parse.y"
#line 303
4
"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
);
...
@@ -6923,97 +6924,97 @@ case 562:
...
@@ -6923,97 +6924,97 @@ case 562:
;
;
break
;}
break
;}
case
565
:
case
565
:
#line 304
6
"parse.y"
#line 304
7
"parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
566
:
case
566
:
#line 305
1
"parse.y"
#line 305
2
"parse.y"
{
yyval
.
ttype
=
get_type_decl
(
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
get_type_decl
(
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
567
:
case
567
:
#line 305
6
"parse.y"
#line 305
7
"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
568
:
case
568
:
#line 305
8
"parse.y"
#line 305
9
"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
569
:
case
569
:
#line 306
0
"parse.y"
#line 306
1
"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
570
:
case
570
:
#line 306
2
"parse.y"
#line 306
3
"parse.y"
{
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
;
break
;}
break
;}
case
571
:
case
571
:
#line 306
4
"parse.y"
#line 306
5
"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
573
:
case
573
:
#line 307
5
"parse.y"
#line 307
6
"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
574
:
case
574
:
#line 307
7
"parse.y"
#line 307
8
"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
575
:
case
575
:
#line 30
79
"parse.y"
#line 30
80
"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
576
:
case
576
:
#line 308
1
"parse.y"
#line 308
2
"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
577
:
case
577
:
#line 308
3
"parse.y"
#line 308
4
"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
579
:
case
579
:
#line 309
1
"parse.y"
#line 309
2
"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
580
:
case
580
:
#line 309
3
"parse.y"
#line 309
4
"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
581
:
case
581
:
#line 309
5
"parse.y"
#line 309
6
"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
582
:
case
582
:
#line 309
7
"parse.y"
#line 309
8
"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
583
:
case
583
:
#line 3
099
"parse.y"
#line 3
100
"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
585
:
case
585
:
#line 310
7
"parse.y"
#line 310
8
"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
586
:
case
586
:
#line 31
09
"parse.y"
#line 31
10
"parse.y"
{
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
;
break
;}
break
;}
case
587
:
case
587
:
#line 311
1
"parse.y"
#line 311
2
"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
588
:
case
588
:
#line 311
3
"parse.y"
#line 311
4
"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
589
:
case
589
:
#line 311
5
"parse.y"
#line 311
6
"parse.y"
{
if
(
OP0
(
yyval
.
ttype
)
!=
current_class_type
)
{
if
(
OP0
(
yyval
.
ttype
)
!=
current_class_type
)
{
{
push_nested_class
(
OP0
(
yyval
.
ttype
),
3
);
push_nested_class
(
OP0
(
yyval
.
ttype
),
3
);
...
@@ -7022,7 +7023,7 @@ case 589:
...
@@ -7022,7 +7023,7 @@ case 589:
;
;
break
;}
break
;}
case
590
:
case
590
:
#line 312
2
"parse.y"
#line 312
3
"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
)
...
@@ -7033,51 +7034,51 @@ case 590:
...
@@ -7033,51 +7034,51 @@ case 590:
;
;
break
;}
break
;}
case
591
:
case
591
:
#line 313
4
"parse.y"
#line 313
5
"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
592
:
case
592
:
#line 313
7
"parse.y"
#line 313
8
"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
593
:
case
593
:
#line 314
3
"parse.y"
#line 314
4
"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
594
:
case
594
:
#line 314
6
"parse.y"
#line 314
7
"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
596
:
case
596
:
#line 315
3
"parse.y"
#line 315
4
"parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
597
:
case
597
:
#line 315
8
"parse.y"
#line 315
9
"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
598
:
case
598
:
#line 316
0
"parse.y"
#line 316
1
"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
599
:
case
599
:
#line 316
2
"parse.y"
#line 316
3
"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
604
:
case
604
:
#line 317
4
"parse.y"
#line 317
5
"parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
605
:
case
605
:
#line 317
6
"parse.y"
#line 317
7
"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
606
:
case
606
:
#line 318
3
"parse.y"
#line 318
4
"parse.y"
{
{
if
(
TREE_CODE
(
yyvsp
[
-
1
].
ttype
)
==
IDENTIFIER_NODE
)
if
(
TREE_CODE
(
yyvsp
[
-
1
].
ttype
)
==
IDENTIFIER_NODE
)
{
{
...
@@ -7093,7 +7094,7 @@ case 606:
...
@@ -7093,7 +7094,7 @@ case 606:
;
;
break
;}
break
;}
case
607
:
case
607
:
#line 319
7
"parse.y"
#line 319
8
"parse.y"
{
{
if
(
TREE_CODE
(
yyvsp
[
-
1
].
ttype
)
==
IDENTIFIER_NODE
)
if
(
TREE_CODE
(
yyvsp
[
-
1
].
ttype
)
==
IDENTIFIER_NODE
)
yyval
.
ttype
=
lastiddecl
;
yyval
.
ttype
=
lastiddecl
;
...
@@ -7101,7 +7102,7 @@ case 607:
...
@@ -7101,7 +7102,7 @@ case 607:
;
;
break
;}
break
;}
case
608
:
case
608
:
#line 320
3
"parse.y"
#line 320
4
"parse.y"
{
{
if
(
TREE_CODE
(
yyval
.
ttype
)
==
IDENTIFIER_NODE
)
if
(
TREE_CODE
(
yyval
.
ttype
)
==
IDENTIFIER_NODE
)
yyval
.
ttype
=
lastiddecl
;
yyval
.
ttype
=
lastiddecl
;
...
@@ -7109,15 +7110,15 @@ case 608:
...
@@ -7109,15 +7110,15 @@ case 608:
;
;
break
;}
break
;}
case
609
:
case
609
:
#line 32
09
"parse.y"
#line 32
10
"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
611
:
case
611
:
#line 322
5
"parse.y"
#line 322
6
"parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
612
:
case
612
:
#line 323
0
"parse.y"
#line 323
1
"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
);
...
@@ -7132,26 +7133,26 @@ case 612:
...
@@ -7132,26 +7133,26 @@ case 612:
;
;
break
;}
break
;}
case
613
:
case
613
:
#line 324
3
"parse.y"
#line 324
4
"parse.y"
{
yyval
.
ttype
=
TREE_TYPE
(
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
TREE_TYPE
(
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
614
:
case
614
:
#line 324
5
"parse.y"
#line 324
6
"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
615
:
case
615
:
#line 324
7
"parse.y"
#line 324
8
"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
616
:
case
616
:
#line 325
2
"parse.y"
#line 325
3
"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
617
:
case
617
:
#line 325
7
"parse.y"
#line 325
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
);
...
@@ -7166,15 +7167,15 @@ case 617:
...
@@ -7166,15 +7167,15 @@ case 617:
;
;
break
;}
break
;}
case
618
:
case
618
:
#line 327
0
"parse.y"
#line 327
1
"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
619
:
case
619
:
#line 327
2
"parse.y"
#line 327
3
"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
620
:
case
620
:
#line 327
7
"parse.y"
#line 327
8
"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
;
...
@@ -7186,7 +7187,7 @@ case 620:
...
@@ -7186,7 +7187,7 @@ case 620:
;
;
break
;}
break
;}
case
621
:
case
621
:
#line 328
7
"parse.y"
#line 328
8
"parse.y"
{
{
if
(
TREE_CODE
(
yyvsp
[
-
1
].
ttype
)
!=
IDENTIFIER_NODE
)
if
(
TREE_CODE
(
yyvsp
[
-
1
].
ttype
)
!=
IDENTIFIER_NODE
)
yyval
.
ttype
=
lastiddecl
;
yyval
.
ttype
=
lastiddecl
;
...
@@ -7194,11 +7195,11 @@ case 621:
...
@@ -7194,11 +7195,11 @@ case 621:
;
;
break
;}
break
;}
case
622
:
case
622
:
#line 329
3
"parse.y"
#line 329
4
"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
625
:
case
625
:
#line 329
7
"parse.y"
#line 329
8
"parse.y"
{
{
if
(
TREE_CODE
(
yyval
.
ttype
)
==
IDENTIFIER_NODE
)
if
(
TREE_CODE
(
yyval
.
ttype
)
==
IDENTIFIER_NODE
)
yyval
.
ttype
=
lastiddecl
;
yyval
.
ttype
=
lastiddecl
;
...
@@ -7206,11 +7207,11 @@ case 625:
...
@@ -7206,11 +7207,11 @@ case 625:
;
;
break
;}
break
;}
case
626
:
case
626
:
#line 330
6
"parse.y"
#line 330
7
"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
627
:
case
627
:
#line 331
1
"parse.y"
#line 331
2
"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
);
...
@@ -7220,156 +7221,156 @@ case 627:
...
@@ -7220,156 +7221,156 @@ case 627:
;
;
break
;}
break
;}
case
629
:
case
629
:
#line 332
0
"parse.y"
#line 332
1
"parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
630
:
case
630
:
#line 332
5
"parse.y"
#line 332
6
"parse.y"
{
got_scope
=
NULL_TREE
;
;
{
got_scope
=
NULL_TREE
;
;
break
;}
break
;}
case
631
:
case
631
:
#line 332
7
"parse.y"
#line 332
8
"parse.y"
{
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
got_scope
=
NULL_TREE
;
;
{
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
got_scope
=
NULL_TREE
;
;
break
;}
break
;}
case
632
:
case
632
:
#line 333
4
"parse.y"
#line 333
5
"parse.y"
{
got_scope
=
void_type_node
;
;
{
got_scope
=
void_type_node
;
;
break
;}
break
;}
case
633
:
case
633
:
#line 334
0
"parse.y"
#line 334
1
"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
634
:
case
634
:
#line 334
2
"parse.y"
#line 334
3
"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
635
:
case
635
:
#line 334
4
"parse.y"
#line 334
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
636
:
case
636
:
#line 334
6
"parse.y"
#line 334
7
"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
637
:
case
637
:
#line 334
8
"parse.y"
#line 334
9
"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
638
:
case
638
:
#line 335
2
"parse.y"
#line 335
3
"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
640
:
case
640
:
#line 336
1
"parse.y"
#line 336
2
"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
641
:
case
641
:
#line 336
3
"parse.y"
#line 336
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
642
:
case
642
:
#line 33
69
"parse.y"
#line 33
70
"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
643
:
case
643
:
#line 337
1
"parse.y"
#line 337
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
644
:
case
644
:
#line 337
3
"parse.y"
#line 337
4
"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
645
:
case
645
:
#line 337
5
"parse.y"
#line 337
6
"parse.y"
{
yyval
.
ttype
=
make_pointer_declarator
(
NULL_TREE
,
NULL_TREE
);
;
{
yyval
.
ttype
=
make_pointer_declarator
(
NULL_TREE
,
NULL_TREE
);
;
break
;}
break
;}
case
646
:
case
646
:
#line 337
7
"parse.y"
#line 337
8
"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
647
:
case
647
:
#line 33
79
"parse.y"
#line 33
80
"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
648
:
case
648
:
#line 338
1
"parse.y"
#line 338
2
"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
649
:
case
649
:
#line 338
3
"parse.y"
#line 338
4
"parse.y"
{
yyval
.
ttype
=
make_reference_declarator
(
NULL_TREE
,
NULL_TREE
);
;
{
yyval
.
ttype
=
make_reference_declarator
(
NULL_TREE
,
NULL_TREE
);
;
break
;}
break
;}
case
650
:
case
650
:
#line 338
5
"parse.y"
#line 338
6
"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
651
:
case
651
:
#line 33
89
"parse.y"
#line 33
90
"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
653
:
case
653
:
#line 339
8
"parse.y"
#line 339
9
"parse.y"
{
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
;
break
;}
break
;}
case
655
:
case
655
:
#line 340
2
"parse.y"
#line 340
3
"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
656
:
case
656
:
#line 340
4
"parse.y"
#line 340
5
"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
657
:
case
657
:
#line 340
6
"parse.y"
#line 340
7
"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
658
:
case
658
:
#line 340
8
"parse.y"
#line 340
9
"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
659
:
case
659
:
#line 341
0
"parse.y"
#line 341
1
"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
660
:
case
660
:
#line 341
2
"parse.y"
#line 341
3
"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
661
:
case
661
:
#line 341
4
"parse.y"
#line 341
5
"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
662
:
case
662
:
#line 341
6
"parse.y"
#line 341
7
"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
663
:
case
663
:
#line 341
8
"parse.y"
#line 341
9
"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
669
:
case
669
:
#line 344
2
"parse.y"
#line 344
3
"parse.y"
{
do_pushlevel
();
;
{
do_pushlevel
();
;
break
;}
break
;}
case
670
:
case
670
:
#line 344
7
"parse.y"
#line 344
8
"parse.y"
{
yyval
.
ttype
=
do_poplevel
();
;
{
yyval
.
ttype
=
do_poplevel
();
;
break
;}
break
;}
case
672
:
case
672
:
#line 345
5
"parse.y"
#line 345
6
"parse.y"
{
if
(
pedantic
)
{
if
(
pedantic
)
pedwarn
(
"ANSI C++ forbids label declarations"
);
;
pedwarn
(
"ANSI C++ forbids label declarations"
);
;
break
;}
break
;}
case
675
:
case
675
:
#line 346
6
"parse.y"
#line 346
7
"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
))
{
{
...
@@ -7380,11 +7381,11 @@ case 675:
...
@@ -7380,11 +7381,11 @@ case 675:
;
;
break
;}
break
;}
case
676
:
case
676
:
#line 348
0
"parse.y"
#line 348
1
"parse.y"
{;
{;
break
;}
break
;}
case
678
:
case
678
:
#line 348
6
"parse.y"
#line 348
7
"parse.y"
{
{
if
(
processing_template_decl
)
if
(
processing_template_decl
)
{
{
...
@@ -7394,7 +7395,7 @@ case 678:
...
@@ -7394,7 +7395,7 @@ case 678:
;
;
break
;}
break
;}
case
679
:
case
679
:
#line 349
4
"parse.y"
#line 349
5
"parse.y"
{
{
if
(
processing_template_decl
)
if
(
processing_template_decl
)
{
{
...
@@ -7406,7 +7407,7 @@ case 679:
...
@@ -7406,7 +7407,7 @@ case 679:
;
;
break
;}
break
;}
case
680
:
case
680
:
#line 350
7
"parse.y"
#line 350
8
"parse.y"
{
{
if
(
processing_template_decl
)
if
(
processing_template_decl
)
{
{
...
@@ -7418,7 +7419,7 @@ case 680:
...
@@ -7418,7 +7419,7 @@ case 680:
;
;
break
;}
break
;}
case
681
:
case
681
:
#line 351
7
"parse.y"
#line 351
8
"parse.y"
{
{
if
(
processing_template_decl
)
if
(
processing_template_decl
)
{
{
...
@@ -7439,7 +7440,7 @@ case 681:
...
@@ -7439,7 +7440,7 @@ case 681:
;
;
break
;}
break
;}
case
682
:
case
682
:
#line 353
6
"parse.y"
#line 353
7
"parse.y"
{
{
if
(
processing_template_decl
)
if
(
processing_template_decl
)
{
{
...
@@ -7450,11 +7451,11 @@ case 682:
...
@@ -7450,11 +7451,11 @@ case 682:
;
;
break
;}
break
;}
case
683
:
case
683
:
#line 354
8
"parse.y"
#line 354
9
"parse.y"
{
finish_stmt
();
;
{
finish_stmt
();
;
break
;}
break
;}
case
684
:
case
684
:
#line 355
0
"parse.y"
#line 355
1
"parse.y"
{
{
if
(
processing_template_decl
)
if
(
processing_template_decl
)
{
{
...
@@ -7464,7 +7465,7 @@ case 684:
...
@@ -7464,7 +7465,7 @@ case 684:
;
;
break
;}
break
;}
case
685
:
case
685
:
#line 355
8
"parse.y"
#line 355
9
"parse.y"
{
{
if
(
processing_template_decl
)
if
(
processing_template_decl
)
{
{
...
@@ -7476,15 +7477,15 @@ case 685:
...
@@ -7476,15 +7477,15 @@ case 685:
;
;
break
;}
break
;}
case
686
:
case
686
:
#line 357
1
"parse.y"
#line 357
2
"parse.y"
{
finish_stmt
();
;
{
finish_stmt
();
;
break
;}
break
;}
case
688
:
case
688
:
#line 357
7
"parse.y"
#line 357
8
"parse.y"
{
finish_stmt
();
;
{
finish_stmt
();
;
break
;}
break
;}
case
689
:
case
689
:
#line 35
79
"parse.y"
#line 35
80
"parse.y"
{
{
tree
expr
=
yyvsp
[
-
1
].
ttype
;
tree
expr
=
yyvsp
[
-
1
].
ttype
;
if
(
!
processing_template_decl
)
if
(
!
processing_template_decl
)
...
@@ -7502,11 +7503,11 @@ case 689:
...
@@ -7502,11 +7503,11 @@ case 689:
finish_stmt
();
;
finish_stmt
();
;
break
;}
break
;}
case
690
:
case
690
:
#line 359
5
"parse.y"
#line 359
6
"parse.y"
{
if
(
!
processing_template_decl
)
expand_start_else
();
;
{
if
(
!
processing_template_decl
)
expand_start_else
();
;
break
;}
break
;}
case
691
:
case
691
:
#line 359
7
"parse.y"
#line 359
8
"parse.y"
{
{
if
(
processing_template_decl
)
if
(
processing_template_decl
)
{
{
...
@@ -7519,17 +7520,17 @@ case 691:
...
@@ -7519,17 +7520,17 @@ case 691:
;
;
break
;}
break
;}
case
692
:
case
692
:
#line 360
8
"parse.y"
#line 360
9
"parse.y"
{
finish_stmt
();
;
{
finish_stmt
();
;
break
;}
break
;}
case
693
:
case
693
:
#line 361
0
"parse.y"
#line 361
1
"parse.y"
{
if
(
!
processing_template_decl
)
expand_end_cond
();
{
if
(
!
processing_template_decl
)
expand_end_cond
();
do_poplevel
();
do_poplevel
();
finish_stmt
();
;
finish_stmt
();
;
break
;}
break
;}
case
694
:
case
694
:
#line 361
4
"parse.y"
#line 361
5
"parse.y"
{
{
if
(
processing_template_decl
)
if
(
processing_template_decl
)
{
{
...
@@ -7546,7 +7547,7 @@ case 694:
...
@@ -7546,7 +7547,7 @@ case 694:
;
;
break
;}
break
;}
case
695
:
case
695
:
#line 36
29
"parse.y"
#line 36
30
"parse.y"
{
{
if
(
processing_template_decl
)
if
(
processing_template_decl
)
{
{
...
@@ -7576,7 +7577,7 @@ case 695:
...
@@ -7576,7 +7577,7 @@ case 695:
;
;
break
;}
break
;}
case
696
:
case
696
:
#line 365
7
"parse.y"
#line 365
8
"parse.y"
{
{
if
(
processing_template_decl
)
if
(
processing_template_decl
)
{
{
...
@@ -7590,7 +7591,7 @@ case 696:
...
@@ -7590,7 +7591,7 @@ case 696:
;
;
break
;}
break
;}
case
697
:
case
697
:
#line 36
69
"parse.y"
#line 36
70
"parse.y"
{
{
if
(
processing_template_decl
)
if
(
processing_template_decl
)
{
{
...
@@ -7606,7 +7607,7 @@ case 697:
...
@@ -7606,7 +7607,7 @@ case 697:
;
;
break
;}
break
;}
case
698
:
case
698
:
#line 368
3
"parse.y"
#line 368
4
"parse.y"
{
{
if
(
processing_template_decl
)
if
(
processing_template_decl
)
{
{
...
@@ -7622,7 +7623,7 @@ case 698:
...
@@ -7622,7 +7623,7 @@ case 698:
;
;
break
;}
break
;}
case
699
:
case
699
:
#line 369
7
"parse.y"
#line 369
8
"parse.y"
{
{
if
(
processing_template_decl
)
if
(
processing_template_decl
)
TREE_OPERAND
(
yyvsp
[
-
5
].
ttype
,
1
)
=
yyvsp
[
-
1
].
ttype
;
TREE_OPERAND
(
yyvsp
[
-
5
].
ttype
,
1
)
=
yyvsp
[
-
1
].
ttype
;
...
@@ -7637,7 +7638,7 @@ case 699:
...
@@ -7637,7 +7638,7 @@ case 699:
;
;
break
;}
break
;}
case
700
:
case
700
:
#line 371
0
"parse.y"
#line 371
1
"parse.y"
{
if
(
processing_template_decl
)
{
if
(
processing_template_decl
)
{
{
yyval
.
ttype
=
build_min_nt
(
FOR_STMT
,
NULL_TREE
,
NULL_TREE
,
yyval
.
ttype
=
build_min_nt
(
FOR_STMT
,
NULL_TREE
,
NULL_TREE
,
...
@@ -7658,7 +7659,7 @@ case 700:
...
@@ -7658,7 +7659,7 @@ case 700:
;
;
break
;}
break
;}
case
701
:
case
701
:
#line 37
29
"parse.y"
#line 37
30
"parse.y"
{
{
if
(
processing_template_decl
)
if
(
processing_template_decl
)
{
{
...
@@ -7678,7 +7679,7 @@ case 701:
...
@@ -7678,7 +7679,7 @@ case 701:
;
;
break
;}
break
;}
case
702
:
case
702
:
#line 374
7
"parse.y"
#line 374
8
"parse.y"
{
{
if
(
processing_template_decl
)
if
(
processing_template_decl
)
{
{
...
@@ -7708,7 +7709,7 @@ case 702:
...
@@ -7708,7 +7709,7 @@ case 702:
;
;
break
;}
break
;}
case
703
:
case
703
:
#line 377
7
"parse.y"
#line 377
8
"parse.y"
{
{
if
(
processing_template_decl
)
if
(
processing_template_decl
)
TREE_OPERAND
(
yyvsp
[
-
9
].
ttype
,
2
)
=
yyvsp
[
-
1
].
ttype
;
TREE_OPERAND
(
yyvsp
[
-
9
].
ttype
,
2
)
=
yyvsp
[
-
1
].
ttype
;
...
@@ -7716,7 +7717,7 @@ case 703:
...
@@ -7716,7 +7717,7 @@ case 703:
;
;
break
;}
break
;}
case
704
:
case
704
:
#line 378
3
"parse.y"
#line 378
4
"parse.y"
{
{
if
(
processing_template_decl
)
if
(
processing_template_decl
)
{
{
...
@@ -7739,7 +7740,7 @@ case 704:
...
@@ -7739,7 +7740,7 @@ case 704:
finish_stmt
();
;
finish_stmt
();
;
break
;}
break
;}
case
705
:
case
705
:
#line 380
4
"parse.y"
#line 380
5
"parse.y"
{
{
if
(
processing_template_decl
)
if
(
processing_template_decl
)
{
{
...
@@ -7758,7 +7759,7 @@ case 705:
...
@@ -7758,7 +7759,7 @@ case 705:
;
;
break
;}
break
;}
case
706
:
case
706
:
#line 382
1
"parse.y"
#line 382
2
"parse.y"
{
{
if
(
processing_template_decl
)
if
(
processing_template_decl
)
{
{
...
@@ -7773,23 +7774,23 @@ case 706:
...
@@ -7773,23 +7774,23 @@ case 706:
;
;
break
;}
break
;}
case
707
:
case
707
:
#line 383
4
"parse.y"
#line 383
5
"parse.y"
{
finish_stmt
();
;
{
finish_stmt
();
;
break
;}
break
;}
case
708
:
case
708
:
#line 383
6
"parse.y"
#line 383
7
"parse.y"
{
do_case
(
yyvsp
[
-
1
].
ttype
,
NULL_TREE
);
;
{
do_case
(
yyvsp
[
-
1
].
ttype
,
NULL_TREE
);
;
break
;}
break
;}
case
710
:
case
710
:
#line 38
39
"parse.y"
#line 38
40
"parse.y"
{
do_case
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
{
do_case
(
yyvsp
[
-
3
].
ttype
,
yyvsp
[
-
1
].
ttype
);
;
break
;}
break
;}
case
712
:
case
712
:
#line 384
2
"parse.y"
#line 384
3
"parse.y"
{
do_case
(
NULL_TREE
,
NULL_TREE
);
;
{
do_case
(
NULL_TREE
,
NULL_TREE
);
;
break
;}
break
;}
case
714
:
case
714
:
#line 384
5
"parse.y"
#line 384
6
"parse.y"
{
emit_line_note
(
input_filename
,
lineno
);
{
emit_line_note
(
input_filename
,
lineno
);
if
(
processing_template_decl
)
if
(
processing_template_decl
)
add_tree
(
build_min_nt
(
BREAK_STMT
));
add_tree
(
build_min_nt
(
BREAK_STMT
));
...
@@ -7797,7 +7798,7 @@ case 714:
...
@@ -7797,7 +7798,7 @@ case 714:
error
(
"break statement not within loop or switch"
);
;
error
(
"break statement not within loop or switch"
);
;
break
;}
break
;}
case
715
:
case
715
:
#line 385
1
"parse.y"
#line 385
2
"parse.y"
{
emit_line_note
(
input_filename
,
lineno
);
{
emit_line_note
(
input_filename
,
lineno
);
if
(
processing_template_decl
)
if
(
processing_template_decl
)
add_tree
(
build_min_nt
(
CONTINUE_STMT
));
add_tree
(
build_min_nt
(
CONTINUE_STMT
));
...
@@ -7805,19 +7806,19 @@ case 715:
...
@@ -7805,19 +7806,19 @@ case 715:
error
(
"continue statement not within a loop"
);
;
error
(
"continue statement not within a loop"
);
;
break
;}
break
;}
case
716
:
case
716
:
#line 385
7
"parse.y"
#line 385
8
"parse.y"
{
emit_line_note
(
input_filename
,
lineno
);
{
emit_line_note
(
input_filename
,
lineno
);
c_expand_return
(
NULL_TREE
);
;
c_expand_return
(
NULL_TREE
);
;
break
;}
break
;}
case
717
:
case
717
:
#line 386
0
"parse.y"
#line 386
1
"parse.y"
{
emit_line_note
(
input_filename
,
lineno
);
{
emit_line_note
(
input_filename
,
lineno
);
c_expand_return
(
yyvsp
[
-
1
].
ttype
);
c_expand_return
(
yyvsp
[
-
1
].
ttype
);
finish_stmt
();
finish_stmt
();
;
;
break
;}
break
;}
case
718
:
case
718
:
#line 386
5
"parse.y"
#line 386
6
"parse.y"
{
if
(
TREE_CHAIN
(
yyvsp
[
-
2
].
ttype
))
yyvsp
[
-
2
].
ttype
=
combine_strings
(
yyvsp
[
-
2
].
ttype
);
{
if
(
TREE_CHAIN
(
yyvsp
[
-
2
].
ttype
))
yyvsp
[
-
2
].
ttype
=
combine_strings
(
yyvsp
[
-
2
].
ttype
);
emit_line_note
(
input_filename
,
lineno
);
emit_line_note
(
input_filename
,
lineno
);
expand_asm
(
yyvsp
[
-
2
].
ttype
);
expand_asm
(
yyvsp
[
-
2
].
ttype
);
...
@@ -7825,7 +7826,7 @@ case 718:
...
@@ -7825,7 +7826,7 @@ case 718:
;
;
break
;}
break
;}
case
719
:
case
719
:
#line 387
2
"parse.y"
#line 387
3
"parse.y"
{
if
(
TREE_CHAIN
(
yyvsp
[
-
4
].
ttype
))
yyvsp
[
-
4
].
ttype
=
combine_strings
(
yyvsp
[
-
4
].
ttype
);
{
if
(
TREE_CHAIN
(
yyvsp
[
-
4
].
ttype
))
yyvsp
[
-
4
].
ttype
=
combine_strings
(
yyvsp
[
-
4
].
ttype
);
emit_line_note
(
input_filename
,
lineno
);
emit_line_note
(
input_filename
,
lineno
);
c_expand_asm_operands
(
yyvsp
[
-
4
].
ttype
,
yyvsp
[
-
2
].
ttype
,
NULL_TREE
,
NULL_TREE
,
c_expand_asm_operands
(
yyvsp
[
-
4
].
ttype
,
yyvsp
[
-
2
].
ttype
,
NULL_TREE
,
NULL_TREE
,
...
@@ -7835,7 +7836,7 @@ case 719:
...
@@ -7835,7 +7836,7 @@ case 719:
;
;
break
;}
break
;}
case
720
:
case
720
:
#line 388
1
"parse.y"
#line 388
2
"parse.y"
{
if
(
TREE_CHAIN
(
yyvsp
[
-
6
].
ttype
))
yyvsp
[
-
6
].
ttype
=
combine_strings
(
yyvsp
[
-
6
].
ttype
);
{
if
(
TREE_CHAIN
(
yyvsp
[
-
6
].
ttype
))
yyvsp
[
-
6
].
ttype
=
combine_strings
(
yyvsp
[
-
6
].
ttype
);
emit_line_note
(
input_filename
,
lineno
);
emit_line_note
(
input_filename
,
lineno
);
c_expand_asm_operands
(
yyvsp
[
-
6
].
ttype
,
yyvsp
[
-
4
].
ttype
,
yyvsp
[
-
2
].
ttype
,
NULL_TREE
,
c_expand_asm_operands
(
yyvsp
[
-
6
].
ttype
,
yyvsp
[
-
4
].
ttype
,
yyvsp
[
-
2
].
ttype
,
NULL_TREE
,
...
@@ -7845,7 +7846,7 @@ case 720:
...
@@ -7845,7 +7846,7 @@ case 720:
;
;
break
;}
break
;}
case
721
:
case
721
:
#line 389
1
"parse.y"
#line 389
2
"parse.y"
{
if
(
TREE_CHAIN
(
yyvsp
[
-
8
].
ttype
))
yyvsp
[
-
8
].
ttype
=
combine_strings
(
yyvsp
[
-
8
].
ttype
);
{
if
(
TREE_CHAIN
(
yyvsp
[
-
8
].
ttype
))
yyvsp
[
-
8
].
ttype
=
combine_strings
(
yyvsp
[
-
8
].
ttype
);
emit_line_note
(
input_filename
,
lineno
);
emit_line_note
(
input_filename
,
lineno
);
c_expand_asm_operands
(
yyvsp
[
-
8
].
ttype
,
yyvsp
[
-
6
].
ttype
,
yyvsp
[
-
4
].
ttype
,
yyvsp
[
-
2
].
ttype
,
c_expand_asm_operands
(
yyvsp
[
-
8
].
ttype
,
yyvsp
[
-
6
].
ttype
,
yyvsp
[
-
4
].
ttype
,
yyvsp
[
-
2
].
ttype
,
...
@@ -7855,7 +7856,7 @@ case 721:
...
@@ -7855,7 +7856,7 @@ case 721:
;
;
break
;}
break
;}
case
722
:
case
722
:
#line 3
899
"parse.y"
#line 3
900
"parse.y"
{
{
if
(
processing_template_decl
)
if
(
processing_template_decl
)
add_tree
(
build_min_nt
(
GOTO_STMT
,
yyvsp
[
-
1
].
ttype
));
add_tree
(
build_min_nt
(
GOTO_STMT
,
yyvsp
[
-
1
].
ttype
));
...
@@ -7865,7 +7866,7 @@ case 722:
...
@@ -7865,7 +7866,7 @@ case 722:
;
;
break
;}
break
;}
case
723
:
case
723
:
#line 390
7
"parse.y"
#line 390
8
"parse.y"
{
{
if
(
processing_template_decl
)
if
(
processing_template_decl
)
add_tree
(
build_min_nt
(
GOTO_STMT
,
yyvsp
[
-
1
].
ttype
));
add_tree
(
build_min_nt
(
GOTO_STMT
,
yyvsp
[
-
1
].
ttype
));
...
@@ -7880,21 +7881,21 @@ case 723:
...
@@ -7880,21 +7881,21 @@ case 723:
;
;
break
;}
break
;}
case
724
:
case
724
:
#line 392
0
"parse.y"
#line 392
1
"parse.y"
{
finish_stmt
();
;
{
finish_stmt
();
;
break
;}
break
;}
case
725
:
case
725
:
#line 392
2
"parse.y"
#line 392
3
"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
726
:
case
726
:
#line 392
6
"parse.y"
#line 392
7
"parse.y"
{
finish_stmt
();
;
{
finish_stmt
();
;
break
;}
break
;}
case
728
:
case
728
:
#line 393
2
"parse.y"
#line 393
3
"parse.y"
{
{
if
(
!
current_function_parms_stored
)
if
(
!
current_function_parms_stored
)
store_parm_decls
();
store_parm_decls
();
...
@@ -7902,11 +7903,11 @@ case 728:
...
@@ -7902,11 +7903,11 @@ case 728:
;
;
break
;}
break
;}
case
729
:
case
729
:
#line 393
8
"parse.y"
#line 393
9
"parse.y"
{
expand_start_all_catch
();
;
{
expand_start_all_catch
();
;
break
;}
break
;}
case
730
:
case
730
:
#line 394
0
"parse.y"
#line 394
1
"parse.y"
{
{
int
nested
=
(
hack_decl_function_context
int
nested
=
(
hack_decl_function_context
(
current_function_decl
)
!=
NULL_TREE
);
(
current_function_decl
)
!=
NULL_TREE
);
...
@@ -7915,7 +7916,7 @@ case 730:
...
@@ -7915,7 +7916,7 @@ case 730:
;
;
break
;}
break
;}
case
731
:
case
731
:
#line 395
0
"parse.y"
#line 395
1
"parse.y"
{
{
if
(
processing_template_decl
)
if
(
processing_template_decl
)
{
{
...
@@ -7931,7 +7932,7 @@ case 731:
...
@@ -7931,7 +7932,7 @@ case 731:
;
;
break
;}
break
;}
case
732
:
case
732
:
#line 396
4
"parse.y"
#line 396
5
"parse.y"
{
{
if
(
processing_template_decl
)
if
(
processing_template_decl
)
{
{
...
@@ -7944,7 +7945,7 @@ case 732:
...
@@ -7944,7 +7945,7 @@ case 732:
;
;
break
;}
break
;}
case
733
:
case
733
:
#line 397
5
"parse.y"
#line 397
6
"parse.y"
{
{
if
(
processing_template_decl
)
if
(
processing_template_decl
)
{
{
...
@@ -7957,7 +7958,7 @@ case 733:
...
@@ -7957,7 +7958,7 @@ case 733:
;
;
break
;}
break
;}
case
736
:
case
736
:
#line 399
4
"parse.y"
#line 399
5
"parse.y"
{
{
if
(
processing_template_decl
)
if
(
processing_template_decl
)
{
{
...
@@ -7968,7 +7969,7 @@ case 736:
...
@@ -7968,7 +7969,7 @@ case 736:
;
;
break
;}
break
;}
case
737
:
case
737
:
#line 400
3
"parse.y"
#line 400
4
"parse.y"
{
{
if
(
processing_template_decl
)
if
(
processing_template_decl
)
{
{
...
@@ -7979,7 +7980,7 @@ case 737:
...
@@ -7979,7 +7980,7 @@ case 737:
;
;
break
;}
break
;}
case
738
:
case
738
:
#line 401
2
"parse.y"
#line 401
3
"parse.y"
{
{
if
(
processing_template_decl
)
if
(
processing_template_decl
)
{
{
...
@@ -7992,17 +7993,17 @@ case 738:
...
@@ -7992,17 +7993,17 @@ case 738:
;
;
break
;}
break
;}
case
742
:
case
742
:
#line 403
2
"parse.y"
#line 403
3
"parse.y"
{
expand_start_catch_block
(
NULL_TREE
,
NULL_TREE
);
;
{
expand_start_catch_block
(
NULL_TREE
,
NULL_TREE
);
;
break
;}
break
;}
case
743
:
case
743
:
#line 404
8
"parse.y"
#line 404
9
"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
744
:
case
744
:
#line 405
5
"parse.y"
#line 405
6
"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
);
...
@@ -8011,129 +8012,129 @@ case 744:
...
@@ -8011,129 +8012,129 @@ case 744:
;
;
break
;}
break
;}
case
745
:
case
745
:
#line 406
2
"parse.y"
#line 406
3
"parse.y"
{
goto
do_label
;
;
{
goto
do_label
;
;
break
;}
break
;}
case
746
:
case
746
:
#line 406
4
"parse.y"
#line 406
5
"parse.y"
{
goto
do_label
;
;
{
goto
do_label
;
;
break
;}
break
;}
case
747
:
case
747
:
#line 406
6
"parse.y"
#line 406
7
"parse.y"
{
goto
do_label
;
;
{
goto
do_label
;
;
break
;}
break
;}
case
748
:
case
748
:
#line 407
1
"parse.y"
#line 407
2
"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
750
:
case
750
:
#line 407
4
"parse.y"
#line 407
5
"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
751
:
case
751
:
#line 408
3
"parse.y"
#line 408
4
"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
752
:
case
752
:
#line 408
6
"parse.y"
#line 408
7
"parse.y"
{
emit_line_note
(
input_filename
,
lineno
);
;
{
emit_line_note
(
input_filename
,
lineno
);
;
break
;}
break
;}
case
753
:
case
753
:
#line 409
1
"parse.y"
#line 409
2
"parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
755
:
case
755
:
#line 409
4
"parse.y"
#line 409
5
"parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
756
:
case
756
:
#line 410
1
"parse.y"
#line 410
2
"parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
759
:
case
759
:
#line 410
8
"parse.y"
#line 410
9
"parse.y"
{
yyval
.
ttype
=
chainon
(
yyval
.
ttype
,
yyvsp
[
0
].
ttype
);
;
{
yyval
.
ttype
=
chainon
(
yyval
.
ttype
,
yyvsp
[
0
].
ttype
);
;
break
;}
break
;}
case
760
:
case
760
:
#line 411
3
"parse.y"
#line 411
4
"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
761
:
case
761
:
#line 411
8
"parse.y"
#line 411
9
"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
762
:
case
762
:
#line 412
0
"parse.y"
#line 412
1
"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
763
:
case
763
:
#line 413
1
"parse.y"
#line 413
2
"parse.y"
{
{
yyval
.
ttype
=
empty_parms
();
yyval
.
ttype
=
empty_parms
();
;
;
break
;}
break
;}
case
765
:
case
765
:
#line 413
6
"parse.y"
#line 413
7
"parse.y"
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ftype
.
t
,
void_list_node
);
{
yyval
.
ttype
=
tree_cons
(
NULL_TREE
,
yyvsp
[
0
].
ftype
.
t
,
void_list_node
);
TREE_PARMLIST
(
yyval
.
ttype
)
=
1
;
TREE_PARMLIST
(
yyval
.
ttype
)
=
1
;
check_for_new_type
(
"inside parameter list"
,
yyvsp
[
0
].
ftype
);
;
check_for_new_type
(
"inside parameter list"
,
yyvsp
[
0
].
ftype
);
;
break
;}
break
;}
case
766
:
case
766
:
#line 414
5
"parse.y"
#line 414
6
"parse.y"
{
{
yyval
.
ttype
=
chainon
(
yyval
.
ttype
,
void_list_node
);
yyval
.
ttype
=
chainon
(
yyval
.
ttype
,
void_list_node
);
TREE_PARMLIST
(
yyval
.
ttype
)
=
1
;
TREE_PARMLIST
(
yyval
.
ttype
)
=
1
;
;
;
break
;}
break
;}
case
767
:
case
767
:
#line 415
0
"parse.y"
#line 415
1
"parse.y"
{
{
TREE_PARMLIST
(
yyval
.
ttype
)
=
1
;
TREE_PARMLIST
(
yyval
.
ttype
)
=
1
;
;
;
break
;}
break
;}
case
768
:
case
768
:
#line 415
5
"parse.y"
#line 415
6
"parse.y"
{
{
TREE_PARMLIST
(
yyval
.
ttype
)
=
1
;
TREE_PARMLIST
(
yyval
.
ttype
)
=
1
;
;
;
break
;}
break
;}
case
769
:
case
769
:
#line 41
59
"parse.y"
#line 41
60
"parse.y"
{
{
yyval
.
ttype
=
build_tree_list
(
NULL_TREE
,
yyvsp
[
-
1
].
ftype
.
t
);
yyval
.
ttype
=
build_tree_list
(
NULL_TREE
,
yyvsp
[
-
1
].
ftype
.
t
);
TREE_PARMLIST
(
yyval
.
ttype
)
=
1
;
TREE_PARMLIST
(
yyval
.
ttype
)
=
1
;
;
;
break
;}
break
;}
case
770
:
case
770
:
#line 416
4
"parse.y"
#line 416
5
"parse.y"
{
{
yyval
.
ttype
=
NULL_TREE
;
yyval
.
ttype
=
NULL_TREE
;
;
;
break
;}
break
;}
case
771
:
case
771
:
#line 416
8
"parse.y"
#line 416
9
"parse.y"
{
{
TREE_PARMLIST
(
yyval
.
ttype
)
=
1
;
TREE_PARMLIST
(
yyval
.
ttype
)
=
1
;
;
;
break
;}
break
;}
case
772
:
case
772
:
#line 417
2
"parse.y"
#line 417
3
"parse.y"
{
{
TREE_PARMLIST
(
yyval
.
ttype
)
=
1
;
TREE_PARMLIST
(
yyval
.
ttype
)
=
1
;
;
;
break
;}
break
;}
case
773
:
case
773
:
#line 417
6
"parse.y"
#line 417
7
"parse.y"
{
{
yyval
.
ttype
=
build_tree_list
(
NULL_TREE
,
yyvsp
[
-
1
].
ftype
.
t
);
yyval
.
ttype
=
build_tree_list
(
NULL_TREE
,
yyvsp
[
-
1
].
ftype
.
t
);
TREE_PARMLIST
(
yyval
.
ttype
)
=
1
;
TREE_PARMLIST
(
yyval
.
ttype
)
=
1
;
;
;
break
;}
break
;}
case
774
:
case
774
:
#line 418
1
"parse.y"
#line 418
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
...
@@ -8146,7 +8147,7 @@ case 774:
...
@@ -8146,7 +8147,7 @@ case 774:
;
;
break
;}
break
;}
case
775
:
case
775
:
#line 419
2
"parse.y"
#line 419
3
"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
...
@@ -8159,98 +8160,98 @@ case 775:
...
@@ -8159,98 +8160,98 @@ case 775:
;
;
break
;}
break
;}
case
776
:
case
776
:
#line 420
7
"parse.y"
#line 420
8
"parse.y"
{
maybe_snarf_defarg
();
;
{
maybe_snarf_defarg
();
;
break
;}
break
;}
case
777
:
case
777
:
#line 42
09
"parse.y"
#line 42
10
"parse.y"
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
0
].
ttype
;
;
break
;}
break
;}
case
780
:
case
780
:
#line 422
0
"parse.y"
#line 422
1
"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
781
:
case
781
:
#line 422
3
"parse.y"
#line 422
4
"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
782
:
case
782
:
#line 422
6
"parse.y"
#line 422
7
"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
783
:
case
783
:
#line 42
29
"parse.y"
#line 42
30
"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
784
:
case
784
:
#line 423
1
"parse.y"
#line 423
2
"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
786
:
case
786
:
#line 423
7
"parse.y"
#line 423
8
"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
787
:
case
787
:
#line 424
7
"parse.y"
#line 424
8
"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
788
:
case
788
:
#line 425
1
"parse.y"
#line 425
2
"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
789
:
case
789
:
#line 425
4
"parse.y"
#line 425
5
"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
790
:
case
790
:
#line 425
7
"parse.y"
#line 425
8
"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
791
:
case
791
:
#line 426
1
"parse.y"
#line 426
2
"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
792
:
case
792
:
#line 426
5
"parse.y"
#line 426
6
"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
793
:
case
793
:
#line 427
2
"parse.y"
#line 427
3
"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
794
:
case
794
:
#line 427
5
"parse.y"
#line 427
6
"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
797
:
case
797
:
#line 428
6
"parse.y"
#line 428
7
"parse.y"
{
see_typename
();
;
{
see_typename
();
;
break
;}
break
;}
case
798
:
case
798
:
#line 429
1
"parse.y"
#line 429
2
"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
799
:
case
799
:
#line 429
6
"parse.y"
#line 429
7
"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
...
@@ -8261,188 +8262,188 @@ case 799:
...
@@ -8261,188 +8262,188 @@ case 799:
;
;
break
;}
break
;}
case
800
:
case
800
:
#line 430
8
"parse.y"
#line 430
9
"parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
801
:
case
801
:
#line 431
0
"parse.y"
#line 431
1
"parse.y"
{
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
;
{
yyval
.
ttype
=
yyvsp
[
-
1
].
ttype
;
;
break
;}
break
;}
case
802
:
case
802
:
#line 431
2
"parse.y"
#line 431
3
"parse.y"
{
yyval
.
ttype
=
build_decl_list
(
NULL_TREE
,
NULL_TREE
);
;
{
yyval
.
ttype
=
build_decl_list
(
NULL_TREE
,
NULL_TREE
);
;
break
;}
break
;}
case
803
:
case
803
:
#line 431
7
"parse.y"
#line 431
8
"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
805
:
case
805
:
#line 432
3
"parse.y"
#line 432
4
"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
806
:
case
806
:
#line 433
1
"parse.y"
#line 433
2
"parse.y"
{
yyval
.
ttype
=
NULL_TREE
;
;
{
yyval
.
ttype
=
NULL_TREE
;
;
break
;}
break
;}
case
807
:
case
807
:
#line 433
3
"parse.y"
#line 433
4
"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
808
:
case
808
:
#line 433
5
"parse.y"
#line 433
6
"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
809
:
case
809
:
#line 433
7
"parse.y"
#line 433
8
"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
810
:
case
810
:
#line 434
4
"parse.y"
#line 434
5
"parse.y"
{
got_scope
=
NULL_TREE
;
;
{
got_scope
=
NULL_TREE
;
;
break
;}
break
;}
case
811
:
case
811
:
#line 43
49
"parse.y"
#line 43
50
"parse.y"
{
yyval
.
ttype
=
ansi_opname
[
MULT_EXPR
];
;
{
yyval
.
ttype
=
ansi_opname
[
MULT_EXPR
];
;
break
;}
break
;}
case
812
:
case
812
:
#line 435
1
"parse.y"
#line 435
2
"parse.y"
{
yyval
.
ttype
=
ansi_opname
[
TRUNC_DIV_EXPR
];
;
{
yyval
.
ttype
=
ansi_opname
[
TRUNC_DIV_EXPR
];
;
break
;}
break
;}
case
813
:
case
813
:
#line 435
3
"parse.y"
#line 435
4
"parse.y"
{
yyval
.
ttype
=
ansi_opname
[
TRUNC_MOD_EXPR
];
;
{
yyval
.
ttype
=
ansi_opname
[
TRUNC_MOD_EXPR
];
;
break
;}
break
;}
case
814
:
case
814
:
#line 435
5
"parse.y"
#line 435
6
"parse.y"
{
yyval
.
ttype
=
ansi_opname
[
PLUS_EXPR
];
;
{
yyval
.
ttype
=
ansi_opname
[
PLUS_EXPR
];
;
break
;}
break
;}
case
815
:
case
815
:
#line 435
7
"parse.y"
#line 435
8
"parse.y"
{
yyval
.
ttype
=
ansi_opname
[
MINUS_EXPR
];
;
{
yyval
.
ttype
=
ansi_opname
[
MINUS_EXPR
];
;
break
;}
break
;}
case
816
:
case
816
:
#line 43
59
"parse.y"
#line 43
60
"parse.y"
{
yyval
.
ttype
=
ansi_opname
[
BIT_AND_EXPR
];
;
{
yyval
.
ttype
=
ansi_opname
[
BIT_AND_EXPR
];
;
break
;}
break
;}
case
817
:
case
817
:
#line 436
1
"parse.y"
#line 436
2
"parse.y"
{
yyval
.
ttype
=
ansi_opname
[
BIT_IOR_EXPR
];
;
{
yyval
.
ttype
=
ansi_opname
[
BIT_IOR_EXPR
];
;
break
;}
break
;}
case
818
:
case
818
:
#line 436
3
"parse.y"
#line 436
4
"parse.y"
{
yyval
.
ttype
=
ansi_opname
[
BIT_XOR_EXPR
];
;
{
yyval
.
ttype
=
ansi_opname
[
BIT_XOR_EXPR
];
;
break
;}
break
;}
case
819
:
case
819
:
#line 436
5
"parse.y"
#line 436
6
"parse.y"
{
yyval
.
ttype
=
ansi_opname
[
BIT_NOT_EXPR
];
;
{
yyval
.
ttype
=
ansi_opname
[
BIT_NOT_EXPR
];
;
break
;}
break
;}
case
820
:
case
820
:
#line 436
7
"parse.y"
#line 436
8
"parse.y"
{
yyval
.
ttype
=
ansi_opname
[
COMPOUND_EXPR
];
;
{
yyval
.
ttype
=
ansi_opname
[
COMPOUND_EXPR
];
;
break
;}
break
;}
case
821
:
case
821
:
#line 43
69
"parse.y"
#line 43
70
"parse.y"
{
yyval
.
ttype
=
ansi_opname
[
yyvsp
[
0
].
code
];
;
{
yyval
.
ttype
=
ansi_opname
[
yyvsp
[
0
].
code
];
;
break
;}
break
;}
case
822
:
case
822
:
#line 437
1
"parse.y"
#line 437
2
"parse.y"
{
yyval
.
ttype
=
ansi_opname
[
LT_EXPR
];
;
{
yyval
.
ttype
=
ansi_opname
[
LT_EXPR
];
;
break
;}
break
;}
case
823
:
case
823
:
#line 437
3
"parse.y"
#line 437
4
"parse.y"
{
yyval
.
ttype
=
ansi_opname
[
GT_EXPR
];
;
{
yyval
.
ttype
=
ansi_opname
[
GT_EXPR
];
;
break
;}
break
;}
case
824
:
case
824
:
#line 437
5
"parse.y"
#line 437
6
"parse.y"
{
yyval
.
ttype
=
ansi_opname
[
yyvsp
[
0
].
code
];
;
{
yyval
.
ttype
=
ansi_opname
[
yyvsp
[
0
].
code
];
;
break
;}
break
;}
case
825
:
case
825
:
#line 437
7
"parse.y"
#line 437
8
"parse.y"
{
yyval
.
ttype
=
ansi_assopname
[
yyvsp
[
0
].
code
];
;
{
yyval
.
ttype
=
ansi_assopname
[
yyvsp
[
0
].
code
];
;
break
;}
break
;}
case
826
:
case
826
:
#line 43
79
"parse.y"
#line 43
80
"parse.y"
{
yyval
.
ttype
=
ansi_opname
[
MODIFY_EXPR
];
;
{
yyval
.
ttype
=
ansi_opname
[
MODIFY_EXPR
];
;
break
;}
break
;}
case
827
:
case
827
:
#line 438
1
"parse.y"
#line 438
2
"parse.y"
{
yyval
.
ttype
=
ansi_opname
[
yyvsp
[
0
].
code
];
;
{
yyval
.
ttype
=
ansi_opname
[
yyvsp
[
0
].
code
];
;
break
;}
break
;}
case
828
:
case
828
:
#line 438
3
"parse.y"
#line 438
4
"parse.y"
{
yyval
.
ttype
=
ansi_opname
[
yyvsp
[
0
].
code
];
;
{
yyval
.
ttype
=
ansi_opname
[
yyvsp
[
0
].
code
];
;
break
;}
break
;}
case
829
:
case
829
:
#line 438
5
"parse.y"
#line 438
6
"parse.y"
{
yyval
.
ttype
=
ansi_opname
[
POSTINCREMENT_EXPR
];
;
{
yyval
.
ttype
=
ansi_opname
[
POSTINCREMENT_EXPR
];
;
break
;}
break
;}
case
830
:
case
830
:
#line 438
7
"parse.y"
#line 438
8
"parse.y"
{
yyval
.
ttype
=
ansi_opname
[
PREDECREMENT_EXPR
];
;
{
yyval
.
ttype
=
ansi_opname
[
PREDECREMENT_EXPR
];
;
break
;}
break
;}
case
831
:
case
831
:
#line 43
89
"parse.y"
#line 43
90
"parse.y"
{
yyval
.
ttype
=
ansi_opname
[
TRUTH_ANDIF_EXPR
];
;
{
yyval
.
ttype
=
ansi_opname
[
TRUTH_ANDIF_EXPR
];
;
break
;}
break
;}
case
832
:
case
832
:
#line 439
1
"parse.y"
#line 439
2
"parse.y"
{
yyval
.
ttype
=
ansi_opname
[
TRUTH_ORIF_EXPR
];
;
{
yyval
.
ttype
=
ansi_opname
[
TRUTH_ORIF_EXPR
];
;
break
;}
break
;}
case
833
:
case
833
:
#line 439
3
"parse.y"
#line 439
4
"parse.y"
{
yyval
.
ttype
=
ansi_opname
[
TRUTH_NOT_EXPR
];
;
{
yyval
.
ttype
=
ansi_opname
[
TRUTH_NOT_EXPR
];
;
break
;}
break
;}
case
834
:
case
834
:
#line 439
5
"parse.y"
#line 439
6
"parse.y"
{
yyval
.
ttype
=
ansi_opname
[
COND_EXPR
];
;
{
yyval
.
ttype
=
ansi_opname
[
COND_EXPR
];
;
break
;}
break
;}
case
835
:
case
835
:
#line 439
7
"parse.y"
#line 439
8
"parse.y"
{
yyval
.
ttype
=
ansi_opname
[
yyvsp
[
0
].
code
];
;
{
yyval
.
ttype
=
ansi_opname
[
yyvsp
[
0
].
code
];
;
break
;}
break
;}
case
836
:
case
836
:
#line 4
399
"parse.y"
#line 4
400
"parse.y"
{
yyval
.
ttype
=
ansi_opname
[
COMPONENT_REF
];
;
{
yyval
.
ttype
=
ansi_opname
[
COMPONENT_REF
];
;
break
;}
break
;}
case
837
:
case
837
:
#line 440
1
"parse.y"
#line 440
2
"parse.y"
{
yyval
.
ttype
=
ansi_opname
[
MEMBER_REF
];
;
{
yyval
.
ttype
=
ansi_opname
[
MEMBER_REF
];
;
break
;}
break
;}
case
838
:
case
838
:
#line 440
3
"parse.y"
#line 440
4
"parse.y"
{
yyval
.
ttype
=
ansi_opname
[
CALL_EXPR
];
;
{
yyval
.
ttype
=
ansi_opname
[
CALL_EXPR
];
;
break
;}
break
;}
case
839
:
case
839
:
#line 440
5
"parse.y"
#line 440
6
"parse.y"
{
yyval
.
ttype
=
ansi_opname
[
ARRAY_REF
];
;
{
yyval
.
ttype
=
ansi_opname
[
ARRAY_REF
];
;
break
;}
break
;}
case
840
:
case
840
:
#line 440
7
"parse.y"
#line 440
8
"parse.y"
{
yyval
.
ttype
=
ansi_opname
[
NEW_EXPR
];
;
{
yyval
.
ttype
=
ansi_opname
[
NEW_EXPR
];
;
break
;}
break
;}
case
841
:
case
841
:
#line 44
09
"parse.y"
#line 44
10
"parse.y"
{
yyval
.
ttype
=
ansi_opname
[
DELETE_EXPR
];
;
{
yyval
.
ttype
=
ansi_opname
[
DELETE_EXPR
];
;
break
;}
break
;}
case
842
:
case
842
:
#line 441
1
"parse.y"
#line 441
2
"parse.y"
{
yyval
.
ttype
=
ansi_opname
[
VEC_NEW_EXPR
];
;
{
yyval
.
ttype
=
ansi_opname
[
VEC_NEW_EXPR
];
;
break
;}
break
;}
case
843
:
case
843
:
#line 441
3
"parse.y"
#line 441
4
"parse.y"
{
yyval
.
ttype
=
ansi_opname
[
VEC_DELETE_EXPR
];
;
{
yyval
.
ttype
=
ansi_opname
[
VEC_DELETE_EXPR
];
;
break
;}
break
;}
case
844
:
case
844
:
#line 441
6
"parse.y"
#line 441
7
"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
845
:
case
845
:
#line 441
8
"parse.y"
#line 441
9
"parse.y"
{
yyval
.
ttype
=
ansi_opname
[
ERROR_MARK
];
;
{
yyval
.
ttype
=
ansi_opname
[
ERROR_MARK
];
;
break
;}
break
;}
}
}
...
@@ -8643,7 +8644,7 @@ yyerrhandle:
...
@@ -8643,7 +8644,7 @@ yyerrhandle:
yystate
=
yyn
;
yystate
=
yyn
;
goto
yynewstate
;
goto
yynewstate
;
}
}
#line 442
1
"parse.y"
#line 442
2
"parse.y"
#ifdef SPEW_DEBUG
#ifdef SPEW_DEBUG
...
...
gcc/cp/parse.y
View file @
8b1616ad
...
@@ -1217,7 +1217,8 @@ new_initializer:
...
@@ -1217,7 +1217,8 @@ new_initializer:
{
{
if (pedantic)
if (pedantic)
pedwarn ("ANSI C++ forbids initialization of new expression with `='");
pedwarn ("ANSI C++ forbids initialization of new expression with `='");
if (TREE_CODE ($2) != TREE_LIST)
if (TREE_CODE ($2) != TREE_LIST
&& TREE_CODE ($2) != CONSTRUCTOR)
$$ = build_expr_list (NULL_TREE, $2);
$$ = build_expr_list (NULL_TREE, $2);
else
else
$$ = $2;
$$ = $2;
...
...
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