aboutsummaryrefslogtreecommitdiff
path: root/lux-jvm/source/luxc/lang/host
diff options
context:
space:
mode:
authorEduardo Julian2021-07-18 23:10:18 -0400
committerEduardo Julian2021-07-18 23:10:18 -0400
commita40f40f230e6312ae432f06e7f73aa5945d8fa49 (patch)
tree5005ef744b01f9327c2e4df23146928f1723c495 /lux-jvm/source/luxc/lang/host
parent442d1557b879a8a4bd76f441f72a17bfb71cf05f (diff)
New JVM compiler can now compile JVM interfaces.
Diffstat (limited to 'lux-jvm/source/luxc/lang/host')
-rw-r--r--lux-jvm/source/luxc/lang/host/jvm/def.lux2
-rw-r--r--lux-jvm/source/luxc/lang/host/jvm/inst.lux4
2 files changed, 3 insertions, 3 deletions
diff --git a/lux-jvm/source/luxc/lang/host/jvm/def.lux b/lux-jvm/source/luxc/lang/host/jvm/def.lux
index 58121502a..953dbf200 100644
--- a/lux-jvm/source/luxc/lang/host/jvm/def.lux
+++ b/lux-jvm/source/luxc/lang/host/jvm/def.lux
@@ -202,7 +202,7 @@
(let [writer (|> (do_to (org/objectweb/asm/ClassWriter::new class_computes)
(org/objectweb/asm/ClassWriter::visit (version_flag version)
($_ i.+
- (org/objectweb/asm/Opcodes::ACC_SUPER)
+ (org/objectweb/asm/Opcodes::ACC_ABSTRACT)
(org/objectweb/asm/Opcodes::ACC_INTERFACE)
(visibility_flag visibility)
(class_flags config))
diff --git a/lux-jvm/source/luxc/lang/host/jvm/inst.lux b/lux-jvm/source/luxc/lang/host/jvm/inst.lux
index 8427e23e1..9447861e3 100644
--- a/lux-jvm/source/luxc/lang/host/jvm/inst.lux
+++ b/lux-jvm/source/luxc/lang/host/jvm/inst.lux
@@ -448,13 +448,13 @@
(def: #export (wrap type)
(-> (Type Primitive) Inst)
(let [wrapper (type.class (primitive_wrapper type) (list))]
- (INVOKESTATIC wrapper "valueOf" (type.method [(list type) wrapper (list)]))))
+ (INVOKESTATIC wrapper "valueOf" (type.method [(list) (list type) wrapper (list)]))))
(def: #export (unwrap type)
(-> (Type Primitive) Inst)
(let [wrapper (type.class (primitive_wrapper type) (list))]
(|>> (CHECKCAST wrapper)
- (INVOKEVIRTUAL wrapper (primitive_unwrap type) (type.method [(list) type (list)])))))
+ (INVOKEVIRTUAL wrapper (primitive_unwrap type) (type.method [(list) (list) type (list)])))))
(def: #export (fuse insts)
(-> (List Inst) Inst)