如果一个函数有两个参数,其中一个调用了另一个,那么如果该函数被标记为^:deprecated
,则在函数存在期间将总是发出编译警告关于弃用。例如:
`
(defn ^:deprecated test-deprecated
([]
(test-deprecated nil))
([a]
nil))
`
将生成以下日志
WARNING: my.test/test-deprecated 已弃用。在 line 3 src/my/test/error.cljs
我认为只有对弃用函数的外部引用应该在这里警告。否则,不可能弃用一个多参数函数,还能进行干净的编译。