Details
-
Bug
-
Status: Done
-
Low
-
Resolution: Done
-
6.56.0, 6.58.0
-
SR4J Sprint 132 (7.02)
-
1
Description
Importing class with inner class in Console cause autocomplete to fail and errors output in server.
Steps to Reproduce
1. Define a class with inner class in Script Editor:
class ClassA { class ClassB {} }
2. Attempt to trigger autocomplete fails in Console:
import com.atlassian.jira.component.ComponentAccessor import ClassA def issue = Co
3. Errors are output in atlassian-jira.log:
2022-09-06 21:07:09,520+0000 http-nio-8080-exec-322 ERROR mlim 1267x9940x1 wlwodc 172.18.0.1,172.18.0.6 /rest/scriptrunner/latest/codeinsight/completions [c.a.p.r.c.error.jersey.ThrowableExceptionMapper] Uncaught exception thrown by REST service: BUG! exception in phase 'conversion' in source unit 'Script947.groovy' The lookup for ClassA caused a failed compilation. There should not have been any compilation from this call. BUG! exception in phase 'conversion' in source unit 'Script947.groovy' The lookup for ClassA caused a failed compilation. There should not have been any compilation from this call. at org.codehaus.groovy.control.ClassNodeResolver.findByClassLoading(ClassNodeResolver.java:214) at org.codehaus.groovy.control.ClassNodeResolver.tryAsLoaderClassOrScript(ClassNodeResolver.java:198) at org.codehaus.groovy.control.ClassNodeResolver.findClassNode(ClassNodeResolver.java) // More stack traces General error during instruction selection: Cannot cast object 'org.codehaus.groovy.ast.expr.TupleExpression@d9f41[]' with class 'org.codehaus.groovy.ast.expr.TupleExpression' to class 'org.codehaus.groovy.ast.expr.ArgumentListExpression' org.codehaus.groovy.runtime.typehandling.GroovyCastException: Cannot cast object 'org.codehaus.groovy.ast.expr.TupleExpression@d9f41[]' with class 'org.codehaus.groovy.ast.expr.TupleExpression' to class 'org.codehaus.groovy.ast.expr.ArgumentListExpression' at org.codehaus.groovy.runtime.typehandling.DefaultTypeTransformation.continueCastOnSAM(DefaultTypeTransformation.java:415) at org.codehaus.groovy.runtime.typehandling.DefaultTypeTransformation.continueCastOnNumber(DefaultTypeTransformation.java:329) at org.codehaus.groovy.runtime.typehandling.DefaultTypeTransformation.castToType(DefaultTypeTransformation.java:243) // More stack traces
Expected Behaviour
Autocomplete works as expected, no error output in server logs.
Actual Behaviour
Autocomplete fails, error output in server logs.