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

欢迎!请参阅 关于 页面了解更多信息。

+4
ClojureScript

大家好,

我准备了一个补丁来修复不能使用超过 20 个参数调用 IFn 的问题。
years ago

这很可能修复了元函数、多方法、规范函数以及所有 IFn 实现。

这是我发现的相关票据

"mulitmethod apply with >20 args fails"
https://clojure.atlassian.net/browse/CLJS-3024

"with-meta doesn't work for variable arguments functions"
https://clojure.atlassian.net/browse/CLJS-2446

"High-arity .apply on spec-instrumented function throws "Invalid arity" error"
https://clojure.atlassian.net/browse/CLJS-2710

也许这也修复了/完成了这个 2012 年的问题

"compiler needs to put all args of an invocation after 20 into an array-seq"
https://clojure.atlassian.net/browse/CLJS-364

这是补丁在这里;一个单独的小提交

https://github.com/active-group/clojurescript/commit/122e1ab4be7230841e15b392223d4b33560cfa5b

它还移除了多余的 'aclone' 调用(concat 已经执行浅克隆)。

我用 Nashorn 运行测试,之前被注释掉的测试现在成功。

我在 2016 年签署了贡献者协议,但现在在 JIRA 上注册后,它说我没有 'clojure.atlassian.net 上 Jira 的访问权限',这就是为什么我在这里开始提问。

希望这能够通过,因为我基本在等这个问题被修复几年了。

David.

2 答案

0

我根据您旧 CA 发送给您 jira 的邀请。如果您没有收到该邀请或您的电子邮件已更改,请通过 [email protected] 联系我。

谢谢!
我在那里也加上注释行吗,或许还加上对这个页面的链接?
这足够了吗?
一旦你进入了jira,最好是直接在那里进行开发工作,你不需要在这里更新。
0

你好,感谢你对此进行调查。提出的补丁仅解决了顶层fn的问题 - 正确的修复还需要对编译器fn代码生成进行更改,以涵盖匿名函数的情况。

...