_由 mfikes_ 提交的评论
我知道 David 建议可能是正确做法对此进行硬错误处理,但一个后果是,使用这个更改将无法在引导过程中定义 {{cljs.spec/def}} 宏。(我还没有彻底调查,但这可能是由于在引导过程中将宏处理为 ClojureScript 的结果,因此受到这个新保障的影响。)
无论根本原因如何,如果你尝试运行 {{script/test-self-parity}},你就会看到这种情况。
#error {:message "无法评估 cljs.spec", :data {:tag :cljs/analysis-error}, :cause #error {:message "不能在行 51 定义特殊形式 ", :data {:file nil, :line 51, :column 1, :tag :cljs/analysis-error}}}
参考:第 51 行当前指向的 {{def}} 宏:[链接](https://github.com/clojure/clojurescript/blob/e2db5d9ff8cb6a099ebc2a8cd379385bf4649b38/src/main/cljs/cljs/spec.cljc#L51)