perl6 – 在汇集上下文中的表达式“-1”中无用的使用“ – ”(第13行)

前端之家收集整理的这篇文章主要介绍了perl6 – 在汇集上下文中的表达式“-1”中无用的使用“ – ”(第13行)前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在尝试为使用此代码抛出异常的函数进行测试:

use v6;
use Test;

plan *;

use lib "lib";
use Math::ConvergenceMethods;

sub f ($x) {return $x + 1;}


{
    is-approx: bisection(&f,-2,0),-1;
    dies-ok: { bisection(&f,3,2) },"Incorrect arguments";
}

done-testing;

当我运行它时它会返回此警告:

WARNINGS for /home/antonio/Code/perl6/Math-ConvergenceMethods/t/bisection.t:
Useless use of "-" in expression "-1" in sink context (line 13)
Useless use of constant string "Incorrect arguments" in sink context (lines 14,14)

我该如何解决

解决方法

foo在表格的声明中:

foo: ...

是一个label,其中…是它标注的声明.

所以你写的声明与以下内容相同:

bisection(&f,-1;

sink context中留下-1,因此出现错误消息.

(该消息有点LTA,因为您的错误显然是您认为标签语法是调用语法的函数,而错误消息确实指示错误 – 在接收器上下文中 – 无用的使用“ – ”是另外的细节没有帮助,可能会增加你的困惑.)

另见What’s the difference these two function calling conventions?.

猜你在找的Perl相关文章