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