in reply to Re^8: Use of inherited AUTOLOAD for non-method is no longer allowed with Perl 5.34.
in thread Use of inherited AUTOLOAD for non-method is no longer allowed with Perl 5.34.

I'm guessing your file "MRlib.pl" has a mapping from package name to file to require.
Use that package name list to generate and eval a set of *${packagename}::AUTOLOAD = \&FP::AUTOLOAD; statements.
That may have to be in a BEGIN block.

UPDATE: fixed ')' to '}'

  • Comment on Re^9: Use of inherited AUTOLOAD for non-method is no longer allowed with Perl 5.34.
  • Download Code

Replies are listed 'Best First'.
Re^10: Use of inherited AUTOLOAD for non-method is no longer allowed with Perl 5.34.
by LanX (Saint) on Sep 29, 2021 at 18:18 UTC
    > and eval a set of

    no eval needed with no strict 'refs';

    use strict; use warnings; package FP; sub AUTOLOAD { our $AUTOLOAD; print "hello $AUTOLOAD\n" } my @pkgs =qw/BLA BLUB MyHomepage::Introduction/; for my $PKG (@pkgs) { no strict 'refs'; *{ "${PKG}::AUTOLOAD" } = \&FP::AUTOLOAD } BLA::bla(); MyHomepage::Introduction::intro();

    hello BLA::bla hello MyHomepage::Introduction::intro

    But I already suggested Importing in my first reply ...

    update
    BTW: typo
    *${packagename)::AUTOLOAD = \&FP::AUTOLOAD; ^

    Cheers Rolf
    (addicted to the Perl Programming Language :)
    Wikisyntax for the Monastery