From fdcdcc89d8ac081cb214aab6bb70f9d75101e865 Mon Sep 17 00:00:00 2001 From: Reinier Zwitserloot Date: Fri, 16 Oct 2009 11:14:56 +0200 Subject: Fixes issue #56 - annotations with shorthand parameters on methods in method-local classes failed to parse correctly due to a (rare) boneheaded design in the javac tree. Also had a bunch of code in doing raw introspection of the Annotation ASTNode. It wasn't doing anything other than causing bugs and cluttering the code. Removed it. --- src/lombok/javac/handlers/HandleSneakyThrows.java | 13 ------------- 1 file changed, 13 deletions(-) (limited to 'src/lombok/javac') diff --git a/src/lombok/javac/handlers/HandleSneakyThrows.java b/src/lombok/javac/handlers/HandleSneakyThrows.java index a9cfc7a2..167737f9 100644 --- a/src/lombok/javac/handlers/HandleSneakyThrows.java +++ b/src/lombok/javac/handlers/HandleSneakyThrows.java @@ -36,11 +36,9 @@ import org.mangosdk.spi.ProviderFor; import com.sun.tools.javac.code.Flags; import com.sun.tools.javac.tree.TreeMaker; import com.sun.tools.javac.tree.JCTree.JCAnnotation; -import com.sun.tools.javac.tree.JCTree.JCAssign; import com.sun.tools.javac.tree.JCTree.JCBlock; import com.sun.tools.javac.tree.JCTree.JCExpression; import com.sun.tools.javac.tree.JCTree.JCMethodDecl; -import com.sun.tools.javac.tree.JCTree.JCNewArray; import com.sun.tools.javac.tree.JCTree.JCStatement; import com.sun.tools.javac.tree.JCTree.JCVariableDecl; import com.sun.tools.javac.util.List; @@ -56,17 +54,6 @@ public class HandleSneakyThrows implements JavacAnnotationHandler List memberValuePairs = ast.getArguments(); if (memberValuePairs == null || memberValuePairs.size() == 0) return false; - JCExpression arrayOrSingle = ((JCAssign)memberValuePairs.get(0)).rhs; - final List exceptionNameNodes; - if (arrayOrSingle instanceof JCNewArray) { - exceptionNameNodes = ((JCNewArray)arrayOrSingle).elems; - } else exceptionNameNodes = List.of(arrayOrSingle); - - if (exceptionNames.size() != exceptionNameNodes.size()) { - annotationNode.addError( - "LOMBOK BUG: The number of exception classes in the annotation isn't the same pre- and post- guessing."); - } - java.util.List exceptions = new ArrayList(); for (String exception : exceptionNames) { if (exception.endsWith(".class")) exception = exception.substring(0, exception.length() - 6); -- cgit