summaryrefslogtreecommitdiff
path: root/perly.tab
Commit message (Collapse)AuthorAgeFilesLines
* [perl #43425] local $[: fix scoping during parser error handling.Dave Mitchell2007-07-161-723/+714
| | | | | | | | | Change 22306# inadvertently made 'local $[' statement-scoped rather than block-scoped; so revert that change and add a different fix. The problem was to ensure that the savestack got popped correctly while popping errored tokens. We how record the current value of PL_savestack_ix with each pushed parser state. p4raw-id: //depot/perl@31615
* fix some (mostly MAD) compiler warningsDave Mitchell2007-05-131-16/+16
| | | p4raw-id: //depot/perl@31209
* move PL_rsfp_filters into the parser structDave Mitchell2007-05-121-14/+14
| | | p4raw-id: //depot/perl@31200
* Patch by Gerard Goossen to add madprops to "require" opcodeRafael Garcia-Suarez2007-03-151-5/+5
| | | p4raw-id: //depot/perl@30599
* Fix leaks in label strings allocation in COPsRafael Garcia-Suarez2006-12-201-18/+18
| | | p4raw-id: //depot/perl@29601
* remove extraneous declaration prom perly.tabDave Mitchell2006-12-161-1/+0
| | | p4raw-id: //depot/perl@29564
* misc MAD coredump fixes and parser leak fixesDave Mitchell2006-12-131-22/+22
| | | | | | | | | - fix MAD coredump in tr/// - fix mad coredump in multi-line string literals - kill some MAD uninit value warnings - don't allow assignment to $n in perly.y - make op_dump handle op_latefree flags p4raw-id: //depot/perl@29548
* fixup some ival/opval type changes from perly.y/madly.y mergerDave Mitchell2006-12-131-16/+16
| | | p4raw-id: //depot/perl@29542
* fix eval qw(BEGIN{die}) style leaks (second attempt).Dave Mitchell2006-12-111-605/+608
| | | | | | | | | | | | Repeat of change #28319 (backed out by change #28720), this time freeing ops using the right pad. Also backs out the remempad parser addition from change #29501; instead a new auxiliary paser stack is added, which records the current value of PL_comppad for every state. p4raw-link: @29501 on //depot/perl: 2af555bf3f2b3ca8e114df3f5f680d40bd24d6bf p4raw-link: @28720 on //depot/perl: c86b7e916b443ee192c5638ad9d077ad4e244713 p4raw-link: @28319 on //depot/perl: eb7d7d25d2f780edcbedc124a5bdca0d53ad8687 p4raw-id: //depot/perl@29504
* #28315 could crash when freeing ops with different padsDave Mitchell2006-12-101-608/+605
| | | | | | Add hook to parser to record current PL_comppad, then use this when popping ops off the parser stack after parser error p4raw-id: //depot/perl@29501
* parser: expand yy_is_opval[] to include all value typesDave Mitchell2006-12-101-47/+52
| | | | | | and rename to yy_type_tab[]. Then use this table to improve stack dumping with -Dpv p4raw-id: //depot/perl@29500
* fix some casting issues with perly.y / madly.y mergerDave Mitchell2006-12-041-22/+22
| | | p4raw-id: //depot/perl@29461
* merge perly.y and madlu.yDave Mitchell2006-12-041-745/+750
| | | p4raw-id: //depot/perl@29455
* Parsing fix: it wasn't possible to call a function with a (_) prototypeRafael Garcia-Suarez2006-11-131-57/+57
| | | | | | (that is, a function mimicing an unary op) without parentheses. Bug reported by Ævar Arnfjörð Bjarmason. p4raw-id: //depot/perl@29258
* stab at UNITCHECK blocksAlexander Gough2006-10-191-15/+15
| | | | | Message-ID: <20061019120412.GA12290@the.earth.li> p4raw-id: //depot/perl@29053
* stop OPs leaking in eval "syntax error"Dave Mitchell2006-05-271-0/+27
| | | | | | | | When bison pops states during error recovery, any states holding an OP would leak the OP. Create an extra YY table that tells us which states are of type opval, and when popping one of those, free the op. p4raw-id: //depot/perl@28315
* stop eval "sub{" leakingDave Mitchell2006-05-261-15/+15
| | | p4raw-id: //depot/perl@28314
* Add the MAD change to perly.y, which brings a new PEG token.Nicholas Clark2006-03-091-563/+567
| | | p4raw-id: //depot/perl@27437
* latest switch/say/~~Robin Houston2005-12-191-721/+737
| | | | | Message-Id: <20051217204431.GB28940@rpc142.cs.man.ac.uk> p4raw-id: //depot/perl@26400
* The new REQUIRE token introduced by change 25599 must beRafael Garcia-Suarez2005-10-131-25/+25
| | | | | | | nonassoc, just like the UNIOP token it's patterned after. (While we're at it, allow to use bison 2.1 to regenerate the parser files.) p4raw-id: //depot/perl@25746
* CORE::require was always parsed as require().Rafael Garcia-Suarez2005-09-261-620/+634
| | | | | | | | | | | That's because require() isn't overridable at tokenizer-level like other overridable built-ins, but is handled by the optree builder. So, find a way to pass the information that require() was written as CORE::require() to Perl_ck_require. This is done by adding a new token type REQUIRE and by adding OPf_SPECIAL to OP_REQUIRE when it's saw as CORE::require in the program text. This fixes bug [perl #37274] The "CORE" in CORE::require is ignored. p4raw-id: //depot/perl@25599
* Allow non-arrowed form of chained subscripts after slicesYitzchak Scott-Thoennes2005-09-131-71/+71
| | | | | | | | | | Subject: Re: [perl #37039] perlref documentation about optional -> is too vague Date: Thu, 1 Sep 2005 17:41:36 -0700 Message-ID: <20050902004136.GA2656@efn.org> Date: Mon, 5 Sep 2005 08:10:20 -0700 Message-ID: <20050905151020.GA3556@efn.org> p4raw-id: //depot/perl@25399
* while (my $x ...) { ...; redo } shouldn't undef $x.Dave Mitchell2005-05-071-418/+422
| | | | | | | In the presence of 'my' in the conditional of a while(), until(), or for(;;) loop, add an extra scope to the body so that redo doesn't undef the lexical p4raw-id: //depot/perl@24412
* [perl #34101] not() || 1 produces segmentation faultMarcus Holland-Moritz2005-02-101-32/+32
| | | | | | Fixed by making not() behave like not(0). This is also the way not() behaved before it started segfaulting in 5.6.0. p4raw-id: //depot/perl@23960
* Turn regcomp into a list opDave Mitchell2004-10-101-454/+425
| | | p4raw-id: //depot/perl@23357
* Add comment to the top of most .c files explaining their purposeDave Mitchell2004-07-311-21/+21
| | | p4raw-id: //depot/perl@23176
* [perl #25824] Segmentation fault withDave Mitchell2004-02-151-623/+624
| | | | | sub x { shift; @a = @b; eval +{ use } } p4raw-id: //depot/perl@22306
* Switch from byacc to bison and simplify the perly.* regenerationDave Mitchell2004-02-141-0/+876
process p4raw-id: //depot/perl@22302