diff --git a/liquidjava-verifier/src/main/java/liquidjava/processor/refinement_checker/TypeChecker.java b/liquidjava-verifier/src/main/java/liquidjava/processor/refinement_checker/TypeChecker.java index 73d68e25..2e3f0c67 100644 --- a/liquidjava-verifier/src/main/java/liquidjava/processor/refinement_checker/TypeChecker.java +++ b/liquidjava-verifier/src/main/java/liquidjava/processor/refinement_checker/TypeChecker.java @@ -3,6 +3,7 @@ import java.lang.annotation.Annotation; import java.util.Collections; import java.util.List; +import java.util.Map; import java.util.Optional; import liquidjava.diagnostics.errors.*; @@ -89,11 +90,13 @@ public Optional getRefinementFromAnnotation(CtElement element) throws return constr; } + @SuppressWarnings({ "rawtypes" }) public Optional getMessageFromAnnotation(CtElement element) { for (CtAnnotation ann : element.getAnnotations()) { String an = ann.getActualAnnotation().annotationType().getCanonicalName(); if (an.contentEquals("liquidjava.specification.Refinement")) { - String msg = getStringFromAnnotation(ann.getValue("msg")); + Map values = ann.getAllValues(); + String msg = getStringFromAnnotation((values.get("msg"))); if (msg != null && !msg.isEmpty()) { return Optional.of(msg); }