From d073708c2d6a7f186d42db4263769f818f9df934 Mon Sep 17 00:00:00 2001 From: Eduardo Julian Date: Sun, 6 Mar 2016 23:29:06 -0400 Subject: - Fixed an error when parsing annotations syntax, in which the wrong data-structures were being returned. - Fixed an error when generating class signatures in annotations in .class files, in which the class-name was being generated instead. --- src/lux/analyser/parser.clj | 2 +- src/lux/compiler/host.clj | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/lux/analyser/parser.clj b/src/lux/analyser/parser.clj index dca09bb61..c1b8e2368 100644 --- a/src/lux/analyser/parser.clj +++ b/src/lux/analyser/parser.clj @@ -139,7 +139,7 @@ [_ (&/$FormS (&/$Cons [_ (&/$TextS ann-name)] (&/$Cons [_ (&/$RecordS ann-params)] (&/$Nil))))] (|do [=ann-params (&/map% parse-ann-param ann-params)] (return {:name ann-name - :params ann-params})) + :params =ann-params})) _ (fail (str "[Analyser Error] Invalid annotation: " (&/show-ast ast))))) diff --git a/src/lux/compiler/host.clj b/src/lux/compiler/host.clj index 67dcfbd5c..88cb1ee6e 100644 --- a/src/lux/compiler/host.clj +++ b/src/lux/compiler/host.clj @@ -427,7 +427,7 @@ (return nil))) (defn ^:private compile-annotation [writer ann] - (doto ^AnnotationVisitor (.visitAnnotation writer (&host-generics/->bytecode-class-name (:name ann)) true) + (doto ^AnnotationVisitor (.visitAnnotation writer (&host-generics/->type-signature (:name ann)) true) (-> (.visit param-name param-value) (->> (|let [[param-name param-value] param]) (doseq [param (&/->seq (:params ann))]))) -- cgit v1.2.3