in reply to getpwnam(@_) ???

getpwnam imposes scalar context on its argument.

$ perl -le 'print prototype q{CORE::getpwnam}' $

That means that @_ is treated as the number of elements g1 was called with and I doubt you have a user named "1" on your system.

The cake is a lie.
The cake is a lie.
The cake is a lie.