使用`ReferenceWritableKeyPath`进行Swift编译器分段错误

时间:2017-07-05 05:29:07

标签: swift observable swift4

使用=IF(COUNTIFS($A$2:$A$5,A2,$C$2:$C$5,"Basic")>0,TRUE,FALSE) 读取属性会导致编译器分段错误。

我正在设置一个帮助器来简化两个变量的绑定。使用help from OOPer我可以使用基本绑定,但如果修改代码如下所示,在进行绑定之前检查值是不同的,则会出现分段错误。

=IF(SUMPRODUCT(($A$2:$A$5=A2)*($C$2:$C$5="Basic")),TRUE,FALSE)

1 个答案:

答案 0 :(得分:1)

问题是您尝试将!=与通用类型Value一起使用,该类型不一定具有==!=实现。用<Value>替换<Value: Equatable>解决了这个问题。

话虽如此,无论您的代码是否正确,编译器崩溃的分段错误始终是一个错误。如果你有时间,你应该考虑在https://bugs.swift.org提交错误报告。