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