perl

Global symbol requires explicit package name


Global symbol requires explicit package name? Why has this occurred and what are various cases that can cause this error?


Solution

  • Have a look at perldiag:

    Global symbol "%s" requires explicit package name

    (F) You've said "use strict" or "use strict vars", which indicates that all variables must either be lexically scoped (using "my" or "state"), declared beforehand using "our", or explicitly qualified to say which package the global variable is in (using "::").