我原本预计以下两个Java互操作调用都会避免反射,但只有第一个涉及f1的那个会。
`
Clojure 1.6.0
user=> (set! warn-on-reflection true)
true
user=> (defn f1 ^java.util.LinkedList [coll] (java.util.LinkedList. coll))
'user/f1
user=> (def f2 (fn ^java.util.LinkedList [coll] (java.util.LinkedList. coll)))
'user/f2
user=> (.size (f1 [2 3 4]))
3
user=> (.size (f2 [2 3 4]))
反射警告,NO_SOURCE_PATH:5:1 - 无法解析size字段的引用。
3
`
不清楚这与CLJ-1232有什么关系,但它是在测试该问题的变体时发现的。