Using clojure 1.6.0 and clojure.algo.monads, I got a compiler error that I 
could reduce to this case:

(fn [c] (domonad sequence-m [_ (case c (\0 \1 \2 \3 \4 \5 \6 \7 \8) c)] c))

CompilerException java.lang.NegativeArraySizeException, 
compiling:(/tmp/form-init1574284988203454652.clj:1:1) 

Macro-expanding it, I could further reduce it to:

(fn [c] (clojure.tools.macro/with-symbol-macros (case c (\0 \1 \2 \3 \4 \5 
\6 \7 \8) c) c))

Note that if I remove one case, the error disappears; 9 cases seems to be 
the magic number. Also, I don't know what 
clojure.tools.macro/with-symbol-macros does, but without it the code 
compiles fine.

Even if I remove this particular bit from the case statement in my parser 
and replace it by a last-case test, the code compiles but my larger case 
fails, in a way that condp = doesn't.

Can anyone fix the case macro?

—♯ƒ • François-René ÐVB Rideau •Reflection&Cybernethics• 
http://fare.tunes.org
Luck occurs when preparedness meets opportunity.

-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to clojure+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to