This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Parsing fix: it wasn't possible to call a function with a (_) prototype
[perl5.git] / perly.act
CommitLineData
0de566d7 1case 2:
7f46837f 2#line 105 "perly.y"
9a9798c2 3 { (yyval.ival) = (yyvsp[-1].ival); newPROG(block_end((yyvsp[-1].ival),(yyvsp[0].opval))); ;}
0de566d7
DM
4 break;
5
6 case 3:
7f46837f 7#line 110 "perly.y"
9a9798c2
YST
8 { if (PL_copline > (line_t)(yyvsp[-3].ival))
9 PL_copline = (line_t)(yyvsp[-3].ival);
10 (yyval.opval) = block_end((yyvsp[-2].ival), (yyvsp[-1].opval)); ;}
0de566d7
DM
11 break;
12
13 case 4:
7f46837f 14#line 116 "perly.y"
9a9798c2 15 { (yyval.ival) = block_start(TRUE); ;}
0de566d7
DM
16 break;
17
18 case 5:
7f46837f 19#line 120 "perly.y"
0d863452
RH
20 { (yyval.ival) = (I32) allocmy("$_"); ;}
21 break;
22
23 case 6:
7f46837f 24#line 124 "perly.y"
0de566d7 25 {
9a9798c2 26 PL_expect = XSTATE; (yyval.ival) = block_start(TRUE);
0de566d7
DM
27 ;}
28 break;
29
0d863452 30 case 7:
7f46837f 31#line 131 "perly.y"
9a9798c2
YST
32 { if (PL_copline > (line_t)(yyvsp[-3].ival))
33 PL_copline = (line_t)(yyvsp[-3].ival);
34 (yyval.opval) = block_end((yyvsp[-2].ival), (yyvsp[-1].opval)); ;}
0de566d7
DM
35 break;
36
0d863452 37 case 8:
7f46837f 38#line 137 "perly.y"
9a9798c2 39 { (yyval.ival) = block_start(FALSE); ;}
0de566d7
DM
40 break;
41
0d863452 42 case 9:
7f46837f 43#line 141 "perly.y"
9a9798c2 44 { (yyval.ival) = PL_savestack_ix; ;}
0de566d7
DM
45 break;
46
0d863452 47 case 10:
7f46837f 48#line 145 "perly.y"
9a9798c2 49 { (yyval.opval) = Nullop; ;}
0de566d7
DM
50 break;
51
0d863452 52 case 11:
7f46837f 53#line 147 "perly.y"
9a9798c2 54 { (yyval.opval) = (yyvsp[-1].opval); ;}
0de566d7
DM
55 break;
56
0d863452 57 case 12:
7f46837f 58#line 149 "perly.y"
9a9798c2
YST
59 { LEAVE_SCOPE((yyvsp[-1].ival));
60 (yyval.opval) = append_list(OP_LINESEQ,
61 (LISTOP*)(yyvsp[-2].opval), (LISTOP*)(yyvsp[0].opval));
500bedb6 62 PL_pad_reset_pending = TRUE;
9a9798c2 63 if ((yyvsp[-2].opval) && (yyvsp[0].opval)) PL_hints |= HINT_BLOCK_SCOPE; ;}
500bedb6
DM
64 break;
65
0d863452 66 case 13:
7f46837f 67#line 158 "perly.y"
0d863452
RH
68 { (yyval.opval) = newSTATEOP(0, (yyvsp[-1].pval), (yyvsp[0].opval)); ;}
69 break;
70
71 case 15:
7f46837f 72#line 161 "perly.y"
0d863452
RH
73 { (yyval.opval) = (yyvsp[0].opval); ;}
74 break;
75
76 case 16:
7f46837f 77#line 163 "perly.y"
9a9798c2 78 { (yyval.opval) = newSTATEOP(0, (yyvsp[-1].pval), (yyvsp[0].opval)); ;}
0de566d7
DM
79 break;
80
0d863452 81 case 17:
7f46837f 82#line 165 "perly.y"
9a9798c2
YST
83 { if ((yyvsp[-1].pval) != Nullch) {
84 (yyval.opval) = newSTATEOP(0, (yyvsp[-1].pval), newOP(OP_NULL, 0));
0de566d7
DM
85 }
86 else {
9a9798c2 87 (yyval.opval) = Nullop;
0de566d7
DM
88 PL_copline = NOLINE;
89 }
90 PL_expect = XSTATE; ;}
91 break;
92
0d863452 93 case 18:
7f46837f 94#line 174 "perly.y"
9a9798c2 95 { (yyval.opval) = newSTATEOP(0, (yyvsp[-2].pval), (yyvsp[-1].opval));
0de566d7
DM
96 PL_expect = XSTATE; ;}
97 break;
98
0d863452 99 case 19:
7f46837f 100#line 180 "perly.y"
9a9798c2 101 { (yyval.opval) = Nullop; ;}
0de566d7
DM
102 break;
103
0d863452 104 case 20:
7f46837f 105#line 182 "perly.y"
9a9798c2 106 { (yyval.opval) = (yyvsp[0].opval); ;}
0de566d7
DM
107 break;
108
0d863452 109 case 21:
7f46837f 110#line 184 "perly.y"
9a9798c2 111 { (yyval.opval) = newLOGOP(OP_AND, 0, (yyvsp[0].opval), (yyvsp[-2].opval)); ;}
0de566d7
DM
112 break;
113
0d863452 114 case 22:
7f46837f 115#line 186 "perly.y"
9a9798c2 116 { (yyval.opval) = newLOGOP(OP_OR, 0, (yyvsp[0].opval), (yyvsp[-2].opval)); ;}
0de566d7
DM
117 break;
118
0d863452 119 case 23:
7f46837f 120#line 188 "perly.y"
9a9798c2 121 { (yyval.opval) = newLOOPOP(OPf_PARENS, 1, scalar((yyvsp[0].opval)), (yyvsp[-2].opval)); ;}
0de566d7
DM
122 break;
123
0d863452 124 case 24:
7f46837f 125#line 190 "perly.y"
9a9798c2 126 { (yyval.opval) = newLOOPOP(OPf_PARENS, 1, (yyvsp[0].opval), (yyvsp[-2].opval));;}
0de566d7
DM
127 break;
128
0d863452 129 case 25:
7f46837f 130#line 192 "perly.y"
9a9798c2
YST
131 { (yyval.opval) = newFOROP(0, Nullch, (line_t)(yyvsp[-1].ival),
132 Nullop, (yyvsp[0].opval), (yyvsp[-2].opval), Nullop); ;}
0de566d7
DM
133 break;
134
0d863452 135 case 26:
7f46837f 136#line 198 "perly.y"
9a9798c2 137 { (yyval.opval) = Nullop; ;}
0de566d7
DM
138 break;
139
0d863452 140 case 27:
7f46837f 141#line 200 "perly.y"
9a9798c2 142 { ((yyvsp[0].opval))->op_flags |= OPf_PARENS; (yyval.opval) = scope((yyvsp[0].opval)); ;}
0de566d7
DM
143 break;
144
0d863452 145 case 28:
7f46837f 146#line 202 "perly.y"
9a9798c2
YST
147 { PL_copline = (line_t)(yyvsp[-5].ival);
148 (yyval.opval) = newCONDOP(0, (yyvsp[-3].opval), scope((yyvsp[-1].opval)), (yyvsp[0].opval));
0de566d7
DM
149 PL_hints |= HINT_BLOCK_SCOPE; ;}
150 break;
151
0d863452 152 case 29:
7f46837f 153#line 209 "perly.y"
9a9798c2
YST
154 { PL_copline = (line_t)(yyvsp[-6].ival);
155 (yyval.opval) = block_end((yyvsp[-4].ival),
156 newCONDOP(0, (yyvsp[-3].opval), scope((yyvsp[-1].opval)), (yyvsp[0].opval))); ;}
0de566d7
DM
157 break;
158
0d863452 159 case 30:
7f46837f 160#line 213 "perly.y"
9a9798c2
YST
161 { PL_copline = (line_t)(yyvsp[-6].ival);
162 (yyval.opval) = block_end((yyvsp[-4].ival),
163 newCONDOP(0, (yyvsp[-3].opval), scope((yyvsp[-1].opval)), (yyvsp[0].opval))); ;}
0de566d7
DM
164 break;
165
0d863452 166 case 31:
7f46837f 167#line 220 "perly.y"
0d863452
RH
168 { (yyval.opval) = block_end((yyvsp[-3].ival),
169 newWHENOP((yyvsp[-2].opval), scope((yyvsp[0].opval)))); ;}
170 break;
171
172 case 32:
7f46837f 173#line 223 "perly.y"
0d863452
RH
174 { (yyval.opval) = newWHENOP(0, scope((yyvsp[0].opval))); ;}
175 break;
176
177 case 33:
7f46837f 178#line 228 "perly.y"
9a9798c2 179 { (yyval.opval) = Nullop; ;}
0de566d7
DM
180 break;
181
0d863452 182 case 34:
7f46837f 183#line 230 "perly.y"
9a9798c2 184 { (yyval.opval) = scope((yyvsp[0].opval)); ;}
0de566d7
DM
185 break;
186
0d863452 187 case 35:
7f46837f 188#line 235 "perly.y"
9a9798c2
YST
189 { PL_copline = (line_t)(yyvsp[-7].ival);
190 (yyval.opval) = block_end((yyvsp[-5].ival),
191 newSTATEOP(0, (yyvsp[-8].pval),
0de566d7 192 newWHILEOP(0, 1, (LOOP*)Nullop,
9a9798c2 193 (yyvsp[-7].ival), (yyvsp[-4].opval), (yyvsp[-1].opval), (yyvsp[0].opval), (yyvsp[-2].ival)))); ;}
0de566d7
DM
194 break;
195
0d863452 196 case 36:
7f46837f 197#line 241 "perly.y"
9a9798c2
YST
198 { PL_copline = (line_t)(yyvsp[-7].ival);
199 (yyval.opval) = block_end((yyvsp[-5].ival),
200 newSTATEOP(0, (yyvsp[-8].pval),
0de566d7 201 newWHILEOP(0, 1, (LOOP*)Nullop,
9a9798c2 202 (yyvsp[-7].ival), (yyvsp[-4].opval), (yyvsp[-1].opval), (yyvsp[0].opval), (yyvsp[-2].ival)))); ;}
0de566d7
DM
203 break;
204
0d863452 205 case 37:
7f46837f 206#line 247 "perly.y"
9a9798c2
YST
207 { (yyval.opval) = block_end((yyvsp[-6].ival),
208 newFOROP(0, (yyvsp[-9].pval), (line_t)(yyvsp[-8].ival), (yyvsp[-5].opval), (yyvsp[-3].opval), (yyvsp[-1].opval), (yyvsp[0].opval))); ;}
0de566d7
DM
209 break;
210
0d863452 211 case 38:
7f46837f 212#line 250 "perly.y"
9a9798c2
YST
213 { (yyval.opval) = block_end((yyvsp[-4].ival),
214 newFOROP(0, (yyvsp[-8].pval), (line_t)(yyvsp[-7].ival), mod((yyvsp[-6].opval), OP_ENTERLOOP),
215 (yyvsp[-3].opval), (yyvsp[-1].opval), (yyvsp[0].opval))); ;}
0de566d7
DM
216 break;
217
0d863452 218 case 39:
7f46837f 219#line 254 "perly.y"
9a9798c2
YST
220 { (yyval.opval) = block_end((yyvsp[-4].ival),
221 newFOROP(0, (yyvsp[-7].pval), (line_t)(yyvsp[-6].ival), Nullop, (yyvsp[-3].opval), (yyvsp[-1].opval), (yyvsp[0].opval))); ;}
0de566d7
DM
222 break;
223
0d863452 224 case 40:
7f46837f 225#line 259 "perly.y"
0de566d7 226 { OP *forop;
9a9798c2
YST
227 PL_copline = (line_t)(yyvsp[-10].ival);
228 forop = newSTATEOP(0, (yyvsp[-11].pval),
0de566d7 229 newWHILEOP(0, 1, (LOOP*)Nullop,
9a9798c2
YST
230 (yyvsp[-10].ival), scalar((yyvsp[-5].opval)),
231 (yyvsp[0].opval), (yyvsp[-2].opval), (yyvsp[-3].ival)));
232 if ((yyvsp[-7].opval)) {
0de566d7 233 forop = append_elem(OP_LINESEQ,
9a9798c2
YST
234 newSTATEOP(0, ((yyvsp[-11].pval)?savepv((yyvsp[-11].pval)):Nullch),
235 (yyvsp[-7].opval)),
0de566d7
DM
236 forop);
237 }
238
9a9798c2 239 (yyval.opval) = block_end((yyvsp[-8].ival), forop); ;}
0de566d7
DM
240 break;
241
0d863452 242 case 41:
7f46837f 243#line 274 "perly.y"
9a9798c2 244 { (yyval.opval) = newSTATEOP(0, (yyvsp[-2].pval),
0de566d7 245 newWHILEOP(0, 1, (LOOP*)Nullop,
9a9798c2 246 NOLINE, Nullop, (yyvsp[-1].opval), (yyvsp[0].opval), 0)); ;}
0de566d7
DM
247 break;
248
0d863452 249 case 42:
7f46837f 250#line 281 "perly.y"
0d863452
RH
251 { PL_copline = (line_t) (yyvsp[-6].ival);
252 (yyval.opval) = block_end((yyvsp[-4].ival),
253 newSTATEOP(0, (yyvsp[-7].pval),
254 newGIVENOP((yyvsp[-2].opval), scope((yyvsp[0].opval)),
255 (PADOFFSET) (yyvsp[-3].ival)) )); ;}
256 break;
257
258 case 43:
7f46837f 259#line 290 "perly.y"
9a9798c2 260 { (yyval.ival) = (PL_min_intro_pending &&
a034e688
DM
261 PL_max_intro_pending >= PL_min_intro_pending);
262 intro_my(); ;}
0de566d7
DM
263 break;
264
0d863452 265 case 44:
7f46837f 266#line 296 "perly.y"
9a9798c2 267 { (yyval.opval) = Nullop; ;}
0de566d7
DM
268 break;
269
0d863452 270 case 46:
7f46837f 271#line 302 "perly.y"
9a9798c2 272 { (void)scan_num("1", &yylval); (yyval.opval) = yylval.opval; ;}
0de566d7
DM
273 break;
274
0d863452 275 case 48:
7f46837f 276#line 308 "perly.y"
9a9798c2 277 { (yyval.opval) = invert(scalar((yyvsp[0].opval))); ;}
0de566d7
DM
278 break;
279
0d863452 280 case 49:
7f46837f 281#line 313 "perly.y"
9a9798c2 282 { (yyval.opval) = (yyvsp[0].opval); intro_my(); ;}
0de566d7
DM
283 break;
284
0d863452 285 case 50:
7f46837f 286#line 317 "perly.y"
9a9798c2 287 { (yyval.opval) = (yyvsp[0].opval); intro_my(); ;}
0de566d7
DM
288 break;
289
0d863452 290 case 51:
7f46837f 291#line 321 "perly.y"
9a9798c2 292 { (yyval.opval) = (yyvsp[0].opval); intro_my(); ;}
0de566d7
DM
293 break;
294
0d863452 295 case 52:
7f46837f 296#line 326 "perly.y"
9a9798c2 297 { (yyval.pval) = Nullch; ;}
0de566d7
DM
298 break;
299
0d863452 300 case 54:
7f46837f 301#line 332 "perly.y"
9a9798c2 302 { (yyval.ival) = 0; ;}
0de566d7
DM
303 break;
304
0d863452 305 case 55:
7f46837f 306#line 334 "perly.y"
9a9798c2 307 { (yyval.ival) = 0; ;}
0de566d7
DM
308 break;
309
0d863452 310 case 56:
7f46837f 311#line 336 "perly.y"
9a9798c2 312 { (yyval.ival) = 0; ;}
0de566d7
DM
313 break;
314
0d863452 315 case 57:
7f46837f 316#line 338 "perly.y"
9a9798c2 317 { (yyval.ival) = 0; ;}
0de566d7
DM
318 break;
319
0d863452 320 case 58:
7f46837f 321#line 340 "perly.y"
9a9798c2 322 { (yyval.ival) = 0; ;}
0de566d7
DM
323 break;
324
0d863452 325 case 59:
7f46837f 326#line 344 "perly.y"
a8ff2fa6
DM
327 { SvREFCNT_inc(PL_compcv);
328 newFORM((yyvsp[-2].ival), (yyvsp[-1].opval), (yyvsp[0].opval)); ;}
0de566d7
DM
329 break;
330
0d863452 331 case 60:
a8ff2fa6 332#line 348 "perly.y"
9a9798c2 333 { (yyval.opval) = (yyvsp[0].opval); ;}
0de566d7
DM
334 break;
335
0d863452 336 case 61:
a8ff2fa6 337#line 349 "perly.y"
9a9798c2 338 { (yyval.opval) = Nullop; ;}
0de566d7
DM
339 break;
340
0d863452 341 case 62:
a8ff2fa6
DM
342#line 354 "perly.y"
343 { SvREFCNT_inc(PL_compcv);
344 newMYSUB((yyvsp[-4].ival), (yyvsp[-3].opval), (yyvsp[-2].opval), (yyvsp[-1].opval), (yyvsp[0].opval)); ;}
0de566d7
DM
345 break;
346
0d863452 347 case 63:
a8ff2fa6
DM
348#line 360 "perly.y"
349 { SvREFCNT_inc(PL_compcv);
350 newATTRSUB((yyvsp[-4].ival), (yyvsp[-3].opval), (yyvsp[-2].opval), (yyvsp[-1].opval), (yyvsp[0].opval)); ;}
0de566d7
DM
351 break;
352
0d863452 353 case 64:
a8ff2fa6
DM
354#line 365 "perly.y"
355 { (yyval.ival) = start_subparse(FALSE, 0);
356 SAVEFREESV(PL_compcv); ;}
0de566d7
DM
357 break;
358
0d863452 359 case 65:
a8ff2fa6
DM
360#line 370 "perly.y"
361 { (yyval.ival) = start_subparse(FALSE, CVf_ANON);
362 SAVEFREESV(PL_compcv); ;}
0de566d7
DM
363 break;
364
0d863452 365 case 66:
a8ff2fa6
DM
366#line 375 "perly.y"
367 { (yyval.ival) = start_subparse(TRUE, 0);
368 SAVEFREESV(PL_compcv); ;}
500bedb6
DM
369 break;
370
0d863452 371 case 67:
a8ff2fa6 372#line 380 "perly.y"
2596d9fe 373 { const char *const name = SvPV_nolen_const(((SVOP*)(yyvsp[0].opval))->op_sv);
0de566d7 374 if (strEQ(name, "BEGIN") || strEQ(name, "END")
3c10abe3
AG
375 || strEQ(name, "INIT") || strEQ(name, "CHECK")
376 || strEQ(name, "UNITCHECK"))
0de566d7 377 CvSPECIAL_on(PL_compcv);
9a9798c2 378 (yyval.opval) = (yyvsp[0].opval); ;}
0de566d7
DM
379 break;
380
0d863452 381 case 68:
3c10abe3 382#line 390 "perly.y"
9a9798c2 383 { (yyval.opval) = Nullop; ;}
0de566d7
DM
384 break;
385
0d863452 386 case 70:
3c10abe3 387#line 396 "perly.y"
9a9798c2 388 { (yyval.opval) = Nullop; ;}
0de566d7
DM
389 break;
390
0d863452 391 case 71:
3c10abe3 392#line 398 "perly.y"
9a9798c2 393 { (yyval.opval) = (yyvsp[0].opval); ;}
0de566d7
DM
394 break;
395
0d863452 396 case 72:
3c10abe3 397#line 400 "perly.y"
9a9798c2 398 { (yyval.opval) = Nullop; ;}
0de566d7
DM
399 break;
400
0d863452 401 case 73:
3c10abe3 402#line 405 "perly.y"
9a9798c2 403 { (yyval.opval) = (yyvsp[0].opval); ;}
0de566d7
DM
404 break;
405
0d863452 406 case 74:
3c10abe3 407#line 407 "perly.y"
9a9798c2 408 { (yyval.opval) = Nullop; ;}
0de566d7
DM
409 break;
410
0d863452 411 case 75:
3c10abe3 412#line 411 "perly.y"
9a9798c2 413 { (yyval.opval) = (yyvsp[0].opval); ;}
0de566d7
DM
414 break;
415
0d863452 416 case 76:
3c10abe3 417#line 412 "perly.y"
9a9798c2 418 { (yyval.opval) = Nullop; PL_expect = XSTATE; ;}
0de566d7
DM
419 break;
420
0d863452 421 case 77:
3c10abe3 422#line 416 "perly.y"
9a9798c2 423 { package((yyvsp[-1].opval)); ;}
0de566d7
DM
424 break;
425
0d863452 426 case 78:
3c10abe3 427#line 420 "perly.y"
500bedb6 428 { CvSPECIAL_on(PL_compcv); /* It's a BEGIN {} */ ;}
0de566d7
DM
429 break;
430
0d863452 431 case 79:
3c10abe3 432#line 422 "perly.y"
a8ff2fa6
DM
433 { SvREFCNT_inc(PL_compcv);
434 utilize((yyvsp[-6].ival), (yyvsp[-5].ival), (yyvsp[-3].opval), (yyvsp[-2].opval), (yyvsp[-1].opval)); ;}
0de566d7
DM
435 break;
436
0d863452 437 case 80:
3c10abe3 438#line 428 "perly.y"
9a9798c2 439 { (yyval.opval) = newLOGOP(OP_AND, 0, (yyvsp[-2].opval), (yyvsp[0].opval)); ;}
0de566d7
DM
440 break;
441
0d863452 442 case 81:
3c10abe3 443#line 430 "perly.y"
9a9798c2 444 { (yyval.opval) = newLOGOP((yyvsp[-1].ival), 0, (yyvsp[-2].opval), (yyvsp[0].opval)); ;}
500bedb6
DM
445 break;
446
0d863452 447 case 82:
3c10abe3 448#line 432 "perly.y"
9a9798c2 449 { (yyval.opval) = newLOGOP(OP_DOR, 0, (yyvsp[-2].opval), (yyvsp[0].opval)); ;}
0de566d7
DM
450 break;
451
0d863452 452 case 84:
3c10abe3 453#line 438 "perly.y"
9a9798c2 454 { (yyval.opval) = (yyvsp[-1].opval); ;}
0de566d7
DM
455 break;
456
0d863452 457 case 85:
3c10abe3 458#line 440 "perly.y"
9a9798c2 459 { (yyval.opval) = append_elem(OP_LIST, (yyvsp[-2].opval), (yyvsp[0].opval)); ;}
0de566d7
DM
460 break;
461
0d863452 462 case 87:
3c10abe3 463#line 446 "perly.y"
9a9798c2
YST
464 { (yyval.opval) = convert((yyvsp[-2].ival), OPf_STACKED,
465 prepend_elem(OP_LIST, newGVREF((yyvsp[-2].ival),(yyvsp[-1].opval)), (yyvsp[0].opval)) ); ;}
0de566d7
DM
466 break;
467
0d863452 468 case 88:
3c10abe3 469#line 449 "perly.y"
9a9798c2
YST
470 { (yyval.opval) = convert((yyvsp[-4].ival), OPf_STACKED,
471 prepend_elem(OP_LIST, newGVREF((yyvsp[-4].ival),(yyvsp[-2].opval)), (yyvsp[-1].opval)) ); ;}
0de566d7
DM
472 break;
473
0d863452 474 case 89:
3c10abe3 475#line 452 "perly.y"
9a9798c2 476 { (yyval.opval) = convert(OP_ENTERSUB, OPf_STACKED,
0de566d7 477 append_elem(OP_LIST,
9a9798c2
YST
478 prepend_elem(OP_LIST, scalar((yyvsp[-5].opval)), (yyvsp[-1].opval)),
479 newUNOP(OP_METHOD, 0, (yyvsp[-3].opval)))); ;}
0de566d7
DM
480 break;
481
0d863452 482 case 90:
3c10abe3 483#line 457 "perly.y"
9a9798c2
YST
484 { (yyval.opval) = convert(OP_ENTERSUB, OPf_STACKED,
485 append_elem(OP_LIST, scalar((yyvsp[-2].opval)),
486 newUNOP(OP_METHOD, 0, (yyvsp[0].opval)))); ;}
0de566d7
DM
487 break;
488
0d863452 489 case 91:
3c10abe3 490#line 461 "perly.y"
9a9798c2 491 { (yyval.opval) = convert(OP_ENTERSUB, OPf_STACKED,
0de566d7 492 append_elem(OP_LIST,
9a9798c2
YST
493 prepend_elem(OP_LIST, (yyvsp[-1].opval), (yyvsp[0].opval)),
494 newUNOP(OP_METHOD, 0, (yyvsp[-2].opval)))); ;}
0de566d7
DM
495 break;
496
0d863452 497 case 92:
3c10abe3 498#line 466 "perly.y"
9a9798c2 499 { (yyval.opval) = convert(OP_ENTERSUB, OPf_STACKED,
0de566d7 500 append_elem(OP_LIST,
9a9798c2
YST
501 prepend_elem(OP_LIST, (yyvsp[-3].opval), (yyvsp[-1].opval)),
502 newUNOP(OP_METHOD, 0, (yyvsp[-4].opval)))); ;}
0de566d7
DM
503 break;
504
0d863452 505 case 93:
3c10abe3 506#line 471 "perly.y"
9a9798c2 507 { (yyval.opval) = convert((yyvsp[-1].ival), 0, (yyvsp[0].opval)); ;}
0de566d7
DM
508 break;
509
0d863452 510 case 94:
3c10abe3 511#line 473 "perly.y"
9a9798c2 512 { (yyval.opval) = convert((yyvsp[-3].ival), 0, (yyvsp[-1].opval)); ;}
0de566d7
DM
513 break;
514
0d863452 515 case 95:
3c10abe3 516#line 475 "perly.y"
a8ff2fa6
DM
517 { SvREFCNT_inc(PL_compcv);
518 (yyvsp[0].opval) = newANONATTRSUB((yyvsp[-1].ival), 0, Nullop, (yyvsp[0].opval)); ;}
0de566d7
DM
519 break;
520
0d863452 521 case 96:
3c10abe3 522#line 478 "perly.y"
9a9798c2 523 { (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED,
0de566d7 524 append_elem(OP_LIST,
9a9798c2 525 prepend_elem(OP_LIST, (yyvsp[-2].opval), (yyvsp[0].opval)), (yyvsp[-4].opval))); ;}
0de566d7
DM
526 break;
527
0d863452 528 case 99:
3c10abe3 529#line 492 "perly.y"
9a9798c2 530 { (yyval.opval) = newBINOP(OP_GELEM, 0, (yyvsp[-4].opval), scalar((yyvsp[-2].opval)));
0de566d7
DM
531 PL_expect = XOPERATOR; ;}
532 break;
533
0d863452 534 case 100:
3c10abe3 535#line 495 "perly.y"
9a9798c2 536 { (yyval.opval) = newBINOP(OP_AELEM, 0, oopsAV((yyvsp[-3].opval)), scalar((yyvsp[-1].opval))); ;}
0de566d7
DM
537 break;
538
0d863452 539 case 101:
3c10abe3 540#line 497 "perly.y"
9a9798c2
YST
541 { (yyval.opval) = newBINOP(OP_AELEM, 0,
542 ref(newAVREF((yyvsp[-4].opval)),OP_RV2AV),
543 scalar((yyvsp[-1].opval)));;}
0de566d7
DM
544 break;
545
0d863452 546 case 102:
3c10abe3 547#line 501 "perly.y"
9a9798c2
YST
548 { (yyval.opval) = newBINOP(OP_AELEM, 0,
549 ref(newAVREF((yyvsp[-3].opval)),OP_RV2AV),
550 scalar((yyvsp[-1].opval)));;}
0de566d7
DM
551 break;
552
0d863452 553 case 103:
3c10abe3 554#line 505 "perly.y"
9a9798c2 555 { (yyval.opval) = newBINOP(OP_HELEM, 0, oopsHV((yyvsp[-4].opval)), jmaybe((yyvsp[-2].opval)));
0de566d7
DM
556 PL_expect = XOPERATOR; ;}
557 break;
558
0d863452 559 case 104:
3c10abe3 560#line 508 "perly.y"
9a9798c2
YST
561 { (yyval.opval) = newBINOP(OP_HELEM, 0,
562 ref(newHVREF((yyvsp[-5].opval)),OP_RV2HV),
563 jmaybe((yyvsp[-2].opval)));
0de566d7
DM
564 PL_expect = XOPERATOR; ;}
565 break;
566
0d863452 567 case 105:
3c10abe3 568#line 513 "perly.y"
9a9798c2
YST
569 { (yyval.opval) = newBINOP(OP_HELEM, 0,
570 ref(newHVREF((yyvsp[-4].opval)),OP_RV2HV),
571 jmaybe((yyvsp[-2].opval)));
0de566d7
DM
572 PL_expect = XOPERATOR; ;}
573 break;
574
0d863452 575 case 106:
3c10abe3 576#line 518 "perly.y"
9a9798c2
YST
577 { (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED,
578 newCVREF(0, scalar((yyvsp[-3].opval)))); ;}
0de566d7
DM
579 break;
580
0d863452 581 case 107:
3c10abe3 582#line 521 "perly.y"
9a9798c2
YST
583 { (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED,
584 append_elem(OP_LIST, (yyvsp[-1].opval),
585 newCVREF(0, scalar((yyvsp[-4].opval))))); ;}
0de566d7
DM
586 break;
587
0d863452 588 case 108:
3c10abe3 589#line 526 "perly.y"
9a9798c2
YST
590 { (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED,
591 append_elem(OP_LIST, (yyvsp[-1].opval),
592 newCVREF(0, scalar((yyvsp[-3].opval))))); ;}
0de566d7
DM
593 break;
594
0d863452 595 case 109:
3c10abe3 596#line 530 "perly.y"
9a9798c2
YST
597 { (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED,
598 newCVREF(0, scalar((yyvsp[-2].opval)))); ;}
0de566d7
DM
599 break;
600
0d863452 601 case 110:
3c10abe3 602#line 533 "perly.y"
9a9798c2 603 { (yyval.opval) = newSLICEOP(0, (yyvsp[-1].opval), (yyvsp[-4].opval)); ;}
0de566d7
DM
604 break;
605
0d863452 606 case 111:
3c10abe3 607#line 535 "perly.y"
9a9798c2 608 { (yyval.opval) = newSLICEOP(0, (yyvsp[-1].opval), Nullop); ;}
0de566d7
DM
609 break;
610
0d863452 611 case 112:
3c10abe3 612#line 540 "perly.y"
9a9798c2 613 { (yyval.opval) = newASSIGNOP(OPf_STACKED, (yyvsp[-2].opval), (yyvsp[-1].ival), (yyvsp[0].opval)); ;}
0de566d7
DM
614 break;
615
0d863452 616 case 113:
3c10abe3 617#line 542 "perly.y"
9a9798c2 618 { (yyval.opval) = newBINOP((yyvsp[-1].ival), 0, scalar((yyvsp[-2].opval)), scalar((yyvsp[0].opval))); ;}
0de566d7
DM
619 break;
620
0d863452 621 case 114:
3c10abe3 622#line 544 "perly.y"
9a9798c2
YST
623 { if ((yyvsp[-1].ival) != OP_REPEAT)
624 scalar((yyvsp[-2].opval));
625 (yyval.opval) = newBINOP((yyvsp[-1].ival), 0, (yyvsp[-2].opval), scalar((yyvsp[0].opval))); ;}
0de566d7
DM
626 break;
627
0d863452 628 case 115:
3c10abe3 629#line 548 "perly.y"
9a9798c2 630 { (yyval.opval) = newBINOP((yyvsp[-1].ival), 0, scalar((yyvsp[-2].opval)), scalar((yyvsp[0].opval))); ;}
0de566d7
DM
631 break;
632
0d863452 633 case 116:
3c10abe3 634#line 550 "perly.y"
9a9798c2 635 { (yyval.opval) = newBINOP((yyvsp[-1].ival), 0, scalar((yyvsp[-2].opval)), scalar((yyvsp[0].opval))); ;}
0de566d7
DM
636 break;
637
0d863452 638 case 117:
3c10abe3 639#line 552 "perly.y"
9a9798c2 640 { (yyval.opval) = newBINOP((yyvsp[-1].ival), 0, scalar((yyvsp[-2].opval)), scalar((yyvsp[0].opval))); ;}
0de566d7
DM
641 break;
642
0d863452 643 case 118:
3c10abe3 644#line 554 "perly.y"
9a9798c2 645 { (yyval.opval) = newBINOP((yyvsp[-1].ival), 0, scalar((yyvsp[-2].opval)), scalar((yyvsp[0].opval))); ;}
0de566d7
DM
646 break;
647
0d863452 648 case 119:
3c10abe3 649#line 556 "perly.y"
9a9798c2 650 { (yyval.opval) = newBINOP((yyvsp[-1].ival), 0, scalar((yyvsp[-2].opval)), scalar((yyvsp[0].opval))); ;}
0de566d7
DM
651 break;
652
0d863452 653 case 120:
3c10abe3 654#line 558 "perly.y"
9a9798c2 655 { (yyval.opval) = newBINOP((yyvsp[-1].ival), 0, scalar((yyvsp[-2].opval)), scalar((yyvsp[0].opval))); ;}
0de566d7
DM
656 break;
657
0d863452 658 case 121:
3c10abe3 659#line 560 "perly.y"
9a9798c2 660 { (yyval.opval) = newRANGE((yyvsp[-1].ival), scalar((yyvsp[-2].opval)), scalar((yyvsp[0].opval)));;}
0de566d7
DM
661 break;
662
0d863452 663 case 122:
3c10abe3 664#line 562 "perly.y"
9a9798c2 665 { (yyval.opval) = newLOGOP(OP_AND, 0, (yyvsp[-2].opval), (yyvsp[0].opval)); ;}
0de566d7
DM
666 break;
667
0d863452 668 case 123:
3c10abe3 669#line 564 "perly.y"
9a9798c2 670 { (yyval.opval) = newLOGOP(OP_OR, 0, (yyvsp[-2].opval), (yyvsp[0].opval)); ;}
0de566d7
DM
671 break;
672
0d863452 673 case 124:
3c10abe3 674#line 566 "perly.y"
9a9798c2 675 { (yyval.opval) = newLOGOP(OP_DOR, 0, (yyvsp[-2].opval), (yyvsp[0].opval)); ;}
0de566d7
DM
676 break;
677
0d863452 678 case 125:
3c10abe3 679#line 568 "perly.y"
9a9798c2 680 { (yyval.opval) = bind_match((yyvsp[-1].ival), (yyvsp[-2].opval), (yyvsp[0].opval)); ;}
0de566d7
DM
681 break;
682
0d863452 683 case 126:
3c10abe3 684#line 573 "perly.y"
9a9798c2 685 { (yyval.opval) = newUNOP(OP_NEGATE, 0, scalar((yyvsp[0].opval))); ;}
0de566d7
DM
686 break;
687
0d863452 688 case 127:
3c10abe3 689#line 575 "perly.y"
9a9798c2 690 { (yyval.opval) = (yyvsp[0].opval); ;}
500bedb6
DM
691 break;
692
0d863452 693 case 128:
3c10abe3 694#line 577 "perly.y"
9a9798c2 695 { (yyval.opval) = newUNOP(OP_NOT, 0, scalar((yyvsp[0].opval))); ;}
0de566d7
DM
696 break;
697
0d863452 698 case 129:
3c10abe3 699#line 579 "perly.y"
9a9798c2 700 { (yyval.opval) = newUNOP(OP_COMPLEMENT, 0, scalar((yyvsp[0].opval)));;}
0de566d7
DM
701 break;
702
0d863452 703 case 130:
3c10abe3 704#line 581 "perly.y"
9a9798c2
YST
705 { (yyval.opval) = newUNOP(OP_POSTINC, 0,
706 mod(scalar((yyvsp[-1].opval)), OP_POSTINC)); ;}
0de566d7
DM
707 break;
708
0d863452 709 case 131:
3c10abe3 710#line 584 "perly.y"
9a9798c2
YST
711 { (yyval.opval) = newUNOP(OP_POSTDEC, 0,
712 mod(scalar((yyvsp[-1].opval)), OP_POSTDEC)); ;}
0de566d7
DM
713 break;
714
0d863452 715 case 132:
3c10abe3 716#line 587 "perly.y"
9a9798c2
YST
717 { (yyval.opval) = newUNOP(OP_PREINC, 0,
718 mod(scalar((yyvsp[0].opval)), OP_PREINC)); ;}
0de566d7
DM
719 break;
720
0d863452 721 case 133:
3c10abe3 722#line 590 "perly.y"
9a9798c2
YST
723 { (yyval.opval) = newUNOP(OP_PREDEC, 0,
724 mod(scalar((yyvsp[0].opval)), OP_PREDEC)); ;}
0de566d7
DM
725 break;
726
0d863452 727 case 134:
3c10abe3 728#line 597 "perly.y"
9a9798c2 729 { (yyval.opval) = newANONLIST((yyvsp[-1].opval)); ;}
0de566d7
DM
730 break;
731
0d863452 732 case 135:
3c10abe3 733#line 599 "perly.y"
9a9798c2 734 { (yyval.opval) = newANONLIST(Nullop); ;}
0de566d7
DM
735 break;
736
0d863452 737 case 136:
3c10abe3 738#line 601 "perly.y"
9a9798c2 739 { (yyval.opval) = newANONHASH((yyvsp[-2].opval)); ;}
0de566d7
DM
740 break;
741
0d863452 742 case 137:
3c10abe3 743#line 603 "perly.y"
9a9798c2 744 { (yyval.opval) = newANONHASH(Nullop); ;}
0de566d7
DM
745 break;
746
0d863452 747 case 138:
3c10abe3 748#line 605 "perly.y"
a8ff2fa6
DM
749 { SvREFCNT_inc(PL_compcv);
750 (yyval.opval) = newANONATTRSUB((yyvsp[-3].ival), (yyvsp[-2].opval), (yyvsp[-1].opval), (yyvsp[0].opval)); ;}
0de566d7
DM
751 break;
752
0d863452 753 case 139:
3c10abe3 754#line 612 "perly.y"
850e8516 755 { (yyval.opval) = dofile((yyvsp[0].opval), (yyvsp[-1].ival)); ;}
9a9798c2
YST
756 break;
757
0d863452 758 case 140:
3c10abe3 759#line 614 "perly.y"
9a9798c2
YST
760 { (yyval.opval) = newUNOP(OP_NULL, OPf_SPECIAL, scope((yyvsp[0].opval))); ;}
761 break;
762
0d863452 763 case 141:
3c10abe3 764#line 616 "perly.y"
9a9798c2 765 { (yyval.opval) = newUNOP(OP_ENTERSUB,
0de566d7
DM
766 OPf_SPECIAL|OPf_STACKED,
767 prepend_elem(OP_LIST,
768 scalar(newCVREF(
769 (OPpENTERSUB_AMPER<<8),
9a9798c2 770 scalar((yyvsp[-2].opval))
0de566d7
DM
771 )),Nullop)); dep();;}
772 break;
773
0d863452 774 case 142:
3c10abe3 775#line 624 "perly.y"
9a9798c2 776 { (yyval.opval) = newUNOP(OP_ENTERSUB,
0de566d7
DM
777 OPf_SPECIAL|OPf_STACKED,
778 append_elem(OP_LIST,
9a9798c2 779 (yyvsp[-1].opval),
0de566d7
DM
780 scalar(newCVREF(
781 (OPpENTERSUB_AMPER<<8),
9a9798c2 782 scalar((yyvsp[-3].opval))
0de566d7
DM
783 )))); dep();;}
784 break;
785
0d863452 786 case 143:
3c10abe3 787#line 633 "perly.y"
9a9798c2 788 { (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_SPECIAL|OPf_STACKED,
0de566d7 789 prepend_elem(OP_LIST,
9a9798c2 790 scalar(newCVREF(0,scalar((yyvsp[-2].opval)))), Nullop)); dep();;}
0de566d7
DM
791 break;
792
0d863452 793 case 144:
3c10abe3 794#line 637 "perly.y"
9a9798c2
YST
795 { (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_SPECIAL|OPf_STACKED,
796 prepend_elem(OP_LIST,
797 (yyvsp[-1].opval),
798 scalar(newCVREF(0,scalar((yyvsp[-3].opval)))))); dep();;}
0de566d7
DM
799 break;
800
0d863452 801 case 149:
3c10abe3 802#line 649 "perly.y"
9a9798c2 803 { (yyval.opval) = newCONDOP(0, (yyvsp[-4].opval), (yyvsp[-2].opval), (yyvsp[0].opval)); ;}
0de566d7
DM
804 break;
805
0d863452 806 case 150:
3c10abe3 807#line 651 "perly.y"
9a9798c2 808 { (yyval.opval) = newUNOP(OP_REFGEN, 0, mod((yyvsp[0].opval),OP_REFGEN)); ;}
0de566d7
DM
809 break;
810
0d863452 811 case 151:
3c10abe3 812#line 653 "perly.y"
9a9798c2 813 { (yyval.opval) = (yyvsp[0].opval); ;}
0de566d7
DM
814 break;
815
0d863452 816 case 152:
3c10abe3 817#line 655 "perly.y"
9a9798c2 818 { (yyval.opval) = localize((yyvsp[0].opval),(yyvsp[-1].ival)); ;}
0de566d7
DM
819 break;
820
0d863452 821 case 153:
3c10abe3 822#line 657 "perly.y"
9a9798c2 823 { (yyval.opval) = sawparens((yyvsp[-1].opval)); ;}
0de566d7
DM
824 break;
825
0d863452 826 case 154:
3c10abe3 827#line 659 "perly.y"
9a9798c2 828 { (yyval.opval) = sawparens(newNULLLIST()); ;}
0de566d7
DM
829 break;
830
0d863452 831 case 155:
3c10abe3 832#line 661 "perly.y"
9a9798c2 833 { (yyval.opval) = (yyvsp[0].opval); ;}
0de566d7
DM
834 break;
835
0d863452 836 case 156:
3c10abe3 837#line 663 "perly.y"
9a9798c2 838 { (yyval.opval) = (yyvsp[0].opval); ;}
0de566d7
DM
839 break;
840
0d863452 841 case 157:
3c10abe3 842#line 665 "perly.y"
9a9798c2 843 { (yyval.opval) = (yyvsp[0].opval); ;}
0de566d7
DM
844 break;
845
0d863452 846 case 158:
3c10abe3 847#line 667 "perly.y"
9a9798c2 848 { (yyval.opval) = (yyvsp[0].opval); ;}
0de566d7
DM
849 break;
850
0d863452 851 case 159:
3c10abe3 852#line 669 "perly.y"
9a9798c2 853 { (yyval.opval) = newUNOP(OP_AV2ARYLEN, 0, ref((yyvsp[0].opval), OP_AV2ARYLEN));;}
0de566d7
DM
854 break;
855
0d863452 856 case 160:
3c10abe3 857#line 671 "perly.y"
9a9798c2 858 { (yyval.opval) = (yyvsp[0].opval); ;}
500bedb6
DM
859 break;
860
0d863452 861 case 161:
3c10abe3 862#line 673 "perly.y"
9a9798c2 863 { (yyval.opval) = prepend_elem(OP_ASLICE,
0de566d7
DM
864 newOP(OP_PUSHMARK, 0),
865 newLISTOP(OP_ASLICE, 0,
9a9798c2
YST
866 list((yyvsp[-1].opval)),
867 ref((yyvsp[-3].opval), OP_ASLICE))); ;}
0de566d7
DM
868 break;
869
0d863452 870 case 162:
3c10abe3 871#line 679 "perly.y"
9a9798c2 872 { (yyval.opval) = prepend_elem(OP_HSLICE,
0de566d7
DM
873 newOP(OP_PUSHMARK, 0),
874 newLISTOP(OP_HSLICE, 0,
9a9798c2
YST
875 list((yyvsp[-2].opval)),
876 ref(oopsHV((yyvsp[-4].opval)), OP_HSLICE)));
0de566d7
DM
877 PL_expect = XOPERATOR; ;}
878 break;
879
0d863452 880 case 163:
3c10abe3 881#line 686 "perly.y"
9a9798c2 882 { (yyval.opval) = (yyvsp[0].opval); ;}
0de566d7
DM
883 break;
884
0d863452 885 case 164:
3c10abe3 886#line 688 "perly.y"
9a9798c2 887 { (yyval.opval) = newUNOP(OP_ENTERSUB, 0, scalar((yyvsp[0].opval))); ;}
0de566d7
DM
888 break;
889
0d863452 890 case 165:
3c10abe3 891#line 690 "perly.y"
9a9798c2 892 { (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED, scalar((yyvsp[-2].opval))); ;}
0de566d7
DM
893 break;
894
0d863452 895 case 166:
3c10abe3 896#line 692 "perly.y"
9a9798c2
YST
897 { (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED,
898 append_elem(OP_LIST, (yyvsp[-1].opval), scalar((yyvsp[-3].opval)))); ;}
0de566d7
DM
899 break;
900
0d863452 901 case 167:
3c10abe3 902#line 695 "perly.y"
9a9798c2
YST
903 { (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED,
904 append_elem(OP_LIST, (yyvsp[0].opval), scalar((yyvsp[-1].opval)))); ;}
0de566d7
DM
905 break;
906
0d863452 907 case 168:
3c10abe3 908#line 698 "perly.y"
9a9798c2 909 { (yyval.opval) = newOP((yyvsp[0].ival), OPf_SPECIAL);
0de566d7
DM
910 PL_hints |= HINT_BLOCK_SCOPE; ;}
911 break;
912
0d863452 913 case 169:
3c10abe3 914#line 701 "perly.y"
9a9798c2 915 { (yyval.opval) = newLOOPEX((yyvsp[-1].ival),(yyvsp[0].opval)); ;}
0de566d7
DM
916 break;
917
0d863452 918 case 170:
3c10abe3 919#line 703 "perly.y"
9a9798c2 920 { (yyval.opval) = newUNOP(OP_NOT, 0, scalar((yyvsp[0].opval))); ;}
0de566d7
DM
921 break;
922
0d863452 923 case 171:
3c10abe3 924#line 705 "perly.y"
9a9798c2 925 { (yyval.opval) = newOP((yyvsp[0].ival), 0); ;}
0de566d7
DM
926 break;
927
0d863452 928 case 172:
3c10abe3 929#line 707 "perly.y"
9a9798c2 930 { (yyval.opval) = newUNOP((yyvsp[-1].ival), 0, (yyvsp[0].opval)); ;}
0de566d7
DM
931 break;
932
0d863452 933 case 173:
3c10abe3 934#line 709 "perly.y"
9a9798c2 935 { (yyval.opval) = newUNOP((yyvsp[-1].ival), 0, (yyvsp[0].opval)); ;}
0de566d7
DM
936 break;
937
0d863452 938 case 174:
3c10abe3 939#line 711 "perly.y"
a72a1c8b 940 { (yyval.opval) = newOP(OP_REQUIRE, (yyvsp[0].ival) ? OPf_SPECIAL : 0); ;}
0de566d7
DM
941 break;
942
0d863452 943 case 175:
3c10abe3 944#line 713 "perly.y"
a72a1c8b 945 { (yyval.opval) = newUNOP(OP_REQUIRE, (yyvsp[-1].ival) ? OPf_SPECIAL : 0, (yyvsp[0].opval)); ;}
0de566d7
DM
946 break;
947
0d863452 948 case 176:
3c10abe3 949#line 715 "perly.y"
3cd0a11a 950 { (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED, scalar((yyvsp[0].opval))); ;}
0de566d7
DM
951 break;
952
0d863452 953 case 177:
3cd0a11a
RGS
954#line 717 "perly.y"
955 { (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED,
956 append_elem(OP_LIST, (yyvsp[0].opval), scalar((yyvsp[-1].opval)))); ;}
0de566d7
DM
957 break;
958
0d863452 959 case 178:
3c10abe3 960#line 720 "perly.y"
3cd0a11a 961 { (yyval.opval) = newOP((yyvsp[0].ival), 0); ;}
0de566d7
DM
962 break;
963
0d863452 964 case 179:
3c10abe3 965#line 722 "perly.y"
3cd0a11a 966 { (yyval.opval) = newOP((yyvsp[-2].ival), 0); ;}
0de566d7
DM
967 break;
968
0d863452 969 case 180:
3cd0a11a
RGS
970#line 724 "perly.y"
971 { (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED,
972 scalar((yyvsp[0].opval))); ;}
0de566d7
DM
973 break;
974
0d863452 975 case 181:
3cd0a11a
RGS
976#line 727 "perly.y"
977 { (yyval.opval) = (yyvsp[-2].ival) == OP_NOT ? newUNOP((yyvsp[-2].ival), 0, newSVOP(OP_CONST, 0, newSViv(0)))
978 : newOP((yyvsp[-2].ival), OPf_SPECIAL); ;}
0de566d7
DM
979 break;
980
0d863452 981 case 182:
3c10abe3 982#line 730 "perly.y"
3cd0a11a 983 { (yyval.opval) = newUNOP((yyvsp[-3].ival), 0, (yyvsp[-1].opval)); ;}
0de566d7
DM
984 break;
985
3cd0a11a
RGS
986 case 183:
987#line 732 "perly.y"
988 { (yyval.opval) = pmruntime((yyvsp[-3].opval), (yyvsp[-1].opval), 1); ;}
0de566d7
DM
989 break;
990
0d863452 991 case 186:
3c10abe3 992#line 739 "perly.y"
3cd0a11a 993 { (yyval.opval) = my_attrs((yyvsp[-1].opval),(yyvsp[0].opval)); ;}
0de566d7
DM
994 break;
995
0d863452 996 case 187:
3cd0a11a
RGS
997#line 741 "perly.y"
998 { (yyval.opval) = localize((yyvsp[0].opval),(yyvsp[-1].ival)); ;}
0de566d7
DM
999 break;
1000
0d863452 1001 case 188:
3c10abe3 1002#line 746 "perly.y"
3cd0a11a 1003 { (yyval.opval) = sawparens((yyvsp[-1].opval)); ;}
0de566d7
DM
1004 break;
1005
0d863452 1006 case 189:
3c10abe3 1007#line 748 "perly.y"
3cd0a11a 1008 { (yyval.opval) = sawparens(newNULLLIST()); ;}
0de566d7
DM
1009 break;
1010
0d863452 1011 case 190:
3c10abe3 1012#line 750 "perly.y"
a72a1c8b 1013 { (yyval.opval) = (yyvsp[0].opval); ;}
0de566d7
DM
1014 break;
1015
0d863452 1016 case 191:
3c10abe3 1017#line 752 "perly.y"
9a9798c2 1018 { (yyval.opval) = (yyvsp[0].opval); ;}
0de566d7
DM
1019 break;
1020
0d863452 1021 case 192:
3cd0a11a
RGS
1022#line 754 "perly.y"
1023 { (yyval.opval) = (yyvsp[0].opval); ;}
0de566d7
DM
1024 break;
1025
0d863452 1026 case 193:
3c10abe3 1027#line 759 "perly.y"
3cd0a11a 1028 { (yyval.opval) = Nullop; ;}
0de566d7
DM
1029 break;
1030
0d863452 1031 case 194:
3cd0a11a
RGS
1032#line 761 "perly.y"
1033 { (yyval.opval) = (yyvsp[0].opval); ;}
0de566d7
DM
1034 break;
1035
0d863452 1036 case 195:
3c10abe3 1037#line 765 "perly.y"
3cd0a11a 1038 { (yyval.opval) = Nullop; ;}
0de566d7
DM
1039 break;
1040
0d863452 1041 case 196:
3c10abe3 1042#line 767 "perly.y"
3cd0a11a 1043 { (yyval.opval) = (yyvsp[0].opval); ;}
0de566d7
DM
1044 break;
1045
0d863452 1046 case 197:
3cd0a11a
RGS
1047#line 769 "perly.y"
1048 { (yyval.opval) = (yyvsp[-1].opval); ;}
0de566d7
DM
1049 break;
1050
0d863452 1051 case 198:
3cd0a11a
RGS
1052#line 775 "perly.y"
1053 { PL_in_my = 0; (yyval.opval) = my((yyvsp[0].opval)); ;}
0de566d7
DM
1054 break;
1055
0d863452 1056 case 199:
3cd0a11a
RGS
1057#line 779 "perly.y"
1058 { (yyval.opval) = newCVREF((yyvsp[-1].ival),(yyvsp[0].opval)); ;}
0de566d7
DM
1059 break;
1060
0d863452 1061 case 200:
3cd0a11a
RGS
1062#line 783 "perly.y"
1063 { (yyval.opval) = newSVREF((yyvsp[0].opval)); ;}
0de566d7
DM
1064 break;
1065
0d863452 1066 case 201:
3cd0a11a
RGS
1067#line 787 "perly.y"
1068 { (yyval.opval) = newAVREF((yyvsp[0].opval)); ;}
0de566d7
DM
1069 break;
1070
0d863452 1071 case 202:
3cd0a11a
RGS
1072#line 791 "perly.y"
1073 { (yyval.opval) = newHVREF((yyvsp[0].opval)); ;}
0de566d7
DM
1074 break;
1075
0d863452 1076 case 203:
3cd0a11a
RGS
1077#line 795 "perly.y"
1078 { (yyval.opval) = newAVREF((yyvsp[0].opval)); ;}
0de566d7
DM
1079 break;
1080
0d863452 1081 case 204:
3cd0a11a
RGS
1082#line 799 "perly.y"
1083 { (yyval.opval) = newGVREF(0,(yyvsp[0].opval)); ;}
500bedb6
DM
1084 break;
1085
0d863452 1086 case 205:
3c10abe3 1087#line 804 "perly.y"
3cd0a11a 1088 { (yyval.opval) = scalar((yyvsp[0].opval)); ;}
a72a1c8b
RGS
1089 break;
1090
0d863452 1091 case 206:
3c10abe3 1092#line 806 "perly.y"
3cd0a11a 1093 { (yyval.opval) = scalar((yyvsp[0].opval)); ;}
a72a1c8b
RGS
1094 break;
1095
0d863452 1096 case 207:
3cd0a11a
RGS
1097#line 808 "perly.y"
1098 { (yyval.opval) = scope((yyvsp[0].opval)); ;}
1099 break;
1100
1101 case 208:
1102#line 811 "perly.y"
9a9798c2 1103 { (yyval.opval) = (yyvsp[0].opval); ;}
0de566d7
DM
1104 break;
1105
1106
20515881 1107 default: break;
0de566d7 1108