$ perl -MO=Deparse -e " sub foo (&) {}; foo sub{;;} || 7 " Type of arg 1 to main::foo must be block or sub {} (not null operation) at -e line 1, at EOF -e had compilation errors. sub foo (&) { } &foo(sub { } || 7); $ perl -MO=Deparse -e " sub foo (&) {}; foo sub{;;} // 7 " Type of arg 1 to main::foo must be block or sub {} (not null operation) at -e line 1, at EOF -e had compilation errors. sub foo (&) { } &foo(sub { } // 7);