]>
 
 
git.vpit.fr Git - perl/modules/Scope-Upper.git/log 
 
 
 
 
 
 
Vincent Pit [Tue, 13 Sep 2011 10:42:15 +0000 (12:42 +0200)] 
 
Inline Perl_cv_clone() and Perl_new_pad() 
 
What we really need to fake the callback's GV is a pure copy of it, but 
Perl_cv_clone does not do this : it creates a new copy with a depth of 1 
and an empty pad, which is appropriate for pp_anoncode but not for our 
situation. The easiest way to fix this is simply to inline Perl_cv_clone() 
in our code, set up the copy's depth from the original, and crudely copy 
the old pad into a new one. 
 
This fixes closures defined in the uplevel callback that captures lexical 
from outside of the uplevel call, and also allows us to remove all the 
hacks from the previous su_cv_clone(). 
 
Vincent Pit [Fri, 9 Sep 2011 23:53:13 +0000 (01:53  +0200)] 
 
Activate the correct pad when calling the uplevel'd code 
 
This fixes at least two issues : 
- closures defined inside the uplevel callback can now wrap around 
lexicals from inside (but not outside yet, this will be fixed by the 
next commit). 
- state variables in the uplevel callback now work properly. 
 
Vincent Pit [Fri, 9 Sep 2011 17:30:16 +0000 (19:30 +0200)] 
 
Reorder some code in su_uplevel() 
 
Vincent Pit [Wed, 7 Sep 2011 22:18:54 +0000 (00:18  +0200)] 
 
Make sure the stack is large enough when returning values from words 
 
Vincent Pit [Mon, 5 Sep 2011 17:40:07 +0000 (19:40 +0200)] 
 
Silence some compiler warnings 
 
Vincent Pit [Sun, 4 Sep 2011 15:40:14 +0000 (17:40 +0200)] 
 
Test unwinding while unwinding 
 
Vincent Pit [Sun, 4 Sep 2011 15:00:19 +0000 (17:00 +0200)] 
 
One more POD wording fix 
 
Inspired by a fix in Debian. 
 
Vincent Pit [Sun, 4 Sep 2011 14:10:38 +0000 (16:10 +0200)] 
 
Move the unwind()-related members of the global context in their own struct 
 
Also correct the third argument to Zero() calls used to initialize the 
return_op and proxy_op members : the size was passed, while it is supposed 
to be the type. 
 
Vincent Pit [Sun, 4 Sep 2011 14:04:57 +0000 (16:04 +0200)] 
 
Abstract the uplevel storage logic in two new functions 
 
Also disable the restore-soonish magic trick on perl 5.13.7 and earlier, as 
the core behaves correctly since then. 
 
Vincent Pit [Sun, 4 Sep 2011 13:10:00 +0000 (15:10 +0200)] 
 
Tweak some comments in the uplevel() code 
 
Vincent Pit [Sun, 4 Sep 2011 13:03:28 +0000 (15:03 +0200)] 
 
Don't grow the fake cxstack if it's already large enough 
 
Vincent Pit [Sun, 4 Sep 2011 13:00:16 +0000 (15:00 +0200)] 
 
Fix some typos/wording in POD 
 
Vincent Pit [Sat, 3 Sep 2011 23:00:26 +0000 (01:00  +0200)] 
 
This is 0.16 
 
Vincent Pit [Sat, 3 Sep 2011 22:49:12 +0000 (00:49  +0200)] 
 
Silence some "Attempt to free unreferenced scalar" errors 
 
They were printed during the second benchmark. 
 
Vincent Pit [Sat, 3 Sep 2011 22:33:19 +0000 (00:33  +0200)] 
 
Implement uplevel() 
 
Vincent Pit [Sat, 3 Sep 2011 22:32:54 +0000 (00:32  +0200)] 
 
Correct a couple of test descriptions 
 
Vincent Pit [Wed, 24 Aug 2011 14:16:46 +0000 (16:16 +0200)] 
 
This is 0.15 
 
Vincent Pit [Wed, 24 Aug 2011 13:57:57 +0000 (15:57 +0200)] 
 
Update bundled Test::Leaner to 0.04 
 
Vincent Pit [Wed, 24 Aug 2011 12:52:01 +0000 (14:52 +0200)] 
 
Encode the README file in UTF-8 
 
Vincent Pit [Mon, 18 Jul 2011 14:19:13 +0000 (16:19 +0200)] 
 
Ignore MYMETA.json 
 
Vincent Pit [Mon, 18 Jul 2011 14:18:54 +0000 (16:18 +0200)] 
 
Add META.json 
 
Vincent Pit [Mon, 18 Jul 2011 14:16:57 +0000 (16:16 +0200)] 
 
