"Too many positionals passed" 在 NativeCall 子绑定中
"Too many positionals passed" in NativeCall sub binding
我有这个定义:
use NativeCall;
unit module kazmath;
class mat4 is repr('CStruct') {
HAS num32 @.mat[16] is CArray;
}
sub kmMat4Fill( mat4 $mat, num32 @filler ) returns mat4 is native('kazmath')
is export {*}
要绑定的函数是defined here:
kmMat4* kmMat4Fill(kmMat4* pOut, const kmScalar* pMat);
返回的错误是:
Too many positionals passed; expected 2 arguments but got 3
我真的想不通。
这是通过
修复的
sub kmMat4Fill( mat4 $mat, CArray[num32] $filler )
returns mat4 is native('kazmath') is export {*}
在 NativeCall 中无法使用位置,但错误消息仍然是 LTA(Less Than Awesome)。
我有这个定义:
use NativeCall;
unit module kazmath;
class mat4 is repr('CStruct') {
HAS num32 @.mat[16] is CArray;
}
sub kmMat4Fill( mat4 $mat, num32 @filler ) returns mat4 is native('kazmath')
is export {*}
要绑定的函数是defined here:
kmMat4* kmMat4Fill(kmMat4* pOut, const kmScalar* pMat);
返回的错误是:
Too many positionals passed; expected 2 arguments but got 3
我真的想不通。
这是通过
修复的sub kmMat4Fill( mat4 $mat, CArray[num32] $filler )
returns mat4 is native('kazmath') is export {*}
在 NativeCall 中无法使用位置,但错误消息仍然是 LTA(Less Than Awesome)。