[ https://issues.apache.org/jira/browse/GROOVY-10141?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Eric Milles updated GROOVY-10141: --------------------------------- Fix Version/s: 2.5.16 > NPE in InnerClassVisitor for non-static inner class CCE within two AICs > ----------------------------------------------------------------------- > > Key: GROOVY-10141 > URL: https://issues.apache.org/jira/browse/GROOVY-10141 > Project: Groovy > Issue Type: Bug > Reporter: Eric Milles > Assignee: Eric Milles > Priority: Major > Fix For: 4.0.0-beta-1, 3.0.9, 2.5.16 > > Time Spent: 20m > Remaining Estimate: 0h > > Consider the following: > {code:groovy} > class Outer { > class Inner { > } > def obj = new Object() { > String toString() { > new Object() { > String toString() { > new Inner() > } > } > } > } > } > {code} > https://github.com/groovy/groovy-eclipse/issues/1268 > {code} > java.lang.NullPointerException > at > org.codehaus.groovy.classgen.InnerClassVisitor.insertThis0ToSuperCall(InnerClassVisitor.java:306) > at > org.codehaus.groovy.classgen.InnerClassVisitor.passThisReference(InnerClassVisitor.java:286) > at > org.codehaus.groovy.classgen.InnerClassVisitor.visitConstructorCallExpression(InnerClassVisitor.java:147) > at > org.codehaus.groovy.ast.expr.ConstructorCallExpression.visit(ConstructorCallExpression.java:45) > at > org.codehaus.groovy.ast.CodeVisitorSupport.visitExpressionStatement(CodeVisitorSupport.java:117) > at > org.codehaus.groovy.ast.ClassCodeVisitorSupport.visitExpressionStatement(ClassCodeVisitorSupport.java:200) > at > org.codehaus.groovy.ast.stmt.ExpressionStatement.visit(ExpressionStatement.java:41) > at > org.codehaus.groovy.ast.CodeVisitorSupport.visitBlockStatement(CodeVisitorSupport.java:86) > at > org.codehaus.groovy.ast.ClassCodeVisitorSupport.visitBlockStatement(ClassCodeVisitorSupport.java:164) > at > org.codehaus.groovy.ast.stmt.BlockStatement.visit(BlockStatement.java:70) > at > org.codehaus.groovy.ast.ClassCodeVisitorSupport.visitClassCodeContainer(ClassCodeVisitorSupport.java:138) > at > org.codehaus.groovy.classgen.InnerClassVisitor.visitConstructorOrMethod(InnerClassVisitor.java:116) > at > org.codehaus.groovy.ast.ClassCodeVisitorSupport.visitMethod(ClassCodeVisitorSupport.java:106) > at org.codehaus.groovy.ast.ClassNode.visitMethods(ClassNode.java:1110) > at org.codehaus.groovy.ast.ClassNode.visitContents(ClassNode.java:1103) > at > org.codehaus.groovy.ast.ClassCodeVisitorSupport.visitClass(ClassCodeVisitorSupport.java:52) > at > org.codehaus.groovy.classgen.InnerClassVisitor.visitClass(InnerClassVisitor.java:86) > at > org.codehaus.groovy.control.CompilationUnit.lambda$addPhaseOperations$4(CompilationUnit.java:213) > at > org.codehaus.groovy.control.CompilationUnit$IPrimaryClassNodeOperation.doPhaseOperation(CompilationUnit.java:928) > {code} -- This message was sent by Atlassian Jira (v8.20.1#820001)