Я писал модуль как часть своего приложения, когда заметил, что в результате проверки синтаксиса появляется предупреждение о бесполезном использовании константы (1). Это почему?
Константа - это обязательный 1
в конце модуля, который обычно игнорируется предупреждениями как _ 2_ говорит:
Это предупреждение не будет выдано для числовых констант, равных 0 или 1, поскольку они часто используются в таких операторах, как
1 while sub_with_side_effects();
(Вероятно, для этого есть даже лучший источник. В конце концов, 1
в конце файлов совершенно желательно и не о чем предупреждать.)
Но предупреждение выдается даже для почти пустых модулей, если они use bigint
.
package Foo;
use bigint;
1;
Для этой простой проверки синтаксиса файла выдается следующее предупреждение:
$> perl -Wc Foo.pm
Useless use of a constant (1) in void context at Foo.pm line 5.
Foo.pm syntax OK
Мне не удалось найти никакой ссылки на bigint
и предупреждающее сообщение, кроме Поместите длинные шестнадцатеричные числа в sqlite но я думаю, это не решает мою проблему.
Мой Perl - v5.14.4 на Cygwin с bigint 0.36.