diff options
author | Eduardo Julian | 2021-02-26 02:34:17 -0400 |
---|---|---|
committer | Eduardo Julian | 2021-02-26 02:34:17 -0400 |
commit | 69edb6de2ecf62881bcde1b8013c98450a6a52bc (patch) | |
tree | 3442a0abf0b5f95fa33adc586e470d150d2deece /lux-bootstrapper/src | |
parent | 47b320b854a6f28621c5d5d118cac31db27e7c50 (diff) |
Got JRuby to cooperate.
Diffstat (limited to '')
-rw-r--r-- | lux-bootstrapper/src/lux/compiler/jvm/proc/host.clj | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/lux-bootstrapper/src/lux/compiler/jvm/proc/host.clj b/lux-bootstrapper/src/lux/compiler/jvm/proc/host.clj index ec934ae7b..034d503a7 100644 --- a/lux-bootstrapper/src/lux/compiler/jvm/proc/host.clj +++ b/lux-bootstrapper/src/lux/compiler/jvm/proc/host.clj @@ -412,7 +412,9 @@ (defn ^:private add-anon-class-<init> [^ClassWriter class-writer compile class-name super-class env ctor-args] (|let [[super-class-name super-class-params] super-class - init-types (->> ctor-args (&/|map (comp &host-generics/->type-signature &/|first)) (&/fold str ""))] + init-types (->> ctor-args + (&/|map (comp &host-generics/gclass->signature &/|first)) + (&/fold str ""))] (&/with-writer (.visitMethod class-writer Opcodes/ACC_PUBLIC init-method (anon-class-<init>-signature env) nil nil) (|do [^MethodVisitor =method &/get-writer :let [_ (doto =method @@ -421,7 +423,7 @@ _ (&/map% (fn [type+term] (|let [[type term] type+term] (|do [_ (compile term) - :let [_ (prepare-ctor-arg =method type)]] + :let [_ (prepare-ctor-arg =method (&host-generics/gclass->class-name type))]] (return nil)))) ctor-args) :let [_ (doto =method |