my @arr = ...; sub mySub { goto &{ sub { # added line foreach ( @arr ) { if ( /^PIDTAB/ ... /^\n/ ) { next if ( /^(PIDTAB|\n)/ ); while ( /\s+(\d+):\s+(\d+)\s*:\S+:\S+:D\s+/g ) { # do something } } } }} # added line } #### goto &{ sub { #### my $dummy; goto &{ sub { $dummy if 0;