This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Set PL_expect less often when parsing semicolons
[perl5.git] / perly.act
CommitLineData
e8fb9efb
NC
1/* -*- buffer-read-only: t -*-
2 !!!!!!! DO NOT EDIT THIS FILE !!!!!!!
3 This file is built by regen_perly.pl from perly.y.
4 Any changes made here will be lost!
5 */
6
0de566d7 7case 2:
b5bbe64a 8#line 114 "perly.y"
727a8fe5
Z
9 {
10 PL_parser->expect = XSTATE;
2d0e3c96 11 ;}
0de566d7
DM
12 break;
13
14 case 3:
b5bbe64a 15#line 118 "perly.y"
636def1f 16 {
727a8fe5
Z
17 newPROG(block_end((ps[(3) - (4)].val.ival),(ps[(4) - (4)].val.opval)));
18 (yyval.ival) = 0;
2d0e3c96 19 ;}
9eb5c532
Z
20 break;
21
22 case 4:
b5bbe64a 23#line 123 "perly.y"
727a8fe5 24 {
78cdf107 25 parser->expect = XTERM;
2d0e3c96 26 ;}
727a8fe5
Z
27 break;
28
29 case 5:
b5bbe64a 30#line 127 "perly.y"
9eb5c532
Z
31 {
32 PL_eval_root = (ps[(3) - (3)].val.opval);
636def1f 33 (yyval.ival) = 0;
2d0e3c96 34 ;}
636def1f
RGS
35 break;
36
727a8fe5 37 case 6:
b5bbe64a 38#line 132 "perly.y"
07ffcb73 39 {
78cdf107 40 parser->expect = XBLOCK;
2d0e3c96 41 ;}
07ffcb73
Z
42 break;
43
727a8fe5 44 case 7:
b5bbe64a 45#line 136 "perly.y"
07ffcb73 46 {
5f211341 47 PL_pad_reset_pending = TRUE;
a7aaec61 48 PL_eval_root = (ps[(3) - (3)].val.opval);
07ffcb73 49 (yyval.ival) = 0;
e53d8f76
Z
50 yyunlex();
51 parser->yychar = YYEOF;
2d0e3c96 52 ;}
07ffcb73
Z
53 break;
54
727a8fe5 55 case 8:
b5bbe64a 56#line 144 "perly.y"
e53d8f76
Z
57 {
58 parser->expect = XSTATE;
2d0e3c96 59 ;}
636def1f
RGS
60 break;
61
727a8fe5 62 case 9:
b5bbe64a 63#line 148 "perly.y"
e53d8f76 64 {
8359b381 65 PL_pad_reset_pending = TRUE;
e53d8f76
Z
66 PL_eval_root = (ps[(3) - (3)].val.opval);
67 (yyval.ival) = 0;
8359b381
Z
68 yyunlex();
69 parser->yychar = YYEOF;
2d0e3c96 70 ;}
e53d8f76
Z
71 break;
72
727a8fe5 73 case 10:
b5bbe64a 74#line 156 "perly.y"
8359b381
Z
75 {
76 parser->expect = XSTATE;
2d0e3c96 77 ;}
e53d8f76
Z
78 break;
79
727a8fe5 80 case 11:
b5bbe64a 81#line 160 "perly.y"
8359b381 82 {
78cdf107 83 PL_pad_reset_pending = TRUE;
8359b381
Z
84 PL_eval_root = (ps[(3) - (3)].val.opval);
85 (yyval.ival) = 0;
78cdf107
Z
86 yyunlex();
87 parser->yychar = YYEOF;
2d0e3c96 88 ;}
8359b381
Z
89 break;
90
8359b381 91 case 12:
b5bbe64a 92#line 168 "perly.y"
78cdf107
Z
93 {
94 parser->expect = XSTATE;
2d0e3c96 95 ;}
78cdf107
Z
96 break;
97
98 case 13:
b5bbe64a 99#line 172 "perly.y"
78cdf107
Z
100 {
101 PL_eval_root = (ps[(3) - (3)].val.opval);
102 (yyval.ival) = 0;
2d0e3c96 103 ;}
78cdf107
Z
104 break;
105
106 case 14:
b5bbe64a
JH
107#line 180 "perly.y"
108 { if (PL_parser->copline > (line_t)(ps[(1) - (4)].val.ival))
109 PL_parser->copline = (line_t)(ps[(1) - (4)].val.ival);
1654d593 110 (yyval.opval) = block_end((ps[(2) - (4)].val.ival), (ps[(3) - (4)].val.opval));
2d0e3c96 111 ;}
0de566d7
DM
112 break;
113
78cdf107 114 case 15:
b5bbe64a
JH
115#line 188 "perly.y"
116 { if (PL_parser->copline > (line_t)(ps[(1) - (7)].val.ival))
117 PL_parser->copline = (line_t)(ps[(1) - (7)].val.ival);
705fe0e5 118 (yyval.opval) = block_end((ps[(2) - (7)].val.ival), (ps[(5) - (7)].val.opval));
2d0e3c96 119 ;}
0d863452
RH
120 break;
121
78cdf107 122 case 16:
b5bbe64a 123#line 195 "perly.y"
2d0e3c96 124 { (yyval.ival) = block_start(TRUE); ;}
7c70caa5
FC
125 break;
126
127 case 17:
b5bbe64a
JH
128#line 199 "perly.y"
129 { if (PL_parser->copline > (line_t)(ps[(1) - (4)].val.ival))
130 PL_parser->copline = (line_t)(ps[(1) - (4)].val.ival);
1654d593 131 (yyval.opval) = block_end((ps[(2) - (4)].val.ival), (ps[(3) - (4)].val.opval));
2d0e3c96 132 ;}
0de566d7
DM
133 break;
134
7c70caa5 135 case 18:
b5bbe64a 136#line 206 "perly.y"
2d0e3c96 137 { (yyval.ival) = block_start(FALSE); ;}
0de566d7
DM
138 break;
139
7c70caa5 140 case 19:
b5bbe64a 141#line 211 "perly.y"
2d0e3c96 142 { (yyval.opval) = (OP*)NULL; ;}
0de566d7
DM
143 break;
144
7c70caa5 145 case 20:
b5bbe64a 146#line 213 "perly.y"
2fcb4757 147 { (yyval.opval) = op_append_list(OP_LINESEQ, (ps[(1) - (2)].val.opval), (ps[(2) - (2)].val.opval));
500bedb6 148 PL_pad_reset_pending = TRUE;
503de470
DM
149 if ((ps[(1) - (2)].val.opval) && (ps[(2) - (2)].val.opval))
150 PL_hints |= HINT_BLOCK_SCOPE;
2d0e3c96 151 ;}
500bedb6
DM
152 break;
153
7c70caa5 154 case 21:
b5bbe64a 155#line 222 "perly.y"
2d0e3c96 156 { (yyval.opval) = (OP*)NULL; ;}
705fe0e5
FC
157 break;
158
159 case 22:
b5bbe64a 160#line 224 "perly.y"
705fe0e5
FC
161 { (yyval.opval) = op_append_list(OP_LINESEQ, (ps[(1) - (2)].val.opval), (ps[(2) - (2)].val.opval));
162 PL_pad_reset_pending = TRUE;
163 if ((ps[(1) - (2)].val.opval) && (ps[(2) - (2)].val.opval))
164 PL_hints |= HINT_BLOCK_SCOPE;
2d0e3c96 165 ;}
705fe0e5
FC
166 break;
167
168 case 23:
b5bbe64a 169#line 233 "perly.y"
eae48c89 170 {
b5bbe64a 171 (yyval.opval) = (ps[(1) - (1)].val.opval) ? newSTATEOP(0, NULL, (ps[(1) - (1)].val.opval)) : NULL;
2d0e3c96 172 ;}
0d863452
RH
173 break;
174
705fe0e5 175 case 24:
b5bbe64a 176#line 237 "perly.y"
2d0e3c96 177 { (yyval.opval) = (ps[(1) - (1)].val.opval); ;}
0d863452
RH
178 break;
179
705fe0e5 180 case 25:
b5bbe64a 181#line 241 "perly.y"
8e720305 182 {
b5bbe64a 183 (yyval.opval) = newSTATEOP(SVf_UTF8 * (ps[(1) - (2)].val.pval)[strlen((ps[(1) - (2)].val.pval))+1], (ps[(1) - (2)].val.pval), (ps[(2) - (2)].val.opval));
2d0e3c96 184 ;}
8e720305
Z
185 break;
186
705fe0e5 187 case 26:
b5bbe64a 188#line 245 "perly.y"
8e720305 189 {
b5bbe64a 190 (yyval.opval) = newSTATEOP(SVf_UTF8 * (ps[(1) - (2)].val.pval)[strlen((ps[(1) - (2)].val.pval))+1], (ps[(1) - (2)].val.pval), (ps[(2) - (2)].val.opval));
2d0e3c96 191 ;}
8e720305
Z
192 break;
193
705fe0e5 194 case 27:
b5bbe64a 195#line 252 "perly.y"
2d0e3c96 196 { (yyval.opval) = (ps[(1) - (1)].val.opval); ;}
8e720305
Z
197 break;
198
705fe0e5 199 case 28:
b5bbe64a 200#line 254 "perly.y"
eae48c89
Z
201 {
202 CV *fmtcv = PL_compcv;
eae48c89
Z
203 newFORM((ps[(2) - (4)].val.ival), (ps[(3) - (4)].val.opval), (ps[(4) - (4)].val.opval));
204 (yyval.opval) = (OP*)NULL;
4a273b91 205 if (CvOUTSIDE(fmtcv) && !CvEVAL(CvOUTSIDE(fmtcv))) {
eae48c89 206 SvREFCNT_inc_simple_void(fmtcv);
cc76b5cc 207 pad_add_anon(fmtcv, OP_NULL);
eae48c89 208 }
2d0e3c96 209 ;}
0de566d7
DM
210 break;
211
b5bbe64a
JH
212 case 29:
213#line 264 "perly.y"
50278755
FC
214 {
215 if ((ps[(2) - (3)].val.opval)->op_type == OP_CONST) {
216 const char *const name =
217 SvPV_nolen_const(((SVOP*)(ps[(2) - (3)].val.opval))->op_sv);
218 if (strEQ(name, "BEGIN") || strEQ(name, "END")
764212cf
FC
219 || strEQ(name, "INIT") || strEQ(name, "CHECK")
220 || strEQ(name, "UNITCHECK"))
221 CvSPECIAL_on(PL_compcv);
50278755 222 }
e07561e6
FC
223 else
224 /* State subs inside anonymous subs need to be
225 clonable themselves. */
6d5c2147
FC
226 if (CvANON(CvOUTSIDE(PL_compcv))
227 || CvCLONE(CvOUTSIDE(PL_compcv))
228 || !PadnameIsSTATE(PadlistNAMESARRAY(CvPADLIST(
229 CvOUTSIDE(PL_compcv)
230 ))[(ps[(2) - (3)].val.opval)->op_targ]))
e07561e6 231 CvCLONE_on(PL_compcv);
764212cf
FC
232 PL_parser->in_my = 0;
233 PL_parser->in_my_stash = NULL;
2d0e3c96 234 ;}
764212cf
FC
235 break;
236
b5bbe64a
JH
237 case 30:
238#line 286 "perly.y"
f05e27e5 239 {
eae48c89 240 SvREFCNT_inc_simple_void(PL_compcv);
50278755
FC
241 (ps[(2) - (7)].val.opval)->op_type == OP_CONST
242 ? newATTRSUB((ps[(3) - (7)].val.ival), (ps[(2) - (7)].val.opval), (ps[(5) - (7)].val.opval), (ps[(6) - (7)].val.opval), (ps[(7) - (7)].val.opval))
243 : newMYSUB((ps[(3) - (7)].val.ival), (ps[(2) - (7)].val.opval), (ps[(5) - (7)].val.opval), (ps[(6) - (7)].val.opval), (ps[(7) - (7)].val.opval))
50278755 244 ;
eae48c89 245 (yyval.opval) = (OP*)NULL;
764212cf 246 intro_my();
2d0e3c96 247 ;}
0de566d7
DM
248 break;
249
b5bbe64a
JH
250 case 31:
251#line 296 "perly.y"
f05e27e5 252 {
eae48c89
Z
253 package((ps[(3) - (4)].val.opval));
254 if ((ps[(2) - (4)].val.opval))
255 package_version((ps[(2) - (4)].val.opval));
256 (yyval.opval) = (OP*)NULL;
2d0e3c96 257 ;}
0de566d7
DM
258 break;
259
b5bbe64a
JH
260 case 32:
261#line 303 "perly.y"
2d0e3c96 262 { CvSPECIAL_on(PL_compcv); /* It's a BEGIN {} */ ;}
0de566d7
DM
263 break;
264
b5bbe64a
JH
265 case 33:
266#line 305 "perly.y"
5f211341 267 {
eae48c89 268 SvREFCNT_inc_simple_void(PL_compcv);
b5bbe64a 269 utilize((ps[(1) - (7)].val.ival), (ps[(2) - (7)].val.ival), (ps[(4) - (7)].val.opval), (ps[(5) - (7)].val.opval), (ps[(6) - (7)].val.opval));
eae48c89 270 (yyval.opval) = (OP*)NULL;
2d0e3c96 271 ;}
5f211341
Z
272 break;
273
b5bbe64a
JH
274 case 34:
275#line 311 "perly.y"
eae48c89 276 {
3ad73efd
Z
277 (yyval.opval) = block_end((ps[(3) - (7)].val.ival),
278 newCONDOP(0, (ps[(4) - (7)].val.opval), op_scope((ps[(6) - (7)].val.opval)), (ps[(7) - (7)].val.opval)));
b5bbe64a 279 PL_parser->copline = (line_t)(ps[(1) - (7)].val.ival);
2d0e3c96 280 ;}
4098b6bb
JV
281 break;
282
b5bbe64a
JH
283 case 35:
284#line 317 "perly.y"
eae48c89 285 {
3ad73efd
Z
286 (yyval.opval) = block_end((ps[(3) - (7)].val.ival),
287 newCONDOP(0, (ps[(4) - (7)].val.opval), op_scope((ps[(6) - (7)].val.opval)), (ps[(7) - (7)].val.opval)));
b5bbe64a 288 PL_parser->copline = (line_t)(ps[(1) - (7)].val.ival);
2d0e3c96 289 ;}
4e4da3ac
Z
290 break;
291
b5bbe64a
JH
292 case 36:
293#line 323 "perly.y"
eae48c89 294 {
b5a64814
FC
295 const PADOFFSET offset = pad_findmy_pvs("$_", 0);
296 (yyval.opval) = block_end((ps[(3) - (6)].val.ival),
297 newGIVENOP((ps[(4) - (6)].val.opval), op_scope((ps[(6) - (6)].val.opval)),
298 offset == NOT_IN_PAD
299 || PAD_COMPNAME_FLAGS_isOUR(offset)
300 ? 0
301 : offset));
b5bbe64a 302 PL_parser->copline = (line_t)(ps[(1) - (6)].val.ival);
2d0e3c96 303 ;}
0de566d7
DM
304 break;
305
b5bbe64a
JH
306 case 37:
307#line 334 "perly.y"
2d0e3c96 308 { (yyval.opval) = block_end((ps[(3) - (6)].val.ival), newWHENOP((ps[(4) - (6)].val.opval), op_scope((ps[(6) - (6)].val.opval)))); ;}
0de566d7
DM
309 break;
310
b5bbe64a
JH
311 case 38:
312#line 336 "perly.y"
2d0e3c96 313 { (yyval.opval) = newWHENOP(0, op_scope((ps[(2) - (2)].val.opval))); ;}
0de566d7
DM
314 break;
315
b5bbe64a
JH
316 case 39:
317#line 338 "perly.y"
eae48c89
Z
318 {
319 (yyval.opval) = block_end((ps[(3) - (8)].val.ival),
320 newWHILEOP(0, 1, (LOOP*)(OP*)NULL,
94bf0465 321 (ps[(4) - (8)].val.opval), (ps[(7) - (8)].val.opval), (ps[(8) - (8)].val.opval), (ps[(6) - (8)].val.ival)));
b5bbe64a 322 PL_parser->copline = (line_t)(ps[(1) - (8)].val.ival);
2d0e3c96 323 ;}
0de566d7
DM
324 break;
325
b5bbe64a
JH
326 case 40:
327#line 345 "perly.y"
eae48c89
Z
328 {
329 (yyval.opval) = block_end((ps[(3) - (8)].val.ival),
94bf0465
Z
330 newWHILEOP(0, 1, (LOOP*)(OP*)NULL,
331 (ps[(4) - (8)].val.opval), (ps[(7) - (8)].val.opval), (ps[(8) - (8)].val.opval), (ps[(6) - (8)].val.ival)));
b5bbe64a 332 PL_parser->copline = (line_t)(ps[(1) - (8)].val.ival);
2d0e3c96 333 ;}
0de566d7
DM
334 break;
335
b5bbe64a 336 case 41:
2d0e3c96
FC
337#line 352 "perly.y"
338 { parser->expect = XTERM; ;}
339 break;
340
341 case 42:
342#line 354 "perly.y"
343 { parser->expect = XTERM; ;}
344 break;
345
346 case 43:
347#line 357 "perly.y"
eae48c89 348 {
2d0e3c96 349 OP *initop = (ps[(4) - (13)].val.opval);
eae48c89 350 OP *forop = newWHILEOP(0, 1, (LOOP*)(OP*)NULL,
2d0e3c96 351 scalar((ps[(7) - (13)].val.opval)), (ps[(13) - (13)].val.opval), (ps[(11) - (13)].val.opval), (ps[(10) - (13)].val.ival));
eae48c89
Z
352 if (initop) {
353 forop = op_prepend_elem(OP_LINESEQ, initop,
354 op_append_elem(OP_LINESEQ,
355 newOP(OP_UNSTACK, OPf_SPECIAL),
356 forop));
357 }
2d0e3c96
FC
358 (yyval.opval) = block_end((ps[(3) - (13)].val.ival), forop);
359 PL_parser->copline = (line_t)(ps[(1) - (13)].val.ival);
360 ;}
0de566d7
DM
361 break;
362
2d0e3c96
FC
363 case 44:
364#line 371 "perly.y"
eae48c89 365 {
94bf0465 366 (yyval.opval) = block_end((ps[(3) - (9)].val.ival), newFOROP(0, (ps[(4) - (9)].val.opval), (ps[(6) - (9)].val.opval), (ps[(8) - (9)].val.opval), (ps[(9) - (9)].val.opval)));
b5bbe64a 367 PL_parser->copline = (line_t)(ps[(1) - (9)].val.ival);
2d0e3c96 368 ;}
f20dcd76
VP
369 break;
370
2d0e3c96
FC
371 case 45:
372#line 376 "perly.y"
eae48c89 373 {
94bf0465 374 (yyval.opval) = block_end((ps[(4) - (8)].val.ival), newFOROP(0,
3ad73efd 375 op_lvalue((ps[(2) - (8)].val.opval), OP_ENTERLOOP), (ps[(5) - (8)].val.opval), (ps[(7) - (8)].val.opval), (ps[(8) - (8)].val.opval)));
b5bbe64a 376 PL_parser->copline = (line_t)(ps[(1) - (8)].val.ival);
2d0e3c96 377 ;}
0de566d7
DM
378 break;
379
2d0e3c96
FC
380 case 46:
381#line 382 "perly.y"
eae48c89
Z
382 {
383 (yyval.opval) = block_end((ps[(3) - (7)].val.ival),
94bf0465 384 newFOROP(0, (OP*)NULL, (ps[(4) - (7)].val.opval), (ps[(6) - (7)].val.opval), (ps[(7) - (7)].val.opval)));
b5bbe64a 385 PL_parser->copline = (line_t)(ps[(1) - (7)].val.ival);
2d0e3c96 386 ;}
0de566d7
DM
387 break;
388
2d0e3c96
FC
389 case 47:
390#line 388 "perly.y"
eae48c89
Z
391 {
392 /* a block is a loop that happens once */
393 (yyval.opval) = newWHILEOP(0, 1, (LOOP*)(OP*)NULL,
94bf0465 394 (OP*)NULL, (ps[(1) - (2)].val.opval), (ps[(2) - (2)].val.opval), 0);
2d0e3c96 395 ;}
0de566d7
DM
396 break;
397
2d0e3c96
FC
398 case 48:
399#line 394 "perly.y"
eae48c89 400 {
eae48c89 401 package((ps[(3) - (5)].val.opval));
eae48c89 402 if ((ps[(2) - (5)].val.opval)) {
eae48c89 403 package_version((ps[(2) - (5)].val.opval));
eae48c89 404 }
2d0e3c96 405 ;}
0de566d7
DM
406 break;
407
2d0e3c96
FC
408 case 49:
409#line 401 "perly.y"
eae48c89
Z
410 {
411 /* a block is a loop that happens once */
94bf0465 412 (yyval.opval) = newWHILEOP(0, 1, (LOOP*)(OP*)NULL,
eae48c89 413 (OP*)NULL, block_end((ps[(5) - (8)].val.ival), (ps[(7) - (8)].val.opval)), (OP*)NULL, 0);
b5bbe64a
JH
414 if (PL_parser->copline > (line_t)(ps[(4) - (8)].val.ival))
415 PL_parser->copline = (line_t)(ps[(4) - (8)].val.ival);
2d0e3c96 416 ;}
0d863452
RH
417 break;
418
2d0e3c96
FC
419 case 50:
420#line 409 "perly.y"
eae48c89 421 {
eae48c89 422 (yyval.opval) = (ps[(1) - (2)].val.opval);
2d0e3c96 423 ;}
0d863452
RH
424 break;
425
2d0e3c96
FC
426 case 51:
427#line 413 "perly.y"
eae48c89 428 {
b5bbe64a 429 (yyval.opval) = (OP*)NULL;
eae48c89 430 PL_parser->copline = NOLINE;
2d0e3c96 431 ;}
0de566d7
DM
432 break;
433
2d0e3c96
FC
434 case 52:
435#line 421 "perly.y"
705fe0e5
FC
436 { OP *list;
437 if ((ps[(2) - (2)].val.opval)) {
438 OP *term = (ps[(2) - (2)].val.opval);
705fe0e5
FC
439 list = op_append_elem(OP_LIST, (ps[(1) - (2)].val.opval), term);
440 }
441 else {
705fe0e5 442 list = (ps[(1) - (2)].val.opval);
705fe0e5
FC
443 }
444 if (PL_parser->copline == NOLINE)
445 PL_parser->copline = CopLINE(PL_curcop)-1;
446 else PL_parser->copline--;
447 (yyval.opval) = newSTATEOP(0, NULL,
448 convert(OP_FORMLINE, 0, list));
2d0e3c96 449 ;}
705fe0e5
FC
450 break;
451
b5bbe64a 452 case 53:
2d0e3c96
FC
453#line 438 "perly.y"
454 { (yyval.opval) = NULL; ;}
0de566d7
DM
455 break;
456
b5bbe64a 457 case 54:
2d0e3c96
FC
458#line 440 "perly.y"
459 { (yyval.opval) = op_unscope((ps[(2) - (3)].val.opval)); ;}
0de566d7
DM
460 break;
461
b5bbe64a 462 case 55:
2d0e3c96
FC
463#line 445 "perly.y"
464 { (yyval.opval) = (OP*)NULL; ;}
b5bbe64a
JH
465 break;
466
8d2a5fb4 467 case 56:
2d0e3c96
FC
468#line 447 "perly.y"
469 { (yyval.opval) = (ps[(1) - (1)].val.opval); ;}
0de566d7
DM
470 break;
471
8d2a5fb4 472 case 57:
2d0e3c96
FC
473#line 449 "perly.y"
474 { (yyval.opval) = newLOGOP(OP_AND, 0, (ps[(3) - (3)].val.opval), (ps[(1) - (3)].val.opval)); ;}
0de566d7
DM
475 break;
476
8d2a5fb4 477 case 58:
2d0e3c96
FC
478#line 451 "perly.y"
479 { (yyval.opval) = newLOGOP(OP_OR, 0, (ps[(3) - (3)].val.opval), (ps[(1) - (3)].val.opval)); ;}
0de566d7
DM
480 break;
481
8d2a5fb4 482 case 59:
2d0e3c96
FC
483#line 453 "perly.y"
484 { (yyval.opval) = newLOOPOP(OPf_PARENS, 1, scalar((ps[(3) - (3)].val.opval)), (ps[(1) - (3)].val.opval)); ;}
0de566d7
DM
485 break;
486
b5bbe64a 487 case 60:
2d0e3c96
FC
488#line 455 "perly.y"
489 { (yyval.opval) = newLOOPOP(OPf_PARENS, 1, (ps[(3) - (3)].val.opval), (ps[(1) - (3)].val.opval)); ;}
0de566d7
DM
490 break;
491
b5bbe64a 492 case 61:
2d0e3c96
FC
493#line 457 "perly.y"
494 { (yyval.opval) = newFOROP(0, (OP*)NULL, (ps[(3) - (3)].val.opval), (ps[(1) - (3)].val.opval), (OP*)NULL);
495 PL_parser->copline = (line_t)(ps[(2) - (3)].val.ival); ;}
0d863452
RH
496 break;
497
b5bbe64a 498 case 62:
2d0e3c96
FC
499#line 460 "perly.y"
500 { (yyval.opval) = newWHENOP((ps[(3) - (3)].val.opval), op_scope((ps[(1) - (3)].val.opval))); ;}
501 break;
502
503 case 63:
b5bbe64a 504#line 465 "perly.y"
2d0e3c96
FC
505 { (yyval.opval) = (OP*)NULL; ;}
506 break;
507
508 case 64:
509#line 467 "perly.y"
3ad73efd
Z
510 {
511 ((ps[(2) - (2)].val.opval))->op_flags |= OPf_PARENS;
512 (yyval.opval) = op_scope((ps[(2) - (2)].val.opval));
2d0e3c96 513 ;}
eae48c89
Z
514 break;
515
2d0e3c96
FC
516 case 65:
517#line 472 "perly.y"
b5bbe64a 518 { PL_parser->copline = (line_t)(ps[(1) - (6)].val.ival);
3ad73efd
Z
519 (yyval.opval) = newCONDOP(0,
520 newSTATEOP(OPf_SPECIAL,NULL,(ps[(3) - (6)].val.opval)),
521 op_scope((ps[(5) - (6)].val.opval)), (ps[(6) - (6)].val.opval));
522 PL_hints |= HINT_BLOCK_SCOPE;
2d0e3c96 523 ;}
eae48c89
Z
524 break;
525
2d0e3c96
FC
526 case 66:
527#line 482 "perly.y"
528 { (yyval.opval) = (OP*)NULL; ;}
eae48c89
Z
529 break;
530
2d0e3c96
FC
531 case 67:
532#line 484 "perly.y"
533 { (yyval.opval) = op_scope((ps[(2) - (2)].val.opval)); ;}
eae48c89
Z
534 break;
535
2d0e3c96
FC
536 case 68:
537#line 489 "perly.y"
9a9798c2 538 { (yyval.ival) = (PL_min_intro_pending &&
a034e688 539 PL_max_intro_pending >= PL_min_intro_pending);
2d0e3c96 540 intro_my(); ;}
0de566d7
DM
541 break;
542
b5bbe64a 543 case 69:
2d0e3c96
FC
544#line 495 "perly.y"
545 { (yyval.opval) = (OP*)NULL; ;}
0de566d7
DM
546 break;
547
b5bbe64a 548 case 71:
2d0e3c96
FC
549#line 501 "perly.y"
550 { YYSTYPE tmplval;
551 (void)scan_num("1", &tmplval);
552 (yyval.opval) = tmplval.opval; ;}
9eb5c532
Z
553 break;
554
b5bbe64a 555 case 73:
2d0e3c96
FC
556#line 509 "perly.y"
557 { (yyval.opval) = invert(scalar((ps[(1) - (1)].val.opval))); ;}
f20dcd76
VP
558 break;
559
b5bbe64a 560 case 74:
2d0e3c96
FC
561#line 514 "perly.y"
562 { (yyval.opval) = (ps[(1) - (1)].val.opval); intro_my(); ;}
0de566d7
DM
563 break;
564
b5bbe64a 565 case 75:
2d0e3c96
FC
566#line 518 "perly.y"
567 { (yyval.opval) = (ps[(1) - (1)].val.opval); intro_my(); ;}
7c70caa5
FC
568 break;
569
b5bbe64a 570 case 76:
2d0e3c96
FC
571#line 522 "perly.y"
572 { (yyval.opval) = (ps[(1) - (1)].val.opval); intro_my(); ;}
764212cf
FC
573 break;
574
b5bbe64a 575 case 77:
2d0e3c96
FC
576#line 525 "perly.y"
577 { (yyval.opval) = (ps[(1) - (1)].val.opval); ;}
0de566d7
DM
578 break;
579
b5bbe64a 580 case 78:
2d0e3c96
FC
581#line 526 "perly.y"
582 { (yyval.opval) = (OP*)NULL; ;}
500bedb6
DM
583 break;
584
b5bbe64a 585 case 79:
2d0e3c96
FC
586#line 530 "perly.y"
587 { (yyval.ival) = start_subparse(FALSE, 0);
588 SAVEFREESV(PL_compcv); ;}
2af555bf
DM
589 break;
590
2d0e3c96
FC
591 case 80:
592#line 536 "perly.y"
593 { (yyval.ival) = start_subparse(FALSE, CVf_ANON);
594 SAVEFREESV(PL_compcv); ;}
0de566d7
DM
595 break;
596
2d0e3c96
FC
597 case 81:
598#line 541 "perly.y"
599 { (yyval.ival) = start_subparse(TRUE, 0);
600 SAVEFREESV(PL_compcv); ;}
0de566d7
DM
601 break;
602
2d0e3c96
FC
603 case 84:
604#line 552 "perly.y"
605 { (yyval.opval) = (OP*)NULL; ;}
b5bbe64a
JH
606 break;
607
8d2a5fb4 608 case 86:
2d0e3c96
FC
609#line 558 "perly.y"
610 { (yyval.opval) = (OP*)NULL; ;}
0de566d7
DM
611 break;
612
8d2a5fb4 613 case 87:
2d0e3c96
FC
614#line 560 "perly.y"
615 { (yyval.opval) = (ps[(2) - (2)].val.opval); ;}
0de566d7
DM
616 break;
617
8d2a5fb4 618 case 88:
2d0e3c96
FC
619#line 562 "perly.y"
620 { (yyval.opval) = (OP*)NULL; ;}
0de566d7
DM
621 break;
622
8d2a5fb4 623 case 89:
2d0e3c96
FC
624#line 567 "perly.y"
625 { (yyval.opval) = (ps[(2) - (2)].val.opval); ;}
0de566d7
DM
626 break;
627
b5bbe64a 628 case 90:
2d0e3c96
FC
629#line 569 "perly.y"
630 { (yyval.opval) = (OP*)NULL; ;}
631 break;
632
633 case 91:
b5bbe64a 634#line 573 "perly.y"
2d0e3c96
FC
635 { (yyval.opval) = (OP*)NULL; ;}
636 break;
637
638 case 92:
639#line 575 "perly.y"
30d9c59b
Z
640 {
641 if (!FEATURE_SIGNATURES_IS_ENABLED)
642 Perl_croak(aTHX_ "Experimental "
643 "subroutine signatures not enabled");
644 Perl_ck_warner_d(aTHX_
645 packWARN(WARN_EXPERIMENTAL__SIGNATURES),
646 "The signatures feature is experimental");
647 (yyval.opval) = parse_subsignature();
2d0e3c96 648 ;}
30d9c59b
Z
649 break;
650
2d0e3c96
FC
651 case 93:
652#line 585 "perly.y"
30d9c59b
Z
653 {
654 (yyval.opval) = op_append_list(OP_LINESEQ, (ps[(2) - (3)].val.opval),
655 newSTATEOP(0, NULL, sawparens(newNULLLIST())));
656 PL_parser->expect = XBLOCK;
2d0e3c96 657 ;}
30d9c59b
Z
658 break;
659
2d0e3c96
FC
660 case 94:
661#line 594 "perly.y"
30d9c59b 662 {
b5bbe64a
JH
663 if (PL_parser->copline > (line_t)(ps[(3) - (5)].val.ival))
664 PL_parser->copline = (line_t)(ps[(3) - (5)].val.ival);
30d9c59b
Z
665 (yyval.opval) = block_end((ps[(1) - (5)].val.ival),
666 op_append_list(OP_LINESEQ, (ps[(2) - (5)].val.opval), (ps[(4) - (5)].val.opval)));
2d0e3c96 667 ;}
30d9c59b
Z
668 break;
669
2d0e3c96
FC
670 case 95:
671#line 603 "perly.y"
672 { (yyval.opval) = (ps[(1) - (1)].val.opval); ;}
30d9c59b
Z
673 break;
674
2d0e3c96
FC
675 case 96:
676#line 604 "perly.y"
677 { (yyval.opval) = (OP*)NULL; ;}
0de566d7
DM
678 break;
679
2d0e3c96 680 case 97:
b5bbe64a 681#line 609 "perly.y"
2d0e3c96 682 { (yyval.opval) = newLOGOP(OP_AND, 0, (ps[(1) - (3)].val.opval), (ps[(3) - (3)].val.opval)); ;}
b5bbe64a
JH
683 break;
684
2d0e3c96 685 case 98:
b5bbe64a 686#line 611 "perly.y"
2d0e3c96 687 { (yyval.opval) = newLOGOP((ps[(2) - (3)].val.ival), 0, (ps[(1) - (3)].val.opval), (ps[(3) - (3)].val.opval)); ;}
0de566d7
DM
688 break;
689
2d0e3c96 690 case 99:
b5bbe64a 691#line 613 "perly.y"
2d0e3c96 692 { (yyval.opval) = newLOGOP(OP_DOR, 0, (ps[(1) - (3)].val.opval), (ps[(3) - (3)].val.opval)); ;}
0de566d7
DM
693 break;
694
2d0e3c96 695 case 101:
b5bbe64a 696#line 619 "perly.y"
2d0e3c96 697 { (yyval.opval) = (ps[(1) - (2)].val.opval); ;}
0de566d7
DM
698 break;
699
2d0e3c96 700 case 102:
b5bbe64a 701#line 621 "perly.y"
f05e27e5 702 {
1654d593 703 OP* term = (ps[(3) - (3)].val.opval);
2fcb4757 704 (yyval.opval) = op_append_elem(OP_LIST, (ps[(1) - (3)].val.opval), term);
2d0e3c96 705 ;}
0de566d7
DM
706 break;
707
2d0e3c96 708 case 104:
b5bbe64a
JH
709#line 630 "perly.y"
710 { (yyval.opval) = convert((ps[(1) - (3)].val.ival), OPf_STACKED,
711 op_prepend_elem(OP_LIST, newGVREF((ps[(1) - (3)].val.ival),(ps[(2) - (3)].val.opval)), (ps[(3) - (3)].val.opval)) );
2d0e3c96 712 ;}
0de566d7
DM
713 break;
714
2d0e3c96 715 case 105:
b5bbe64a
JH
716#line 634 "perly.y"
717 { (yyval.opval) = convert((ps[(1) - (5)].val.ival), OPf_STACKED,
718 op_prepend_elem(OP_LIST, newGVREF((ps[(1) - (5)].val.ival),(ps[(3) - (5)].val.opval)), (ps[(4) - (5)].val.opval)) );
2d0e3c96 719 ;}
0de566d7
DM
720 break;
721
2d0e3c96 722 case 106:
b5bbe64a 723#line 638 "perly.y"
9a9798c2 724 { (yyval.opval) = convert(OP_ENTERSUB, OPf_STACKED,
2fcb4757
Z
725 op_append_elem(OP_LIST,
726 op_prepend_elem(OP_LIST, scalar((ps[(1) - (6)].val.opval)), (ps[(5) - (6)].val.opval)),
1654d593 727 newUNOP(OP_METHOD, 0, (ps[(3) - (6)].val.opval))));
2d0e3c96 728 ;}
0de566d7
DM
729 break;
730
2d0e3c96 731 case 107:
b5bbe64a 732#line 644 "perly.y"
9a9798c2 733 { (yyval.opval) = convert(OP_ENTERSUB, OPf_STACKED,
2fcb4757 734 op_append_elem(OP_LIST, scalar((ps[(1) - (3)].val.opval)),
1654d593 735 newUNOP(OP_METHOD, 0, (ps[(3) - (3)].val.opval))));
2d0e3c96 736 ;}
0de566d7
DM
737 break;
738
2d0e3c96 739 case 108:
b5bbe64a 740#line 649 "perly.y"
f05e27e5 741 { (yyval.opval) = convert(OP_ENTERSUB, OPf_STACKED,
2fcb4757
Z
742 op_append_elem(OP_LIST,
743 op_prepend_elem(OP_LIST, (ps[(2) - (3)].val.opval), (ps[(3) - (3)].val.opval)),
1654d593 744 newUNOP(OP_METHOD, 0, (ps[(1) - (3)].val.opval))));
2d0e3c96 745 ;}
0de566d7
DM
746 break;
747
2d0e3c96 748 case 109:
b5bbe64a 749#line 655 "perly.y"
f05e27e5 750 { (yyval.opval) = convert(OP_ENTERSUB, OPf_STACKED,
2fcb4757
Z
751 op_append_elem(OP_LIST,
752 op_prepend_elem(OP_LIST, (ps[(2) - (5)].val.opval), (ps[(4) - (5)].val.opval)),
1654d593 753 newUNOP(OP_METHOD, 0, (ps[(1) - (5)].val.opval))));
2d0e3c96 754 ;}
0de566d7
DM
755 break;
756
2d0e3c96 757 case 110:
b5bbe64a 758#line 661 "perly.y"
2d0e3c96 759 { (yyval.opval) = convert((ps[(1) - (2)].val.ival), 0, (ps[(2) - (2)].val.opval)); ;}
0de566d7
DM
760 break;
761
2d0e3c96 762 case 111:
b5bbe64a 763#line 663 "perly.y"
2d0e3c96 764 { (yyval.opval) = convert((ps[(1) - (4)].val.ival), 0, (ps[(3) - (4)].val.opval)); ;}
0de566d7
DM
765 break;
766
2d0e3c96 767 case 112:
b5bbe64a 768#line 665 "perly.y"
5a5094bd 769 { SvREFCNT_inc_simple_void(PL_compcv);
2d0e3c96 770 (yyval.opval) = newANONATTRSUB((ps[(2) - (3)].val.ival), 0, (OP*)NULL, (ps[(3) - (3)].val.opval)); ;}
0de566d7
DM
771 break;
772
2d0e3c96 773 case 113:
b5bbe64a 774#line 668 "perly.y"
f05e27e5 775 { (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED,
2fcb4757
Z
776 op_append_elem(OP_LIST,
777 op_prepend_elem(OP_LIST, (ps[(4) - (5)].val.opval), (ps[(5) - (5)].val.opval)), (ps[(1) - (5)].val.opval)));
2d0e3c96 778 ;}
0de566d7
DM
779 break;
780
2d0e3c96 781 case 116:
b5bbe64a 782#line 683 "perly.y"
1654d593 783 { (yyval.opval) = newBINOP(OP_GELEM, 0, (ps[(1) - (5)].val.opval), scalar((ps[(3) - (5)].val.opval)));
53a7735b 784 PL_parser->expect = XOPERATOR;
2d0e3c96 785 ;}
0de566d7
DM
786 break;
787
2d0e3c96 788 case 117:
b5bbe64a 789#line 687 "perly.y"
1654d593 790 { (yyval.opval) = newBINOP(OP_AELEM, 0, oopsAV((ps[(1) - (4)].val.opval)), scalar((ps[(3) - (4)].val.opval)));
2d0e3c96 791 ;}
0de566d7
DM
792 break;
793
2d0e3c96 794 case 118:
b5bbe64a 795#line 690 "perly.y"
f05e27e5 796 { (yyval.opval) = newBINOP(OP_AELEM, 0,
1654d593
DM
797 ref(newAVREF((ps[(1) - (5)].val.opval)),OP_RV2AV),
798 scalar((ps[(4) - (5)].val.opval)));
2d0e3c96 799 ;}
0de566d7
DM
800 break;
801
2d0e3c96 802 case 119:
b5bbe64a 803#line 695 "perly.y"
f05e27e5 804 { (yyval.opval) = newBINOP(OP_AELEM, 0,
1654d593
DM
805 ref(newAVREF((ps[(1) - (4)].val.opval)),OP_RV2AV),
806 scalar((ps[(3) - (4)].val.opval)));
2d0e3c96 807 ;}
0de566d7
DM
808 break;
809
2d0e3c96 810 case 120:
b5bbe64a 811#line 700 "perly.y"
1654d593 812 { (yyval.opval) = newBINOP(OP_HELEM, 0, oopsHV((ps[(1) - (5)].val.opval)), jmaybe((ps[(3) - (5)].val.opval)));
53a7735b 813 PL_parser->expect = XOPERATOR;
2d0e3c96 814 ;}
0de566d7
DM
815 break;
816
2d0e3c96 817 case 121:
b5bbe64a 818#line 704 "perly.y"
f05e27e5 819 { (yyval.opval) = newBINOP(OP_HELEM, 0,
1654d593
DM
820 ref(newHVREF((ps[(1) - (6)].val.opval)),OP_RV2HV),
821 jmaybe((ps[(4) - (6)].val.opval)));
53a7735b 822 PL_parser->expect = XOPERATOR;
2d0e3c96 823 ;}
0de566d7
DM
824 break;
825
2d0e3c96 826 case 122:
b5bbe64a 827#line 710 "perly.y"
f05e27e5 828 { (yyval.opval) = newBINOP(OP_HELEM, 0,
1654d593
DM
829 ref(newHVREF((ps[(1) - (5)].val.opval)),OP_RV2HV),
830 jmaybe((ps[(3) - (5)].val.opval)));
53a7735b 831 PL_parser->expect = XOPERATOR;
2d0e3c96 832 ;}
0de566d7
DM
833 break;
834
2d0e3c96 835 case 123:
b5bbe64a
JH
836#line 716 "perly.y"
837 { (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED,
2d0e3c96 838 newCVREF(0, scalar((ps[(1) - (4)].val.opval)))); ;}
b5bbe64a
JH
839 break;
840
2d0e3c96 841 case 124:
b5bbe64a 842#line 719 "perly.y"
9a9798c2 843 { (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED,
b5bbe64a 844 op_append_elem(OP_LIST, (ps[(4) - (5)].val.opval),
2d0e3c96 845 newCVREF(0, scalar((ps[(1) - (5)].val.opval))))); ;}
0de566d7
DM
846 break;
847
2d0e3c96 848 case 125:
b5bbe64a 849#line 724 "perly.y"
9a9798c2 850 { (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED,
b5bbe64a 851 op_append_elem(OP_LIST, (ps[(3) - (4)].val.opval),
2d0e3c96 852 newCVREF(0, scalar((ps[(1) - (4)].val.opval))))); ;}
0de566d7
DM
853 break;
854
2d0e3c96 855 case 126:
b5bbe64a 856#line 728 "perly.y"
f05e27e5 857 { (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED,
2d0e3c96 858 newCVREF(0, scalar((ps[(1) - (3)].val.opval)))); ;}
0de566d7
DM
859 break;
860
2d0e3c96 861 case 127:
b5bbe64a 862#line 731 "perly.y"
2d0e3c96 863 { (yyval.opval) = newSLICEOP(0, (ps[(5) - (6)].val.opval), (ps[(2) - (6)].val.opval)); ;}
0de566d7
DM
864 break;
865
2d0e3c96 866 case 128:
b5bbe64a 867#line 733 "perly.y"
2d0e3c96 868 { (yyval.opval) = newSLICEOP(0, (ps[(3) - (4)].val.opval), (ps[(1) - (4)].val.opval)); ;}
0de566d7
DM
869 break;
870
2d0e3c96 871 case 129:
b5bbe64a 872#line 735 "perly.y"
2d0e3c96 873 { (yyval.opval) = newSLICEOP(0, (ps[(4) - (5)].val.opval), (OP*)NULL); ;}
ea25a9b2
Z
874 break;
875
2d0e3c96 876 case 130:
b5bbe64a 877#line 740 "perly.y"
2d0e3c96 878 { (yyval.opval) = newASSIGNOP(OPf_STACKED, (ps[(1) - (3)].val.opval), (ps[(2) - (3)].val.ival), (ps[(3) - (3)].val.opval)); ;}
0de566d7
DM
879 break;
880
2d0e3c96 881 case 131:
b5bbe64a 882#line 742 "perly.y"
2d0e3c96 883 { (yyval.opval) = newBINOP((ps[(2) - (3)].val.ival), 0, scalar((ps[(1) - (3)].val.opval)), scalar((ps[(3) - (3)].val.opval))); ;}
0de566d7
DM
884 break;
885
2d0e3c96 886 case 132:
b5bbe64a
JH
887#line 744 "perly.y"
888 { if ((ps[(2) - (3)].val.ival) != OP_REPEAT)
889 scalar((ps[(1) - (3)].val.opval));
890 (yyval.opval) = newBINOP((ps[(2) - (3)].val.ival), 0, (ps[(1) - (3)].val.opval), scalar((ps[(3) - (3)].val.opval)));
2d0e3c96 891 ;}
0de566d7
DM
892 break;
893
2d0e3c96 894 case 133:
b5bbe64a 895#line 749 "perly.y"
2d0e3c96 896 { (yyval.opval) = newBINOP((ps[(2) - (3)].val.ival), 0, scalar((ps[(1) - (3)].val.opval)), scalar((ps[(3) - (3)].val.opval))); ;}
0de566d7
DM
897 break;
898
2d0e3c96 899 case 134:
b5bbe64a 900#line 751 "perly.y"
2d0e3c96 901 { (yyval.opval) = newBINOP((ps[(2) - (3)].val.ival), 0, scalar((ps[(1) - (3)].val.opval)), scalar((ps[(3) - (3)].val.opval))); ;}
8d2a5fb4
FC
902 break;
903
2d0e3c96 904 case 135:
b5bbe64a 905#line 753 "perly.y"
2d0e3c96 906 { (yyval.opval) = newBINOP((ps[(2) - (3)].val.ival), 0, scalar((ps[(1) - (3)].val.opval)), scalar((ps[(3) - (3)].val.opval))); ;}
0de566d7
DM
907 break;
908
2d0e3c96 909 case 136:
b5bbe64a 910#line 755 "perly.y"
2d0e3c96 911 { (yyval.opval) = newBINOP((ps[(2) - (3)].val.ival), 0, scalar((ps[(1) - (3)].val.opval)), scalar((ps[(3) - (3)].val.opval))); ;}
f20dcd76
VP
912 break;
913
2d0e3c96 914 case 137:
b5bbe64a 915#line 757 "perly.y"
2d0e3c96 916 { (yyval.opval) = newBINOP((ps[(2) - (3)].val.ival), 0, scalar((ps[(1) - (3)].val.opval)), scalar((ps[(3) - (3)].val.opval))); ;}
4098b6bb
JV
917 break;
918
2d0e3c96 919 case 138:
b5bbe64a 920#line 759 "perly.y"
2d0e3c96 921 { (yyval.opval) = newBINOP((ps[(2) - (3)].val.ival), 0, scalar((ps[(1) - (3)].val.opval)), scalar((ps[(3) - (3)].val.opval))); ;}
7c70caa5
FC
922 break;
923
2d0e3c96 924 case 139:
b5bbe64a 925#line 761 "perly.y"
2d0e3c96 926 { (yyval.opval) = newRANGE((ps[(2) - (3)].val.ival), scalar((ps[(1) - (3)].val.opval)), scalar((ps[(3) - (3)].val.opval))); ;}
764212cf
FC
927 break;
928
2d0e3c96 929 case 140:
b5bbe64a 930#line 763 "perly.y"
2d0e3c96 931 { (yyval.opval) = newLOGOP(OP_AND, 0, (ps[(1) - (3)].val.opval), (ps[(3) - (3)].val.opval)); ;}
0de566d7
DM
932 break;
933
2d0e3c96 934 case 141:
b5bbe64a 935#line 765 "perly.y"
2d0e3c96 936 { (yyval.opval) = newLOGOP(OP_OR, 0, (ps[(1) - (3)].val.opval), (ps[(3) - (3)].val.opval)); ;}
0de566d7
DM
937 break;
938
2d0e3c96 939 case 142:
b5bbe64a 940#line 767 "perly.y"
2d0e3c96 941 { (yyval.opval) = newLOGOP(OP_DOR, 0, (ps[(1) - (3)].val.opval), (ps[(3) - (3)].val.opval)); ;}
0de566d7
DM
942 break;
943
2d0e3c96 944 case 143:
b5bbe64a 945#line 769 "perly.y"
2d0e3c96 946 { (yyval.opval) = bind_match((ps[(2) - (3)].val.ival), (ps[(1) - (3)].val.opval), (ps[(3) - (3)].val.opval)); ;}
0de566d7
DM
947 break;
948
2d0e3c96 949 case 144:
b5bbe64a 950#line 774 "perly.y"
2d0e3c96 951 { (yyval.opval) = newUNOP(OP_NEGATE, 0, scalar((ps[(2) - (2)].val.opval))); ;}
500bedb6
DM
952 break;
953
2d0e3c96 954 case 145:
b5bbe64a 955#line 776 "perly.y"
2d0e3c96 956 { (yyval.opval) = (ps[(2) - (2)].val.opval); ;}
0de566d7
DM
957 break;
958
2d0e3c96 959 case 146:
b5bbe64a 960#line 779 "perly.y"
2d0e3c96 961 { (yyval.opval) = newUNOP(OP_NOT, 0, scalar((ps[(2) - (2)].val.opval))); ;}
0de566d7
DM
962 break;
963
2d0e3c96 964 case 147:
b5bbe64a 965#line 781 "perly.y"
2d0e3c96 966 { (yyval.opval) = newUNOP(OP_COMPLEMENT, 0, scalar((ps[(2) - (2)].val.opval))); ;}
0de566d7
DM
967 break;
968
2d0e3c96 969 case 148:
b5bbe64a 970#line 783 "perly.y"
f05e27e5 971 { (yyval.opval) = newUNOP(OP_POSTINC, 0,
2d0e3c96 972 op_lvalue(scalar((ps[(1) - (2)].val.opval)), OP_POSTINC)); ;}
0de566d7
DM
973 break;
974
2d0e3c96 975 case 149:
b5bbe64a 976#line 786 "perly.y"
f05e27e5 977 { (yyval.opval) = newUNOP(OP_POSTDEC, 0,
2d0e3c96 978 op_lvalue(scalar((ps[(1) - (2)].val.opval)), OP_POSTDEC));;}
0de566d7
DM
979 break;
980
2d0e3c96 981 case 150:
b5bbe64a 982#line 789 "perly.y"
cc624add
FC
983 { (yyval.opval) = convert(OP_JOIN, 0,
984 op_append_elem(
985 OP_LIST,
986 newSVREF(scalar(
987 newSVOP(OP_CONST,0,
988 newSVpvs("\""))
989 )),
990 (ps[(1) - (2)].val.opval)
991 ));
2d0e3c96 992 ;}
cc624add
FC
993 break;
994
2d0e3c96 995 case 151:
b5bbe64a 996#line 800 "perly.y"
f05e27e5 997 { (yyval.opval) = newUNOP(OP_PREINC, 0,
2d0e3c96 998 op_lvalue(scalar((ps[(2) - (2)].val.opval)), OP_PREINC)); ;}
0de566d7
DM
999 break;
1000
2d0e3c96 1001 case 152:
b5bbe64a 1002#line 803 "perly.y"
f05e27e5 1003 { (yyval.opval) = newUNOP(OP_PREDEC, 0,
2d0e3c96 1004 op_lvalue(scalar((ps[(2) - (2)].val.opval)), OP_PREDEC)); ;}
b5bbe64a
JH
1005 break;
1006
2d0e3c96 1007 case 153:
b5bbe64a 1008#line 810 "perly.y"
2d0e3c96 1009 { (yyval.opval) = newANONLIST((ps[(2) - (3)].val.opval)); ;}
0de566d7
DM
1010 break;
1011
2d0e3c96 1012 case 154:
b5bbe64a 1013#line 812 "perly.y"
2d0e3c96 1014 { (yyval.opval) = newANONLIST((OP*)NULL);;}
0de566d7
DM
1015 break;
1016
2d0e3c96 1017 case 155:
b5bbe64a 1018#line 814 "perly.y"
2d0e3c96 1019 { (yyval.opval) = newANONHASH((ps[(2) - (4)].val.opval)); ;}
0de566d7
DM
1020 break;
1021
2d0e3c96 1022 case 156:
b5bbe64a 1023#line 816 "perly.y"
2d0e3c96 1024 { (yyval.opval) = newANONHASH((OP*)NULL); ;}
0de566d7
DM
1025 break;
1026
2d0e3c96 1027 case 157:
b5bbe64a
JH
1028#line 818 "perly.y"
1029 { SvREFCNT_inc_simple_void(PL_compcv);
2d0e3c96 1030 (yyval.opval) = newANONATTRSUB((ps[(2) - (5)].val.ival), (ps[(3) - (5)].val.opval), (ps[(4) - (5)].val.opval), (ps[(5) - (5)].val.opval)); ;}
9a9798c2
YST
1031 break;
1032
2d0e3c96 1033 case 158:
b5bbe64a 1034#line 825 "perly.y"
2d0e3c96 1035 { (yyval.opval) = dofile((ps[(2) - (2)].val.opval), (ps[(1) - (2)].val.ival));;}
9a9798c2
YST
1036 break;
1037
2d0e3c96 1038 case 159:
b5bbe64a 1039#line 827 "perly.y"
2d0e3c96 1040 { (yyval.opval) = newUNOP(OP_NULL, OPf_SPECIAL, op_scope((ps[(2) - (2)].val.opval)));;}
f05e27e5
DM
1041 break;
1042
2d0e3c96 1043 case 164:
b5bbe64a 1044#line 835 "perly.y"
2d0e3c96 1045 { (yyval.opval) = newCONDOP(0, (ps[(1) - (5)].val.opval), (ps[(3) - (5)].val.opval), (ps[(5) - (5)].val.opval)); ;}
0de566d7
DM
1046 break;
1047
2d0e3c96 1048 case 165:
b5bbe64a 1049#line 837 "perly.y"
2d0e3c96 1050 { (yyval.opval) = newUNOP(OP_REFGEN, 0, op_lvalue((ps[(2) - (2)].val.opval),OP_REFGEN)); ;}
0de566d7
DM
1051 break;
1052
2d0e3c96 1053 case 166:
b5bbe64a 1054#line 839 "perly.y"
2d0e3c96 1055 { (yyval.opval) = (ps[(1) - (1)].val.opval); ;}
0de566d7
DM
1056 break;
1057
2d0e3c96 1058 case 167:
b5bbe64a 1059#line 841 "perly.y"
2d0e3c96 1060 { (yyval.opval) = localize((ps[(2) - (2)].val.opval),(ps[(1) - (2)].val.ival)); ;}
0de566d7
DM
1061 break;
1062
2d0e3c96 1063 case 168:
b5bbe64a 1064#line 843 "perly.y"
2d0e3c96 1065 { (yyval.opval) = sawparens((ps[(2) - (3)].val.opval)); ;}
0de566d7
DM
1066 break;
1067
2d0e3c96 1068 case 169:
b5bbe64a 1069#line 845 "perly.y"
2d0e3c96 1070 { (yyval.opval) = (ps[(1) - (1)].val.opval); ;}
0de566d7
DM
1071 break;
1072
2d0e3c96 1073 case 170:
b5bbe64a 1074#line 847 "perly.y"
2d0e3c96 1075 { (yyval.opval) = sawparens(newNULLLIST()); ;}
ea25a9b2
Z
1076 break;
1077
2d0e3c96 1078 case 171:
b5bbe64a 1079#line 849 "perly.y"
2d0e3c96 1080 { (yyval.opval) = (ps[(1) - (1)].val.opval); ;}
0de566d7
DM
1081 break;
1082
2d0e3c96 1083 case 172:
b5bbe64a 1084#line 851 "perly.y"
2d0e3c96 1085 { (yyval.opval) = (ps[(1) - (1)].val.opval); ;}
0de566d7
DM
1086 break;
1087
2d0e3c96 1088 case 173:
b5bbe64a 1089#line 853 "perly.y"
2d0e3c96 1090 { (yyval.opval) = (ps[(1) - (1)].val.opval); ;}
f20dcd76
VP
1091 break;
1092
2d0e3c96 1093 case 174:
b5bbe64a 1094#line 855 "perly.y"
2d0e3c96 1095 { (yyval.opval) = (ps[(1) - (1)].val.opval); ;}
8e720305
Z
1096 break;
1097
2d0e3c96 1098 case 175:
b5bbe64a 1099#line 857 "perly.y"
2d0e3c96 1100 { (yyval.opval) = newUNOP(OP_AV2ARYLEN, 0, ref((ps[(1) - (1)].val.opval), OP_AV2ARYLEN));;}
4210d3f1
FC
1101 break;
1102
2d0e3c96 1103 case 176:
b5bbe64a 1104#line 859 "perly.y"
2d0e3c96 1105 { (yyval.opval) = (ps[(1) - (1)].val.opval); ;}
cc624add
FC
1106 break;
1107
2d0e3c96 1108 case 177:
b5bbe64a 1109#line 861 "perly.y"
2fcb4757 1110 { (yyval.opval) = op_prepend_elem(OP_ASLICE,
f05e27e5
DM
1111 newOP(OP_PUSHMARK, 0),
1112 newLISTOP(OP_ASLICE, 0,
1654d593
DM
1113 list((ps[(3) - (4)].val.opval)),
1114 ref((ps[(1) - (4)].val.opval), OP_ASLICE)));
429a2555
FC
1115 if ((yyval.opval) && (ps[(1) - (4)].val.opval))
1116 (yyval.opval)->op_private |=
1117 (ps[(1) - (4)].val.opval)->op_private & OPpSLICEWARNING;
2d0e3c96 1118 ;}
0de566d7
DM
1119 break;
1120
2d0e3c96 1121 case 178:
b5bbe64a 1122#line 871 "perly.y"
6dd3e0f2
RZ
1123 { (yyval.opval) = op_prepend_elem(OP_KVASLICE,
1124 newOP(OP_PUSHMARK, 0),
1125 newLISTOP(OP_KVASLICE, 0,
1126 list((ps[(3) - (4)].val.opval)),
1127 ref(oopsAV((ps[(1) - (4)].val.opval)), OP_KVASLICE)));
95a31aad
FC
1128 if ((yyval.opval) && (ps[(1) - (4)].val.opval))
1129 (yyval.opval)->op_private |=
1130 (ps[(1) - (4)].val.opval)->op_private & OPpSLICEWARNING;
2d0e3c96 1131 ;}
6dd3e0f2
RZ
1132 break;
1133
2d0e3c96 1134 case 179:
b5bbe64a 1135#line 881 "perly.y"
2fcb4757 1136 { (yyval.opval) = op_prepend_elem(OP_HSLICE,
f05e27e5
DM
1137 newOP(OP_PUSHMARK, 0),
1138 newLISTOP(OP_HSLICE, 0,
1654d593
DM
1139 list((ps[(3) - (5)].val.opval)),
1140 ref(oopsHV((ps[(1) - (5)].val.opval)), OP_HSLICE)));
429a2555
FC
1141 if ((yyval.opval) && (ps[(1) - (5)].val.opval))
1142 (yyval.opval)->op_private |=
1143 (ps[(1) - (5)].val.opval)->op_private & OPpSLICEWARNING;
53a7735b 1144 PL_parser->expect = XOPERATOR;
2d0e3c96 1145 ;}
0de566d7
DM
1146 break;
1147
2d0e3c96 1148 case 180:
b5bbe64a 1149#line 892 "perly.y"
5cae3edb
RZ
1150 { (yyval.opval) = op_prepend_elem(OP_KVHSLICE,
1151 newOP(OP_PUSHMARK, 0),
1152 newLISTOP(OP_KVHSLICE, 0,
1153 list((ps[(3) - (5)].val.opval)),
1154 ref((ps[(1) - (5)].val.opval), OP_KVHSLICE)));
95a31aad
FC
1155 if ((yyval.opval) && (ps[(1) - (5)].val.opval))
1156 (yyval.opval)->op_private |=
1157 (ps[(1) - (5)].val.opval)->op_private & OPpSLICEWARNING;
5cae3edb 1158 PL_parser->expect = XOPERATOR;
2d0e3c96 1159 ;}
0de566d7
DM
1160 break;
1161
2d0e3c96 1162 case 181:
b5bbe64a 1163#line 903 "perly.y"
2d0e3c96 1164 { (yyval.opval) = (ps[(1) - (1)].val.opval); ;}
0de566d7
DM
1165 break;
1166
2d0e3c96 1167 case 182:
b5bbe64a 1168#line 905 "perly.y"
2d0e3c96 1169 { (yyval.opval) = newUNOP(OP_ENTERSUB, 0, scalar((ps[(1) - (1)].val.opval))); ;}
5cae3edb
RZ
1170 break;
1171
2d0e3c96 1172 case 183:
b5bbe64a 1173#line 907 "perly.y"
1654d593 1174 { (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED, scalar((ps[(1) - (3)].val.opval)));
2d0e3c96 1175 ;}
0de566d7
DM
1176 break;
1177
2d0e3c96 1178 case 184:
b5bbe64a 1179#line 910 "perly.y"
f05e27e5
DM
1180 {
1181 (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED,
2fcb4757 1182 op_append_elem(OP_LIST, (ps[(3) - (4)].val.opval), scalar((ps[(1) - (4)].val.opval))));
2d0e3c96 1183 ;}
0de566d7
DM
1184 break;
1185
2d0e3c96 1186 case 185:
b5bbe64a 1187#line 915 "perly.y"
f05e27e5 1188 { (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED,
2fcb4757 1189 op_append_elem(OP_LIST, (ps[(3) - (3)].val.opval), scalar((ps[(2) - (3)].val.opval))));
2d0e3c96 1190 ;}
0de566d7
DM
1191 break;
1192
2d0e3c96 1193 case 186:
b5bbe64a 1194#line 919 "perly.y"
2d0e3c96 1195 { (yyval.opval) = newSVREF((ps[(1) - (4)].val.opval)); ;}
b5bbe64a
JH
1196 break;
1197
2d0e3c96 1198 case 187:
b5bbe64a 1199#line 921 "perly.y"
2d0e3c96 1200 { (yyval.opval) = newAVREF((ps[(1) - (4)].val.opval)); ;}
89f35911
FC
1201 break;
1202
2d0e3c96 1203 case 188:
b5bbe64a 1204#line 923 "perly.y"
2d0e3c96 1205 { (yyval.opval) = newHVREF((ps[(1) - (4)].val.opval)); ;}
89f35911
FC
1206 break;
1207
2d0e3c96 1208 case 189:
b5bbe64a
JH
1209#line 925 "perly.y"
1210 { (yyval.opval) = newUNOP(OP_ENTERSUB, 0,
2d0e3c96 1211 scalar(newCVREF((ps[(3) - (4)].val.ival),(ps[(1) - (4)].val.opval)))); ;}
89f35911
FC
1212 break;
1213
2d0e3c96 1214 case 190:
b5bbe64a 1215#line 928 "perly.y"
2d0e3c96 1216 { (yyval.opval) = newGVREF(0,(ps[(1) - (4)].val.opval)); ;}
89f35911
FC
1217 break;
1218
2d0e3c96 1219 case 191:
b5bbe64a
JH
1220#line 930 "perly.y"
1221 { (yyval.opval) = newOP((ps[(1) - (1)].val.ival), OPf_SPECIAL);
2d0e3c96 1222 PL_hints |= HINT_BLOCK_SCOPE; ;}
89f35911
FC
1223 break;
1224
2d0e3c96 1225 case 192:
b5bbe64a 1226#line 933 "perly.y"
2d0e3c96 1227 { (yyval.opval) = newLOOPEX((ps[(1) - (2)].val.ival),(ps[(2) - (2)].val.opval)); ;}
0de566d7
DM
1228 break;
1229
2d0e3c96 1230 case 193:
b5bbe64a 1231#line 935 "perly.y"
2d0e3c96 1232 { (yyval.opval) = newUNOP(OP_NOT, 0, scalar((ps[(2) - (2)].val.opval))); ;}
0de566d7
DM
1233 break;
1234
2d0e3c96 1235 case 194:
b5bbe64a 1236#line 937 "perly.y"
2d0e3c96 1237 { (yyval.opval) = newOP((ps[(1) - (1)].val.ival), 0); ;}
0de566d7
DM
1238 break;
1239
2d0e3c96 1240 case 195:
b5bbe64a 1241#line 939 "perly.y"
2d0e3c96 1242 { (yyval.opval) = newUNOP((ps[(1) - (2)].val.ival), 0, (ps[(2) - (2)].val.opval)); ;}
0de566d7
DM
1243 break;
1244
2d0e3c96 1245 case 196:
b5bbe64a 1246#line 941 "perly.y"
2d0e3c96 1247 { (yyval.opval) = newUNOP((ps[(1) - (2)].val.ival), 0, (ps[(2) - (2)].val.opval)); ;}
0de566d7
DM
1248 break;
1249
2d0e3c96 1250 case 197:
b5bbe64a 1251#line 943 "perly.y"
2d0e3c96 1252 { (yyval.opval) = newOP(OP_REQUIRE, (ps[(1) - (1)].val.ival) ? OPf_SPECIAL : 0); ;}
0de566d7
DM
1253 break;
1254
2d0e3c96 1255 case 198:
b5bbe64a 1256#line 945 "perly.y"
2d0e3c96 1257 { (yyval.opval) = newUNOP(OP_REQUIRE, (ps[(1) - (2)].val.ival) ? OPf_SPECIAL : 0, (ps[(2) - (2)].val.opval)); ;}
0de566d7
DM
1258 break;
1259
2d0e3c96 1260 case 199:
b5bbe64a 1261#line 947 "perly.y"
2d0e3c96 1262 { (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED, scalar((ps[(1) - (1)].val.opval))); ;}
0de566d7
DM
1263 break;
1264
2d0e3c96 1265 case 200:
b5bbe64a
JH
1266#line 949 "perly.y"
1267 { (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED,
2d0e3c96 1268 op_append_elem(OP_LIST, (ps[(2) - (2)].val.opval), scalar((ps[(1) - (2)].val.opval)))); ;}
9eb5c532
Z
1269 break;
1270
2d0e3c96 1271 case 201:
b5bbe64a 1272#line 952 "perly.y"
2d0e3c96 1273 { (yyval.opval) = newOP((ps[(1) - (1)].val.ival), 0); ;}
0de566d7
DM
1274 break;
1275
2d0e3c96 1276 case 202:
b5bbe64a 1277#line 954 "perly.y"
2d0e3c96 1278 { (yyval.opval) = newOP((ps[(1) - (3)].val.ival), 0);;}
0de566d7
DM
1279 break;
1280
2d0e3c96 1281 case 203:
b5bbe64a 1282#line 956 "perly.y"
2d0e3c96 1283 { (yyval.opval) = (ps[(1) - (1)].val.opval); ;}
0de566d7
DM
1284 break;
1285
2d0e3c96 1286 case 204:
b5bbe64a 1287#line 958 "perly.y"
2d0e3c96 1288 { (yyval.opval) = (ps[(1) - (3)].val.opval); ;}
7eb971ee
FC
1289 break;
1290
2d0e3c96 1291 case 205:
b5bbe64a 1292#line 960 "perly.y"
2d0e3c96 1293 { (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED, scalar((ps[(1) - (1)].val.opval))); ;}
7eb971ee
FC
1294 break;
1295
2d0e3c96 1296 case 206:
b5bbe64a
JH
1297#line 962 "perly.y"
1298 { (yyval.opval) = ((ps[(1) - (3)].val.ival) == OP_NOT)
1299 ? newUNOP((ps[(1) - (3)].val.ival), 0, newSVOP(OP_CONST, 0, newSViv(0)))
2d0e3c96 1300 : newOP((ps[(1) - (3)].val.ival), OPf_SPECIAL); ;}
0de566d7
DM
1301 break;
1302
2d0e3c96 1303 case 207:
b5bbe64a 1304#line 966 "perly.y"
2d0e3c96 1305 { (yyval.opval) = newUNOP((ps[(1) - (4)].val.ival), 0, (ps[(3) - (4)].val.opval)); ;}
0de566d7
DM
1306 break;
1307
2d0e3c96 1308 case 208:
b5bbe64a 1309#line 968 "perly.y"
d63c20f2
DM
1310 {
1311 if ( (ps[(1) - (1)].val.opval)->op_type != OP_TRANS
1312 && (ps[(1) - (1)].val.opval)->op_type != OP_TRANSR
1313 && (((PMOP*)(ps[(1) - (1)].val.opval))->op_pmflags & PMf_HAS_CV))
1314 {
1315 (yyval.ival) = start_subparse(FALSE, CVf_ANON);
1316 SAVEFREESV(PL_compcv);
1317 } else
1318 (yyval.ival) = 0;
2d0e3c96 1319 ;}
d63c20f2
DM
1320 break;
1321
2d0e3c96 1322 case 209:
b5bbe64a 1323#line 979 "perly.y"
2d0e3c96 1324 { (yyval.opval) = pmruntime((ps[(1) - (5)].val.opval), (ps[(4) - (5)].val.opval), 1, (ps[(2) - (5)].val.ival)); ;}
0de566d7
DM
1325 break;
1326
2d0e3c96 1327 case 212:
b5bbe64a 1328#line 983 "perly.y"
be25f609 1329 {
1330 (yyval.opval) = newLISTOP(OP_DIE, 0, newOP(OP_PUSHMARK, 0),
1331 newSVOP(OP_CONST, 0, newSVpvs("Unimplemented")));
2d0e3c96 1332 ;}
be25f609 1333 break;
1334
2d0e3c96 1335 case 214:
b5bbe64a 1336#line 992 "perly.y"
2d0e3c96 1337 { (yyval.opval) = my_attrs((ps[(2) - (3)].val.opval),(ps[(3) - (3)].val.opval)); ;}
b5bbe64a
JH
1338 break;
1339
2d0e3c96 1340 case 215:
b5bbe64a 1341#line 994 "perly.y"
2d0e3c96 1342 { (yyval.opval) = localize((ps[(2) - (2)].val.opval),(ps[(1) - (2)].val.ival)); ;}
0de566d7
DM
1343 break;
1344
2d0e3c96 1345 case 216:
b5bbe64a 1346#line 999 "perly.y"
2d0e3c96 1347 { (yyval.opval) = sawparens((ps[(2) - (3)].val.opval)); ;}
0de566d7
DM
1348 break;
1349
2d0e3c96 1350 case 217:
b5bbe64a 1351#line 1001 "perly.y"
2d0e3c96 1352 { (yyval.opval) = sawparens(newNULLLIST()); ;}
0de566d7
DM
1353 break;
1354
2d0e3c96 1355 case 218:
b5bbe64a 1356#line 1004 "perly.y"
2d0e3c96 1357 { (yyval.opval) = (ps[(1) - (1)].val.opval); ;}
4098b6bb
JV
1358 break;
1359
2d0e3c96 1360 case 219:
b5bbe64a 1361#line 1006 "perly.y"
2d0e3c96 1362 { (yyval.opval) = (ps[(1) - (1)].val.opval); ;}
ea25a9b2
Z
1363 break;
1364
2d0e3c96 1365 case 220:
b5bbe64a 1366#line 1008 "perly.y"
2d0e3c96 1367 { (yyval.opval) = (ps[(1) - (1)].val.opval); ;}
d63c20f2
DM
1368 break;
1369
2d0e3c96 1370 case 221:
b5bbe64a 1371#line 1013 "perly.y"
2d0e3c96 1372 { (yyval.opval) = (OP*)NULL; ;}
7c70caa5
FC
1373 break;
1374
2d0e3c96 1375 case 222:
b5bbe64a 1376#line 1015 "perly.y"
2d0e3c96 1377 { (yyval.opval) = (ps[(1) - (1)].val.opval); ;}
764212cf
FC
1378 break;
1379
2d0e3c96 1380 case 223:
b5bbe64a 1381#line 1019 "perly.y"
2d0e3c96 1382 { (yyval.opval) = (OP*)NULL; ;}
4210d3f1
FC
1383 break;
1384
2d0e3c96 1385 case 224:
b5bbe64a 1386#line 1021 "perly.y"
2d0e3c96 1387 { (yyval.opval) = (ps[(1) - (1)].val.opval); ;}
5cae3edb
RZ
1388 break;
1389
2d0e3c96 1390 case 225:
b5bbe64a 1391#line 1027 "perly.y"
2d0e3c96 1392 { PL_parser->in_my = 0; (yyval.opval) = my((ps[(1) - (1)].val.opval)); ;}
6dd3e0f2
RZ
1393 break;
1394
2d0e3c96 1395 case 226:
b5bbe64a 1396#line 1031 "perly.y"
2d0e3c96 1397 { (yyval.opval) = newCVREF((ps[(1) - (2)].val.ival),(ps[(2) - (2)].val.opval)); ;}
cc624add
FC
1398 break;
1399
2d0e3c96 1400 case 227:
b5bbe64a 1401#line 1035 "perly.y"
2d0e3c96 1402 { (yyval.opval) = newSVREF((ps[(2) - (2)].val.opval)); ;}
0de566d7
DM
1403 break;
1404
2d0e3c96 1405 case 228:
b5bbe64a
JH
1406#line 1039 "perly.y"
1407 { (yyval.opval) = newAVREF((ps[(2) - (2)].val.opval));
1408 if ((yyval.opval)) (yyval.opval)->op_private |= (ps[(1) - (2)].val.ival);
2d0e3c96 1409 ;}
0de566d7
DM
1410 break;
1411
2d0e3c96 1412 case 229:
b5bbe64a
JH
1413#line 1045 "perly.y"
1414 { (yyval.opval) = newHVREF((ps[(2) - (2)].val.opval));
1415 if ((yyval.opval)) (yyval.opval)->op_private |= (ps[(1) - (2)].val.ival);
2d0e3c96 1416 ;}
0de566d7
DM
1417 break;
1418
2d0e3c96 1419 case 230:
b5bbe64a 1420#line 1051 "perly.y"
2d0e3c96 1421 { (yyval.opval) = newAVREF((ps[(2) - (2)].val.opval)); ;}
500bedb6
DM
1422 break;
1423
2d0e3c96 1424 case 231:
b5bbe64a 1425#line 1053 "perly.y"
2d0e3c96 1426 { (yyval.opval) = newAVREF((ps[(1) - (4)].val.opval)); ;}
a72a1c8b
RGS
1427 break;
1428
2d0e3c96 1429 case 232:
b5bbe64a 1430#line 1057 "perly.y"
2d0e3c96 1431 { (yyval.opval) = newGVREF(0,(ps[(2) - (2)].val.opval)); ;}
ff25e5db
FC
1432 break;
1433
2d0e3c96 1434 case 234:
b5bbe64a 1435#line 1062 "perly.y"
2d0e3c96 1436 { (yyval.opval) = newAVREF((ps[(1) - (3)].val.opval)); ;}
503de470
DM
1437 break;
1438
2d0e3c96 1439 case 236:
b5bbe64a 1440#line 1067 "perly.y"
2d0e3c96 1441 { (yyval.opval) = newHVREF((ps[(1) - (3)].val.opval)); ;}
89f35911
FC
1442 break;
1443
2d0e3c96 1444 case 238:
b5bbe64a 1445#line 1072 "perly.y"
2d0e3c96 1446 { (yyval.opval) = newGVREF(0,(ps[(1) - (3)].val.opval)); ;}
76eba8ab
FC
1447 break;
1448
2d0e3c96 1449 case 239:
b5bbe64a 1450#line 1077 "perly.y"
2d0e3c96 1451 { (yyval.opval) = scalar((ps[(1) - (1)].val.opval)); ;}
89f35911
FC
1452 break;
1453
2d0e3c96 1454 case 240:
b5bbe64a 1455#line 1079 "perly.y"
2d0e3c96 1456 { (yyval.opval) = scalar((ps[(1) - (1)].val.opval)); ;}
3cd0a11a
RGS
1457 break;
1458
2d0e3c96 1459 case 241:
b5bbe64a 1460#line 1081 "perly.y"
2d0e3c96 1461 { (yyval.opval) = op_scope((ps[(1) - (1)].val.opval)); ;}
f05e27e5
DM
1462 break;
1463
2d0e3c96 1464 case 242:
b5bbe64a 1465#line 1084 "perly.y"
2d0e3c96 1466 { (yyval.opval) = (ps[(1) - (1)].val.opval); ;}
5cae3edb 1467 break;
fb602e32 1468
2d0e3c96
FC
1469
1470/* Line 1267 of yacc.c. */
1471
20515881 1472 default: break;
0de566d7 1473
e8fb9efb 1474
c24c946d 1475/* Generated from:
2d0e3c96 1476 * e89acf986fa79bb74d827a4fd4823d07ff25bd99c2087cf4e7a7e6ae41d7a246 perly.y
b5bbe64a 1477 * d1d4df7b8e30ac9dede664af9179e6e5e7ddc7f2ad9c4eff9e2e5b32c9e16a6e regen_perly.pl
c24c946d 1478 * ex: set ro: */