]>
git.vpit.fr Git - perl/modules/autovivification.git/log
summary |
shortlog | log |
commit |
commitdiff |
tree
first ⋅ prev ⋅ next
Vincent Pit [Wed, 24 Jun 2009 16:50:42 +0000 (18:50 +0200)]
Handle array and hash slices
Vincent Pit [Wed, 24 Jun 2009 15:20:14 +0000 (17:20 +0200)]
Factor the rv2xv recheck logic
Vincent Pit [Tue, 23 Jun 2009 22:20:28 +0000 (00:20 +0200)]
This is 0.03
Vincent Pit [Tue, 23 Jun 2009 20:42:37 +0000 (22:42 +0200)]
Eliminate a quadratic behaviour at compile time
Vincent Pit [Fri, 19 Jun 2009 23:07:40 +0000 (01:07 +0200)]
Cover a_ck_padsv()
Vincent Pit [Fri, 19 Jun 2009 22:09:02 +0000 (00:09 +0200)]
Also handle old-style dereferencing "$$hashref{key}"
Vincent Pit [Fri, 19 Jun 2009 15:59:20 +0000 (17:59 +0200)]
Only generate the non-ref test once
Vincent Pit [Thu, 18 Jun 2009 23:28:27 +0000 (01:28 +0200)]
The hint in a_hint() need not to be const
Vincent Pit [Thu, 18 Jun 2009 23:27:58 +0000 (01:27 +0200)]
Store UVs more portably into the hint
Vincent Pit [Thu, 18 Jun 2009 22:47:45 +0000 (00:47 +0200)]
Also test arrays without aelemfast optimization
Vincent Pit [Thu, 18 Jun 2009 22:26:23 +0000 (00:26 +0200)]
Rename tests
Vincent Pit [Thu, 18 Jun 2009 17:54:35 +0000 (19:54 +0200)]
Classify aliasing constructs in the "store" category
There's no way to guess at compile time if the scalar will be modified, such as in "eval '$_ = 1' for $x->{key}". Practically, there's no way to distinguish the xelem op from the one you get for "$x->{key} = $val". I was going against the interpreter's will and this is my defeat.
This commit partially reverts
ddbfd527f4c54458985145aae3a837a8f5868551 .
Vincent Pit [Thu, 18 Jun 2009 15:41:20 +0000 (17:41 +0200)]
Reset the original pp whenever possible in pp_rv2xv
Vincent Pit [Thu, 18 Jun 2009 14:54:24 +0000 (16:54 +0200)]
rv2xv introducing a gv don't need to be overridden
Vincent Pit [Wed, 17 Jun 2009 22:12:56 +0000 (00:12 +0200)]
Better test descriptions
Vincent Pit [Wed, 17 Jun 2009 22:04:34 +0000 (00:04 +0200)]
Really test non-ref arrays and hashes
Vincent Pit [Wed, 17 Jun 2009 18:04:37 +0000 (20:04 +0200)]
This is 0.02
Vincent Pit [Wed, 17 Jun 2009 14:22:48 +0000 (16:22 +0200)]
Test "use autovivification"
Vincent Pit [Wed, 17 Jun 2009 14:15:11 +0000 (16:15 +0200)]
A crude warning test
Vincent Pit [Wed, 17 Jun 2009 14:12:56 +0000 (16:12 +0200)]
Test keys/values on true references
Vincent Pit [Wed, 17 Jun 2009 13:47:53 +0000 (15:47 +0200)]
If we fetch from the pointer table, the entry must exist (or segfault in a more explicit way)
Vincent Pit [Wed, 17 Jun 2009 13:34:15 +0000 (15:34 +0200)]
Run t/23-hash-specific.t under taint mode
Vincent Pit [Wed, 17 Jun 2009 13:19:53 +0000 (15:19 +0200)]
Update ck_root() comment
Vincent Pit [Wed, 17 Jun 2009 13:06:24 +0000 (15:06 +0200)]
Don't autovivify in keys/values
Vincent Pit [Wed, 17 Jun 2009 10:24:41 +0000 (12:24 +0200)]
Plain dereferencing shouldn't have a different behaviour
Vincent Pit [Tue, 16 Jun 2009 10:17:27 +0000 (12:17 +0200)]
Delete exists/delete ops from the map when the pragma isn't in use
Vincent Pit [Mon, 15 Jun 2009 21:59:02 +0000 (23:59 +0200)]
Fix segfaults for "keys %$x"
Vincent Pit [Mon, 15 Jun 2009 21:22:43 +0000 (23:22 +0200)]
Factor the common part of t/20-hash.t and t/21-array.t into a new t/lib/autovivification/TestCases.pm
Vincent Pit [Mon, 15 Jun 2009 14:44:20 +0000 (16:44 +0200)]
Regenerate t/21-array.t without extraneous spaces at the end of each line
Vincent Pit [Mon, 15 Jun 2009 14:41:17 +0000 (16:41 +0200)]
Don't vivify when aliasing
Vincent Pit [Mon, 15 Jun 2009 13:44:06 +0000 (15:44 +0200)]
Help the compiler optimize the PL_op->op_private hack
Vincent Pit [Mon, 15 Jun 2009 13:41:13 +0000 (15:41 +0200)]
Delete obsolete entries whenever possible
Vincent Pit [Sun, 14 Jun 2009 20:08:03 +0000 (22:08 +0200)]
This is 0.01
Vincent Pit [Sun, 14 Jun 2009 20:04:07 +0000 (22:04 +0200)]
Initial import