in reply to Re^4: Dynamic Package Name & Subroutine Call
in thread Dynamic Package Name & Subroutine Call

That makes no sense. This isn't a change; can has never done the right thing for non-methods.

Replies are listed 'Best First'.
Re^6: Dynamic Package Name & Subroutine Call
by Anonymous Monk on Dec 17, 2012 at 13:10 UTC

    sure it has :)

    $ perl -le " sub fudge { 42 } print main->can(q/fudge/)->() " 42
      That has always searched main's inheritance tree in the case where &main::fudge didn't exist, and that's not the right thing for subs.

        That has always searched main's inheritance tree in the case where &main::fudge didn't exist, and that's not the right thing for subs.

        Sure, but setting up an inheritance tree for main is the bug :)