haukex was awake :) anything to add?
#!/usr/bin/perl --
use strict;
use warnings;
use diagnostics;
sub GOOD {
LINE: while(<STDIN>){
next LINE;
last LINE;
}
}
sub GOOOD {
goto &GOOD;
}
sub GOOOOD {
my $GOOD = 'GOOD';
goto &$GOOD;
}
sub REALLY {
goto &GOOD;
}
sub GOODREALLY {
goto sub { goto &REALLY; };
}
sub GOODREHEALLY {
my $GOO = sub { goto &REALLY; };
goto $GOO;
}
sub GOODREHEHEALLY {
goto do { sub { goto &REALLY; }; };
}
sub BAD {
goto LINE;
}
sub BAAD {
my $LINE = 'LINE';
goto $LINE;
}
sub BAAAD {
goto ("LINE", "LINE", "LINE")[@_];
}
BAAAAD: {
goto &REALLy; # Can't goto subroutine outside a subroutine
}
goto END; ## bad
:END
exit( 0 );
|