空集合的元数据丢失
user=> (meta '^:foo [])
nil ;; expected {:foo true} as in
user=> (meta '^:foo [1])
{:foo true}
该错误会传播到^:const 变量
user=> (def ^:const foo ^:foo [])
#'user/foo
user=> (meta foo)
nil
user=> (meta @#'foo)
{:foo true}
*原因*:与 CLJ-1093 类似,空集合被替换为失去元数据的 EmptyExpr
*建议*:如果存在元数据,则不要替换为 EmptyExpr。
*补丁*:0001-Support-retrieval-of-metadata-from-quoted-empty-lite.patch
*已筛选*: