summaryrefslogtreecommitdiff
path: root/scope.h
Commit message (Collapse)AuthorAgeFilesLines
* Move the implmentation of SAVEHINTS() into a new Perl_save_hints() inNicholas Clark2008-12-011-16/+1
| | | | | | scope.c. "Inlined" macro functions in scope.h are actually space inefficient. p4raw-id: //depot/perl@34965
* For SAVEHINTS(), re-order the savestack to be (?:PTR, )? INT, PTR.Nicholas Clark2008-12-011-6/+6
| | | | | This brings it to the same order as save_aelem() or save_pushi32ptr(). p4raw-id: //depot/perl@34964
* Expose save_pushi32ptr() and implement SAVECOPARYBASE() with it.Nicholas Clark2008-12-011-7/+1
| | | p4raw-id: //depot/perl@34963
* Expose save_pushptrptr() and implement SAVESWITCHSTACK() with it.Nicholas Clark2008-12-011-4/+1
| | | p4raw-id: //depot/perl@34960
* Re-implement the macros SAVECOMPPAD(), SAVECOMPILEWARNINGS(),Nicholas Clark2008-11-301-18/+3
| | | | | | | SAVEPARSER() in terms of save_pushptr(). This shinks the exectuable by about 4K. Maybe some of the other scope.h macros should become functions. p4raw-id: //depot/perl@34958
* Convert all the scope save functions of the formNicholas Clark2008-11-301-0/+6
| | | | | | | | | SSCHECK(2); SSPUSHPTR(o); SSPUSHINT(SAVEt_FREEOP); into a single function Perl_save_pushptr(ptr, type), which the others call. Implement the others as macros. This reduces the object code size. p4raw-id: //depot/perl@34956
* Re: [perl #60360] [PATCH] UPDATED: local $SIG{FOO} = sub {...}; sets signal ↵Chip Salzenberg2008-11-131-0/+4
| | | | | | | | | | | | handler to SIG_DFL Message-ID: <20081112234504.GI2062@tytlal.topaz.cx> Updated patch to retain source compatibility. Plus using the correct PERL_ARGS_ASSERT_SAVE_HELEM_FLAGS macro and running make regen. p4raw-id: //depot/perl@34829
* Add MUTABLE_HV(), and remove (HV *) casts from headers.Nicholas Clark2008-10-281-1/+1
| | | p4raw-id: //depot/perl@34619
* Add a macro MUTABLE_PTR(p), which on (non-pedantic) gcc will not castNicholas Clark2008-10-271-5/+5
| | | | | | | | | | away const, returning a void *. Add MUTABLE_SV(sv) which uses this, and replace all (SV *) casts either with MUTABLE_SV(sv), or (const SV *). This probably still needs some work - assigning to SvPVX() and SvRV() is now likely to generate a casting error. The core doesn't do this. But as-is it's finding bugs that can be fixed. p4raw-id: //depot/perl@34605
* Update copyright years.Nicholas Clark2008-10-251-2/+2
| | | p4raw-id: //depot/perl@34585
* A macro used only once isn't a typing saving, and 3 macro definitionsNicholas Clark2008-04-061-4/+0
| | | | | | | never used are more obfuscation than clarification, so inline the only use of SAVECOPLABEL_FREE(), and remove the unthreaded variant and both SAVECOPLABEL()s. Exterminate! Exterminate! Exterminate! p4raw-id: //depot/perl@33654
* Investigation reveals that the work of restoring the iterator to theNicholas Clark2008-01-261-2/+2
| | | | | | | | | | | | | | | | | pad is shared between POPLOOP, using itersave, and the end of scope restore action requested by Perl_save_padsv(). In fact, the only user of SAVEt_PADSV is pp_enteriter, and it already provides enough information to allow it to perform the sv_2mortal() in POPLOOP. So make it do so. Rather than creating a new routine, use the existing routine because nothing else (at least nothing else known to Google's codesearch) uses it. But rename it just in case something we can't see is being naughty and using our private functions - they will get link errors against 5.12. All this means that itersave is now redundant. So remove it. This makes struct context 48 bytes on ILP32 platforms with 32bit IVs, down from 64 bytes in 5.10. 33% more context stack in the same memory. p4raw-id: //depot/perl@33080
* Add editor blocks to some header files.Marcus Holland-Moritz2008-01-011-0/+9
| | | p4raw-id: //depot/perl@32793
* Update copyright years in .h files. Also, in .plRafael Garcia-Suarez2007-01-051-1/+1
| | | | | | files that generate .h files, so they'll be ready next time. p4raw-id: //depot/perl@29695
* handle cloning of parsers on the save stackDave Mitchell2007-01-031-0/+8
| | | p4raw-id: //depot/perl@29678
* Re: [PATCH] do not meddle in the affairs of PERL_TRACK_MEMPOOLJarkko Hietaniemi2006-12-181-0/+4
| | | | | | | Message-ID: <4586084E.8040706@iki.fi> Introduce CopLABEL() macro to deal with labels attached to COPs. p4raw-id: //depot/perl@29585
* [perl #40557] regexec.c saves context stack position improperly Dave Bailey2006-10-181-0/+9
| | | | | | From: Dave Bailey (via RT) <perlbug-followup@perl.org> Message-ID: <rt-3.5.HEAD-4979-1161103047-337.40557-75-0@perl.org> p4raw-id: //depot/perl@29033
* Rename cop_hints to cop_hints_hashNicholas Clark2006-05-201-3/+3
| | | p4raw-id: //depot/perl@28252
* Re: [PATCH] cleanup 212 warnings emitted by gcc-4.2Marcus Holland-Moritz2006-04-261-2/+2
| | | | | Message-ID: <20060424232038.7550f9b6@r2d2> p4raw-id: //depot/perl@27962
* Change SAVECOPWARNINGS(c) to SAVECOMPILEWARNINGS() - it's only used toNicholas Clark2006-04-141-6/+5
| | | | | | | save the warnings on PL_compiling, so constraining its use to what we can test seems to make sense. Particularly as testing Perl_ss_dup is tricky. p4raw-id: //depot/perl@27805
* Remove SAVEt_FREESHAREDPV, as nothing is using it, and it isn't cateredNicholas Clark2006-04-131-10/+2
| | | | | | for in Perl_ss_dup, hence nothing is testing it and nothing will alert us if it breaks. p4raw-id: //depot/perl@27792
* Change cop_warnings from an SV holding the warnings bitmask to aNicholas Clark2006-04-121-0/+21
| | | | | | | directly (shared) malloc()ed buffer holding the warnings bitmask. This avoids bugs/crashes when the interpreter that created an optree is freed but the optree remains in use by other interpreters. p4raw-id: //depot/perl@27779
* First stab at using the pad to store the serialised hints data.Nicholas Clark2006-04-111-0/+2
| | | | | | This approach is almost certainly not only wrong, but also doomed. But it's needed to build a correct solution. p4raw-id: //depot/perl@27768
* Save the regexp engine state as 1 block on the save stack.Nicholas Clark2006-04-051-0/+1
| | | p4raw-id: //depot/perl@27728
* Abstract all the accesses to cop_arybase (apart from ByteLoader)Nicholas Clark2006-04-021-0/+10
| | | p4raw-id: //depot/perl@27671
* Automatically set HINT_LOCALIZE_HH whenever %^H is modified.Nicholas Clark2006-04-011-1/+1
| | | p4raw-id: //depot/perl@27666
* Serialise changes to %^H onto the current COP. Return the compile timeNicholas Clark2006-03-311-1/+5
| | | | | | state of %^H as an eleventh value from caller. This allows users to write pragmas. p4raw-id: //depot/perl@27643
* Remove SOFT_CAST() as it no longer does anything useful.Nicholas Clark2006-02-111-18/+14
| | | p4raw-id: //depot/perl@27161
* Quotes fixed, see also perl #36079Andy Lester2005-06-021-1/+1
| | | | | Message-ID: <20050602050238.GA4001@petdance.com> p4raw-id: //depot/perl@24666
* move the SETJMP exception-handing definitions from scope.h to cop.hDave Mitchell2005-05-021-118/+0
| | | | | so that a JMPENV* entry can be added to struct block_eval p4raw-id: //depot/perl@24361
* Symbian port of PerlJarkko Hietaniemi2005-04-211-0/+1
| | | | | Message-ID: <B356D8F434D20B40A8CEDAEC305A1F2453D653@esebe105.NOE.Nokia.com> p4raw-id: //depot/perl@24271
* Update copyrights.Rafael Garcia-Suarez2005-03-301-1/+1
| | | p4raw-id: //depot/perl@24106
* Remove PERL_FLEXIBLE_EXCEPTIONS code.Marcus Holland-Moritz2005-01-101-111/+27
| | | p4raw-id: //depot/perl@23780
* make -Dl log runops loop entry and exit, and jump level poppingDave Mitchell2004-07-251-1/+5
| | | p4raw-id: //depot/perl@23161
* [perl #30258] utf8 POPSTACK crash on split executionDave Mitchell2004-07-021-0/+11
| | | | | | | | split() does a SWITCHSTACK to directly split to an array, but if it subsequently dies (eg the regex triggers a 'use utf8' which is then denied by Safe), then the switch doesn't get undone. Add a new save type to allow for this. p4raw-id: //depot/perl@23023
* [perl #27040] - hints hash was being double freed on scope exitDave Mitchell2004-03-261-8/+8
| | | p4raw-id: //depot/perl@22594
* Update copyright noticesRafael Garcia-Suarez2004-03-161-1/+1
| | | p4raw-id: //depot/perl@22509
* back out change #22167 "freeing a CV reference that was currentlyDave Mitchell2004-01-171-1/+0
| | | | | | | | being executed caused coredumps". The new test case sometimes locks up linux's malloc, and with Perl's malloc the test code still coredumps :-( p4raw-link: @22167 on //depot/perl: b3a3b3a1da8f5142edf3e194532b08316f895282 p4raw-id: //depot/perl@22172
* [perl #24914] freeing a CV reference that was currently beingDave Mitchell2004-01-171-0/+1
| | | | | executed caused coredumps p4raw-id: //depot/perl@22167
* add "$lexical not available" warning in C<for my $lex ()>Dave Mitchell2003-08-091-0/+2
| | | | | Message-ID: <20030809135144.GC4997@fdgroup.com> p4raw-id: //depot/perl@20591
* line numbers are given % 64kJames Jurach2003-07-021-1/+1
| | | | | Message-ID: <20030702183105.GA4837@lebowski> p4raw-id: //depot/perl@19934
* Two debugging patches.Dave Mitchell2003-06-281-4/+2
| | | | | | | | | | | | | | | | The first allows to hold symbolic switches in $^D and more generally fixes assignment to $^D. The second one improves the information given by -Dl. Subject: [PATCH] allow $^D = "flags" Date: Fri, 27 Jun 2003 22:26:24 +0100 Message-ID: <20030627212624.GB12887@fdgroup.com> Subject: [PATCH] make -Dl show more scope info From: Dave Mitchell <davem@fdgroup.com> Date: Fri, 27 Jun 2003 23:00:36 +0100 Message-ID: <20030627220036.GC12887@fdgroup.com> p4raw-id: //depot/perl@19870
* [patch] Re: [perl #21728] regexp SEGVAdrian M. Enache2003-05-051-1/+2
| | | | | | Message-ID: <20030328215309.GA6413@ratsnest.hole> (with minor tweaks) p4raw-id: //depot/perl@19431
* Fix up Larry's copyright statements to my best knowledge.Jarkko Hietaniemi2003-04-161-1/+2
| | | | | | | (Lots of Perl 5 source code archaeology was involved.) Larry didn't make strangled noises when I showed him the patch, either :-) p4raw-id: //depot/perl@19242
* Reverse copyright update (#18801) for files not changed in 2003.Hugo van der Sanden2003-03-021-1/+1
| | | p4raw-id: //depot/perl@18807
* Update all copyrights to 2003, from JarkkoHugo van der Sanden2003-03-021-1/+1
| | | p4raw-id: //depot/perl@18801
* [Fwd: Patch for perl utf8-related bug]Richard Hitt2002-12-171-0/+4
| | | | | [perl #18932] p4raw-id: //depot/perl@18312
* PL_curpad == AvARRAY(PL_comppad) alwaysDave Mitchell2002-10-221-9/+3
| | | | | Message-ID: <20021018133640.A19172@fdgroup.com> p4raw-id: //depot/perl@18048
* Sprinkle some copyrights (use the oldest timestamp toJarkko Hietaniemi2002-01-241-0/+9
| | | | | | be found in the repository, which is most often not right, but at least consistent) p4raw-id: //depot/perl@14400
* Use PerlMemShared for CopSTASHPV and CopFILE. MUCH harder than it sounds!Nick Ing-Simmons2002-01-141-2/+4
| | | | | | | | | | | | Need to use CopXXXXX macros everywhere and add CopSTASH_free Add new scope type and add support for it to scope.c and scope stack dup-er in sv.c. Add savesharedpv(). Also zealous version of Win32's vmem.h to catch all the abuses. With this t/op/fork.t passes even with zealous checking and checker is point a finger at various threads/shared issues. PL_curcop->cop_io is still an issue. p4raw-id: //depot/perlio@14259