当我注意到语法检查导致警告无用使用常量 (1)时,我正在编写一个模块作为我的应用程序的一部分。这是为什么?
1
常量是模块末尾的强制项,通常会被警告忽略,如下perldoc perldiag
所示:
对于等于 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
除了将长十六进制数字放入 sqlite之外,我找不到任何参考bigint
和警告消息,但这并不能真正解决我的问题,我认为。
我的 Perl 是 Cygwin 上的 v5.14.4,带有 bigint 0.36。