Using clojure 1287, compiling clojure.contrib.repl-ln gives an error:
user=> (compile 'clojure.contrib.repl-ln)
java.lang.ClassCastException: [Ljava.lang.Object; cannot be cast to
[Ljava.lang.String; (repl_ln.clj:15)
user=> (st)
[...]
Caused by: java.lang.ClassCastException: [Ljava.lang.Object; cannot
be cast to [Ljava.lang.String;
at clojure.core$generate_class__5435.invoke(genclass.clj:219)
at clojure.core$gen_class__5516.doInvoke(genclass.clj:550)
at clojure.lang.RestFn.invoke(RestFn.java:498)
at clojure.lang.Var.invoke(Var.java:360)
at clojure.lang.AFn.applyToHelper(AFn.java:197)
at clojure.lang.Var.applyTo(Var.java:457)
at clojure.lang.Compiler.macroexpand1(Compiler.java:4100)
at clojure.lang.Compiler.analyzeSeq(Compiler.java:4167)
... 32 more
nil
user=>
The ns form that's failing is:
(ns clojure.contrib.repl-ln
(:gen-class)
(:import (clojure.lang Compiler LineNumberingPushbackReader RT Var)
(java.io InputStreamReader OutputStreamWriter PrintWriter)
java.util.Date)
(:require clojure.main)
(:use [clojure.contrib.def
:only (defmacro- defonce- defstruct- defvar-)]))
Removing the (:gen-class) clause allows it to compile.
This line looks important:
at clojure.core$generate_class__5435.invoke(genclass.clj:219)
--Steve
smime.p7s
Description: S/MIME cryptographic signature