Replace $] by "$]" 
 
An old bug could cause $] to be initialized to a wrong decimal value. 
Since its stringified value was always right, we use it instead. 
 
Occurences of $^V were also replaced by $]. 
 
Vincent Pit [Mon, 18 Jul 2011 14:04:10 +0000 (16:04 +0200)] 
 
Update bundled Test::Leaner to 0.03 
 
Vincent Pit [Sat, 5 Mar 2011 23:28:42 +0000 (00:28  +0100)] 
 
Switch to qw<> 
 
Vincent Pit [Mon, 28 Feb 2011 01:11:43 +0000 (02:11  +0100)] 
 
Invalidate the method cache when localizing subroutines 
 
Vincent Pit [Sun, 27 Feb 2011 00:01:11 +0000 (01:01  +0100)] 
 
This is 0.14 
 
Vincent Pit [Sat, 26 Feb 2011 23:28:51 +0000 (00:28  +0100)] 
 
Really include Test::Leaner 0.02 
 
Vincent Pit [Sat, 26 Feb 2011 23:03:30 +0000 (00:03  +0100)] 
 
Compatibility fix for perl 5.13.10 
 
This solves RT #64997. 
 
Vincent Pit [Sun, 6 Feb 2011 15:29:28 +0000 (16:29 +0100)] 
 
Run lengthy tests with Test::Leaner 
 
This includes Test::Leaner 0.02. 
 
Vincent Pit [Wed, 5 Jan 2011 20:07:47 +0000 (21:07 +0100)] 
 
Bump copyright year 
 
Vincent Pit [Wed, 5 Jan 2011 20:06:54 +0000 (21:06 +0100)] 
 
Preemptively remove uses of lvalue GvCV 
 
Vincent Pit [Mon, 20 Dec 2010 01:03:55 +0000 (02:03  +0100)] 
 
This is 0.13 
 
Vincent Pit [Mon, 20 Dec 2010 00:25:57 +0000 (01:25  +0100)] 
 
Skip threads tests unless perl version is 5.13.4 or greater
There was a long standing bug in the handling of GV <-> CV double linkage
that could (and explicitely did with a poisonous perl) cause segfaults at
thread destruction. It got fixed by Dave in commit 
803f274  which went in
5.13.3, but the fix was amended for 5.13.4 in commit 
09aad8f . Since it's
not really fair for the user to not be able to install the module because
of this, we skip the threads tests unless perl is at least 5.13.4.
 
Vincent Pit [Mon, 20 Dec 2010 00:20:44 +0000 (01:20  +0100)] 
 
Compatibility fix for perl 5.13.8 
 
This fixes RT #63378. 
 
Vincent Pit [Mon, 20 Dec 2010 00:19:16 +0000 (01:19  +0100)] 
 
Ignore MYMETA.yml 
 
Vincent Pit [Sun, 19 Dec 2010 23:54:15 +0000 (00:54  +0100)] 
 
Fix stack corruption when using unwind() under Devel::NYTProf 
 
This fixes RT #61904. 
 
Thanks Sergey Aleynikov for contributing the fix. 
 
Vincent Pit [Wed, 19 May 2010 00:42:30 +0000 (02:42  +0200)] 
 
This is 0.12 
 
Vincent Pit [Wed, 19 May 2010 00:32:21 +0000 (02:32  +0200)] 
 
Fix for the official 5.13.0 release 
 
Vincent Pit [Tue, 18 May 2010 21:53:58 +0000 (23:53 +0200)] 
 
Swap the ud and cxix arguments of su_init() 
 
Vincent Pit [Tue, 18 May 2010 21:50:18 +0000 (23:50 +0200)] 
 
Stop leaking SVs when trying to localize an element out of a non array/hash 
 
Achieve this by introducing a new SU_UD_LOCALIZE_FREE() macro. 
 
Vincent Pit [Tue, 18 May 2010 21:10:33 +0000 (23:10 +0200)] 
 
Use a PPCODE: section in CLONE 
 
Vincent Pit [Tue, 18 May 2010 20:57:35 +0000 (22:57 +0200)] 
 
Make su_ud_localize_init() return the required slot size 
 
This strips away all magical size value. 
 
Also, fix the save_gp() size on 5.13, since it now uses 4 slots. 
 
Vincent Pit [Tue, 18 May 2010 19:57:14 +0000 (21:57 +0200)] 
 
Save a mock pointer as the placeholder instead of an int 
 
Since 5.13, small ints are saved with only two save stack slots, so it's 
better to use something with a fixed size instead. 
 
Vincent Pit [Tue, 18 May 2010 19:48:12 +0000 (21:48 +0200)] 
 
Tie the array after localizing it in t/{34,44}-*-magic.t 
 
