Функция Perl system
разрешает косвенный объект.В этом случае косвенным объектом является запускаемая программа, позволяющая argv[0]
отличаться от имени исполняемого файла.
Так что я могу сделать
system {"echo"} qw(echo foo);
Однако, когда яиспользуйте autodie
:
use autodie qw(:all);
system {"echo"} qw(echo foo);
Я получаю
syntax error at - line 2, near "} qw(echo foo)"
Почему это происходит?