use strict; sub foo { goto &bar if ( $_[0] < 0 ); return "$_[0] from foo\n"; } sub bar { return "$_[0] from bar\n"; } print foo(-1);