It looks like a problem in clojure.core/min-hash to me. case depends on min-hash to generate ahead-of-time hashes of all the test clauses, and while I can't easily follow what's going on, it seems to be trying to find a shift/mask combination that is...somehow related to the hashes of the test clauses. I speculate that it's easier to perform this operation on N values than N+1; with (0,0x70000000) it's hard, but with another 1 it becomes unmanageable with the simple algorithm.
On Jan 6, 10:49 pm, "Eric Schulte" <schulte.e...@gmail.com> wrote: > Hi, > > The following case statement > > #+begin_src clojure > (defn buggy-case [n] > (case (int n) > 0 :null > 1 :load > 0x70000000 :loproc)) > #+end_src > > throws the following error > > No distinct mapping found > [Thrown class java.lang.IllegalArgumentException] > > However removing any of the cases alleviates the problem. Am I missing > something obvious, or is this a bug in the case statement? > > Thanks -- Eric -- 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