If you use reify inside of defn an anonymous Var will be introduced which is tagged as being of function type, when in fact it has a value of nil instead of a function value.
This repro illustrates that the compiler thinks the Var holds a function (by passing it to a numeric function simply to get the compiler to indicate the type in the diagnostic):
Also see CLJS-3159.
This can be important if the compiler makes optimizations based on this incorrect type information. See, for example, the issue surrounding ns-publics in CLJS-2875.