| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
Since typeglobs may have the UTF8 flag set now, we need to avoid
testing SvCUR on a potential glob, as that would trip an assertion.
|
|
|
|
|
|
| |
$[ remains as a variable. It no longer has compile-time magic.
At runtime, it always reads as zero, accepts a write of zero, but dies
on writing any other value.
|
|
|
|
| |
sub_lval.t is for lvalue subs, not built-ins.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
pp_substr contains this comment, which was added in perl 5.0 alpha 2
(commit 79072805bf63):
PUSHs(TARG); /* avoid SvSETMAGIC here */
Calling set-magic when substr returns an lvalue will cause its argu-
ment to be stringified even if the lvalue is not assigned to. That’s
why set-magic has to be avoided.
But the result is that utf8 caches (stored in magic) on TARG are not
reset properly.
Since substr lvalues now follow a different code path (and do not use
TARG at all), it’s perfectly safe to call set-magic at this point.
It’s also the right thing to do in case of other types of magic that
might get attached to TARG.
|
|
|
|
| |
TEMP instead of using TARG. Made appropriate TODO tests live.
|
| |
|
|
|
|
| |
available for the pos and len arguments, with safe conversion to STRLEN where it's smaller than an IV.
|
|
|
|
|
|
|
|
| |
This reverts commit b6d1426f94a845fb8fece8b6ad0b7d9f35f2d62e.
Conflicts:
pp.c
|
|
|
|
| |
(This is only a partial fix, since it doesn't handle lvalue substr)
|
|
|