sub func1 { my $x; print(\$x, "\n"); return \$x } sub func2 { my $x; print(\$x, "\n"); return } push @a, func1() for 1..5; print("\n"); func1() for 1..5; print("\n"); func2() for 1..5; print("\n");