如果perl -cw发出警告,则设置退出状态
发布时间:2020-12-15 21:51:35 所属栏目:大数据 来源:网络整理
导读:如果发出编译警告,我希望perl -cw …返回非零退出状态. 例如.假设a.pm是文件: use warnings;asd; 然后perl -cw a.pm报告: Unquoted string "asd" may clash ...Useless use of a constant in void context ...a.pm syntax OK 并且退出状态设置为0.我希望能
如果发出编译警告,我希望perl -cw …返回非零退出状态.
例如.假设a.pm是文件: use warnings; asd; 然后perl -cw a.pm报告: Unquoted string "asd" may clash ... Useless use of a constant in void context ... a.pm syntax OK 并且退出状态设置为0.我希望能够检测到发出了编译警告 – 最好是设置退出状态. 解决方法
在BEGIN块中设置警告处理程序(靠近脚本顶部,因此在可能触发编译时警告的代码之前解析此块),并在ENDCHECK块中调整退出状态.
use strict; use warnings; my $warnings; BEGIN { $SIG{__WARN__} = sub { $warnings++; CORE::warn @_ } } $used::only::once = 42; CHECK { if ($^C && $warnings > 0) { exit $warnings; } } 当且仅当您使用-c选项调用perl时, (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |