clojure.reflect protocol meta regression
Two users have reported regressions from the protocol meta added to clojure.reflect returns in Clojure 1.10.
The shortest repro is something like this:
The actual cases where this is happening are uses of clojure.reflect in values returned by macro (see https://groups.google.com/forum/#!msg/clojure/pxLN9tYti4c/zbhLCOrTBgAJ for one example).
Cause: Class symbols returned from clojure.reflect are now adorned with meta like:
which has an embedded datafy function. The compiler emits this into the compiled class pool (MetaExpr wrapping the object).
Workaround: A workaround is to strip the meta from the symbols inside the macro and return the stripped symbol.