This fixes failures under perl 5.13 since Dave made "local @tied" untie 
the array. 
 
Vincent Pit [Tue, 18 May 2010 19:46:41 +0000 (21:46 +0200)] 
 
Skip two pairs of tests in t/20-localize-target.t with perl 5.8.0 
 
We can't actually localize through a reference before 5.8.1. 
 
Vincent Pit [Fri, 16 Apr 2010 23:16:42 +0000 (01:16  +0200)] 
 
This is 0.11 
 
Vincent Pit [Fri, 16 Apr 2010 22:13:59 +0000 (00:13  +0200)] 
 
Skip t/05-words.t when ran under the debugger 
 
With this change, the whole test suite passes under the debugger. Hurray! 
 
Vincent Pit [Fri, 16 Apr 2010 22:12:10 +0000 (00:12  +0200)] 
 
Silence a gcc warning 
 
Vincent Pit [Fri, 16 Apr 2010 21:40:49 +0000 (23:40 +0200)] 
 
Stop skipping frames as a pop optimization 
 
This caused breakage under the debugger (and most likely everywhere). 
 
Vincent Pit [Fri, 16 Apr 2010 21:12:39 +0000 (23:12 +0200)] 
 
A couple of SEE ALSO 
 
Vincent Pit [Fri, 16 Apr 2010 21:03:05 +0000 (23:03 +0200)] 
 
POD tags harmonization 
 
Vincent Pit [Fri, 16 Apr 2010 21:00:59 +0000 (23:00 +0200)] 
 
Disallow reference localization targets 
 
Vincent Pit [Fri, 16 Apr 2010 20:47:34 +0000 (22:47 +0200)] 
 
Be stricter about what localize_elem() accepts 
 
Vincent Pit [Fri, 16 Apr 2010 19:47:59 +0000 (21:47 +0200)] 
 
Fix numerous localizations in the same scope not happening 
 
Vincent Pit [Fri, 16 Apr 2010 14:31:07 +0000 (16:31 +0200)] 
 
Improved synopsys 
 
Vincent Pit [Fri, 16 Apr 2010 13:29:07 +0000 (15:29 +0200)] 
 
Correct two comments in a sample script 
 
Vincent Pit [Fri, 16 Apr 2010 13:26:34 +0000 (15:26 +0200)] 
 
Assorted documentation tweaks and clarifications 
 
Vincent Pit [Thu, 15 Apr 2010 23:00:27 +0000 (01:00  +0200)] 
 
Properly vivify nonexistent glob slots 
 
This fixes RT #55593. 
 
Vincent Pit [Thu, 15 Apr 2010 22:44:05 +0000 (00:44  +0200)] 
 
A better explaination of how string symbols work 
 
Vincent Pit [Thu, 15 Apr 2010 22:33:51 +0000 (00:33  +0200)] 
 
POD formatting nit 
 
Vincent Pit [Thu, 15 Apr 2010 21:44:02 +0000 (23:44 +0200)] 
 
Also apply the context overwrite workaround when not under OP_DIE 
 
This fixes RT #56301. 
 
Vincent Pit [Mon, 18 Jan 2010 23:47:29 +0000 (00:47  +0100)] 
 
This is 0.10 
 
Vincent Pit [Mon, 18 Jan 2010 23:42:56 +0000 (00:42  +0100)] 
 
Point to Continuation::Escape 
 
Vincent Pit [Mon, 18 Jan 2010 22:50:25 +0000 (23:50 +0100)] 
 
A somewhat more robust handling of debugging frames 
 
Vincent Pit [Mon, 18 Jan 2010 22:04:33 +0000 (23:04 +0100)] 
 
Forge a better testdeb rule 
 
Vincent Pit [Mon, 18 Jan 2010 21:51:22 +0000 (22:51 +0100)] 
 
Bump copyright year 
 
Vincent Pit [Mon, 18 Jan 2010 21:41:01 +0000 (22:41 +0100)] 
 
Silence a switch warning 
 
Vincent Pit [Mon, 18 Jan 2010 21:40:18 +0000 (22:40 +0100)] 
 
Use SvREFCNT_inc_simple_void() whenever possible 
 
Vincent Pit [Mon, 18 Jan 2010 21:21:39 +0000 (22:21 +0100)] 
 
Stop treating the ENTER/LEAVE couple from entersub specially 
 
Vincent Pit [Mon, 18 Jan 2010 20:55:22 +0000 (21:55 +0100)] 
 
Discover the type of localization immediately when localize() is called 
 
So that we can reserve the appropriate size on the save stack when a glob is localized with perl 5.8.8 or earlier. 
 
Vincent Pit [Mon, 18 Jan 2010 19:49:36 +0000 (20:49 +0100)] 
 
More debugging info tweaks 
 
Vincent Pit [Fri, 15 Jan 2010 00:31:46 +0000 (01:31  +0100)] 
 
Revamp debugging info 
 
Vincent Pit [Thu, 14 Jan 2010 22:39:34 +0000 (23:39 +0100)] 
 
Fix building with SU_DEBUG defined on 5.8 
 
Vincent Pit [Thu, 14 Jan 2010 22:27:28 +0000 (23:27 +0100)] 
 
Correct some test descriptions 
 
Vincent Pit [Thu, 14 Jan 2010 22:25:58 +0000 (23:25 +0100)] 
 
More tests for reap and localized at given/when 
 
Vincent Pit [Thu, 14 Jan 2010 21:36:54 +0000 (22:36 +0100)] 
 
We don't really need a more lexical $_ in the test given blocks 
 
Vincent Pit [Thu, 14 Jan 2010 20:48:55 +0000 (21:48 +0100)] 
 
Fix handling of given/when 
 
Vincent Pit [Tue, 29 Dec 2009 16:35:38 +0000 (17:35 +0100)] 
 
Fix for {ENTER,LEAVE}_with_name 
 
Vincent Pit [Sun, 4 Oct 2009 09:18:03 +0000 (11:18 +0200)] 
 
Re-indent WriteMakefile() arguments 
 
Vincent Pit [Sun, 4 Oct 2009 08:33:23 +0000 (10:33 +0200)] 
 
Build the $name and the main $file from $dist 
 
Vincent Pit [Sun, 4 Oct 2009 07:45:58 +0000 (09:45 +0200)] 
 
Put prerequisites in their own separate hash 
 
Vincent Pit [Sun, 4 Oct 2009 07:28:22 +0000 (09:28 +0200)] 
 
Give an explicit value to dynamic_config 
 
Vincent Pit [Sat, 26 Sep 2009 09:53:10 +0000 (11:53 +0200)] 
 
Kwalitee test overhaul 
 
Vincent Pit [Sun, 16 Aug 2009 22:28:09 +0000 (00:28  +0200)] 
 
base.pm is also a dependency 
 
Vincent Pit [Sat, 8 Aug 2009 07:40:28 +0000 (09:40 +0200)] 
 
Righteously is really rightfully 
 
Vincent Pit [Sun, 17 May 2009 20:20:16 +0000 (22:20 +0200)] 
 
This is 0.09 
 
Vincent Pit [Sun, 17 May 2009 20:11:17 +0000 (22:11 +0200)] 
 
Update the comment about the "call_sv() during LEAVE" workaround 
 
Vincent Pit [Sun, 17 May 2009 19:57:48 +0000 (21:57 +0200)] 
 
Get rid of t/90-boilerplate.t 
 
Vincent Pit [Sun, 17 May 2009 19:57:09 +0000 (21:57 +0200)] 
 
A better test for imports 
 
Vincent Pit [Fri, 15 May 2009 22:22:26 +0000 (00:22  +0200)] 
 
5.9.5 fix 
 
Vincent Pit [Sat, 2 May 2009 15:01:50 +0000 (17:01 +0200)] 
 
Explicitely require perl 5.6 
 
Vincent Pit [Sat, 2 May 2009 15:00:30 +0000 (17:00 +0200)] 
 
Disable thread safety for 5.8.x on Windows 
 
Vincent Pit [Sat, 2 May 2009 14:55:16 +0000 (16:55 +0200)] 
 
Skip t/59-unwind-threads.t when the module is not thread safe 
 
Vincent Pit [Sat, 2 May 2009 14:49:17 +0000 (16:49 +0200)] 
 
Introduce SU_THREADSAFE 
 
Vincent Pit [Sat, 2 May 2009 14:42:38 +0000 (16:42 +0200)] 
 
A saner workaround for the "call_sv() during LEAVE clobbers the still used last popped stack element" issue on 5.10 
 
Vincent Pit [Wed, 22 Apr 2009 20:51:43 +0000 (22:51 +0200)] 
 
Slashes are reserved and hence must be encoded in the search part of an URL 
 
Vincent Pit [Thu, 16 Apr 2009 22:48:31 +0000 (00:48  +0200)] 
 
This is 0.08 
 
Vincent Pit [Thu, 16 Apr 2009 22:43:53 +0000 (00:43  +0200)] 
 
Point the repository to the gitweb instead of the bare repo 
 
Vincent Pit [Thu, 26 Mar 2009 00:46:11 +0000 (01:46  +0100)] 
 
Test unwind in threads 
 
Vincent Pit [Wed, 25 Mar 2009 23:46:45 +0000 (00:46  +0100)] 
 
Document that reap destructors are called in void context