When reading syntax quote on keyword,string or number etc,it returns the form as result directly. Read it in:
https://github.com/clojure/clojure/blob/master/src/jvm/clojure/lang/LispReader.java#L844-847
`
else if(form instanceof Keyword
|| form instanceof Number
|| form instanceof Character
|| form instanceof String)
ret = form;
`
But missing check if it is a nil,regular pattern or boolean constants.
After patched:
`
else if(form == null
|| form instanceof Keyword
|| form instanceof Number
|| form instanceof Character
|| form instanceof Pattern
|| form instanceof Boolean
|| form instanceof String)
ret = form;
`
It's a little patch, i am not sure if it is worth a try.