A slight mistake in the evalbytes.t test script caused a lot of tests
not be testing what they were supposed to be testing for. I used
'qq(\x...)' instead of qq('\x...'). (I.e., I was trying to embed lit-
eral Unicode characters in the string, rather than pass escapes to
evalbytes.)
I had wondered at the time why it worked without my doing anything, so
I probably should have looked deeper.
op_getmad(oldo,o,'O');
}
o->op_targ = (PADOFFSET)PL_hints;
+ if (o->op_private & OPpEVAL_BYTES) o->op_targ &= ~HINT_UTF8;
if ((PL_hints & HINT_LOCALIZE_HH) != 0
&& !(o->op_private & OPpEVAL_COPHH) && GvHV(PL_hintgv)) {
/* Store a copy of %^H that pp_entereval can pick up. */
is evalbytes("1+7"), 8, 'evalbytes basic sanity check';
-my $code = 'qq(\xff\xfe)';
+my $code = qq('\xff\xfe');
is evalbytes($code), "\xff\xfe", 'evalbytes on extra-ASCII bytes';
chop((my $upcode = $code) .= chr 256);
is evalbytes($upcode), "\xff\xfe", 'evalbytes on upgraded extra-ASCII';