use strict; use warnings; use Data::Dumper; sub s1 { print "Second: ",Dumper(@SomePackage::_data),"\n"; } sub s0 { local @SomePackage::_data=(45,'D'); print "First: ",Dumper(@SomePackage::_data),"\n"; goto &s1; } s0 #### First: $VAR1 = 45; $VAR2 = 'D'; Second: