$\ = "\n"; *t = sub{ print 42 }; *t = \'fred'; *t = [ 1,2,3]; print $]; { local *t = sub { print 'changed' }; print join "\n", t(), $t, "@t"; }; #### 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 #### 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