请在2024 年 Clojure 调查状态!中分享您的想法。

欢迎!请参阅关于页面以了解更多关于如何使用本站的信息。

0
Clojure

编译器接受这个

(deftype foo (link: )
clojure.lang.IFn
(invoke (link: this & xs)))

但是调用 ((foo.) :bar) 会抛出 AbstractMethodError。不是应该检查一下吗?

5 答案

0

评论者:exi

这是一个对http://dev.clojure.org/jira/browse/CLJ-1024的复制,因为原始问题及其附加补丁在“必须等待,无法在1.5版本中应用”的理由下被遗忘了,这是2个大版本之前的事情,现在1.7版本正在进行中。

我想重新打开它,或者在这个票据上继续工作,因为我第二次遇到了这个问题,而且随后进行调试会令人烦恼。

0

评论者:jafingerhut

修复版本为 Release 1.5,但该字段应由 Clojure 过滤器设置。

0

评论者:exi

是的,我刚刚复制了原始问题。后来我意识到我无法编辑任何字段。
问题仅涉及到在编译带有 "&" 的参数列表的协议时,缺少警告/错误。因为 "&" 被解释为变量名 "&",而不是用户可能期望的 varargs 占位符。

0
by

评论者:michaelblume

这里是 1024 补丁的向前迁移版本

0
...