use strict; use warnings; sub test2 { my $var = 2; my $i; given ($var){ when(1) { $i = "One"; } when(2) { $i = "Two"; } when(3) { $i = "Three"; } default { $i = "Other"; } } print "$var is $i"; } test2(); #### syntax error at D:/Eclipse_std_kepler_ws/StudyBuildReport/TestGiven.pl line 9, near ") {" Global symbol "$i" requires explicit package name at D:/Eclipse_std_kepler_ws/StudyBuildReport/TestGiven.pl line 9. Global symbol "$i" requires explicit package name at D:/Eclipse_std_kepler_ws/StudyBuildReport/TestGiven.pl line 10. Global symbol "$i" requires explicit package name at D:/Eclipse_std_kepler_ws/StudyBuildReport/TestGiven.pl line 11. #### use strict; use warnings; sub test1 { my $var1 = 2; my $b; if ($var1 == 1) { $b = "One"; } elsif ($var1 == 2) { $b = "Two"; } elsif ($var1 == 3) { $b = "Three"; } print "$var1 is $b"; } test1();