in reply to Re^5: restore overridden XS methods
in thread restore overridden XS methods

Something has been changed, new magic in the localization of typeglobs. Because, even though I though get this pleasant result in 5.8.3, it's not at all what I get in 5.6.1:
$\ = "\n"; *t = sub{ print 42 }; *t = \'fred'; *t = [ 1,2,3]; print $]; { local *t = sub { print 'changed' }; print join "\n", t(), $t, "@t"; };
results for 5.6.1 in
Possible unintended interpolation of @t in string at test.pl line 7. Use of uninitialized value in join or string at test.pl line 7. 5.006001 changed 1
Thus: only the sub is set.

Compare that to the result for 5.8.3:

Possible unintended interpolation of @t in string at test.pl line 7. Subroutine main::t redefined at test.pl line 6. 5.008003 changed 1 fred 1 2 3