Björn Kautler created GROOVY-12455:
--------------------------------------

             Summary: NegativeArraySizeException during Groovy compilation
                 Key: GROOVY-12455
                 URL: https://issues.apache.org/jira/browse/GROOVY-12455
             Project: Groovy
          Issue Type: Bug
    Affects Versions: 5.0.8, 5.0.6
            Reporter: Björn Kautler


If you check out this branch: 
[https://github.com/Vampire/spock/tree/groovy-compiler-bug]
and run {{{}./gradlew -Dvariant=5.0 :spock-specs:compileTestGroovy{}}}, you get 
the following exception.
With the 4.0 variant and thus 4.0.32 the compilation works just fine.
{code:java}
> Unrecoverable compilation error: startup failed:
  General error during instruction selection: ASM reporting processing error 
for org.spockframework.runtime.model.SpecInfoHierarchySpec#setupSpec with 
signature setupSpec():java.lang.Object in SpecInfoHierarchySpec.groovy:20. 
D:\Sourcecode\other\spock\spock-specs\src\test\groovy\org\spockframework\runtime\model\SpecInfoHierarchySpec.groovy
  
  groovy.lang.GroovyRuntimeException: ASM reporting processing error for 
org.spockframework.runtime.model.SpecInfoHierarchySpec#setupSpec with signature 
setupSpec():java.lang.Object in SpecInfoHierarchySpec.groovy:20. 
D:\Sourcecode\other\spock\spock-specs\src\test\groovy\org\spockframework\runtime\model\SpecInfoHierarchySpec.groovy
        at 
org.codehaus.groovy.classgen.AsmClassGenerator.visitConstructorOrMethod(AsmClassGenerator.java:642)
        at 
org.codehaus.groovy.ast.ClassCodeVisitorSupport.visitMethod(ClassCodeVisitorSupport.java:110)
        at 
org.codehaus.groovy.classgen.AsmClassGenerator.visitMethod(AsmClassGenerator.java:769)
        at org.codehaus.groovy.ast.ClassNode.visitMethods(ClassNode.java:1338)
        at org.codehaus.groovy.ast.ClassNode.visitContents(ClassNode.java:1331)
        at 
org.codehaus.groovy.ast.ClassCodeVisitorSupport.visitClass(ClassCodeVisitorSupport.java:52)
        at 
org.codehaus.groovy.classgen.AsmClassGenerator.visitClass(AsmClassGenerator.java:379)
        at 
org.codehaus.groovy.control.CompilationUnit$3.call(CompilationUnit.java:780)
        at 
org.codehaus.groovy.control.CompilationUnit$IPrimaryClassNodeOperation.doPhaseOperation(CompilationUnit.java:922)
        at 
org.codehaus.groovy.control.CompilationUnit.processPhaseOperations(CompilationUnit.java:668)
        at 
org.codehaus.groovy.control.CompilationUnit.compile(CompilationUnit.java:642)
        at 
org.codehaus.groovy.control.CompilationUnit.compile(CompilationUnit.java:623)
        at 
org.gradle.api.internal.tasks.compile.ApiGroovyCompiler.execute(ApiGroovyCompiler.java:287)
        at 
org.gradle.api.internal.tasks.compile.ApiGroovyCompiler.execute(ApiGroovyCompiler.java:69)
        at 
org.gradle.api.internal.tasks.compile.DaemonSideCompiler.execute(DaemonSideCompiler.java:45)
        at 
org.gradle.api.internal.tasks.compile.DaemonSideCompiler.execute(DaemonSideCompiler.java:28)
        at 
org.gradle.api.internal.tasks.compile.daemon.CompilerWorkAction.execute(CompilerWorkAction.java:52)
        at 
org.gradle.workers.internal.DefaultWorkerServer.execute(DefaultWorkerServer.java:68)
        at 
org.gradle.workers.internal.AbstractClassLoaderWorker$1.create(AbstractClassLoaderWorker.java:54)
        at 
org.gradle.workers.internal.AbstractClassLoaderWorker$1.create(AbstractClassLoaderWorker.java:48)
        at 
org.gradle.internal.classloader.ClassLoaderUtils.executeInClassloader(ClassLoaderUtils.java:102)
        at 
org.gradle.workers.internal.AbstractClassLoaderWorker.executeInClassLoader(AbstractClassLoaderWorker.java:48)
        at 
org.gradle.workers.internal.IsolatedClassloaderWorker.run(IsolatedClassloaderWorker.java:49)
        at 
org.gradle.workers.internal.IsolatedClassloaderWorker.run(IsolatedClassloaderWorker.java:30)
        at 
org.gradle.workers.internal.WorkerDaemonServer.run(WorkerDaemonServer.java:108)
        at 
org.gradle.workers.internal.WorkerDaemonServer.run(WorkerDaemonServer.java:77)
        at 
org.gradle.process.internal.worker.request.WorkerAction.lambda$run$1(WorkerAction.java:150)
        at 
org.gradle.process.internal.worker.child.WorkerLogEventListener.withWorkerLoggingProtocol(WorkerLogEventListener.java:41)
        at 
org.gradle.process.internal.worker.request.WorkerAction.lambda$run$2(WorkerAction.java:150)
        at 
org.gradle.internal.operations.CurrentBuildOperationRef.with(CurrentBuildOperationRef.java:84)
        at 
org.gradle.process.internal.worker.request.WorkerAction.run(WorkerAction.java:142)
        at 
java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at 
java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.base/java.lang.reflect.Method.invoke(Method.java:566)
        at 
org.gradle.internal.dispatch.MethodInvocation.invokeOn(MethodInvocation.java:77)
        at 
org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:28)
        at 
org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:19)
        at 
org.gradle.internal.remote.internal.hub.MessageHubBackedObjectConnection$DispatchWrapper.dispatch(MessageHubBackedObjectConnection.java:182)
        at 
org.gradle.internal.remote.internal.hub.MessageHubBackedObjectConnection$DispatchWrapper.dispatch(MessageHubBackedObjectConnection.java:164)
        at 
org.gradle.internal.remote.internal.hub.MessageHub$Handler.run(MessageHub.java:414)
        at 
org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:64)
        at 
org.gradle.internal.concurrent.AbstractManagedExecutor$1.run(AbstractManagedExecutor.java:47)
        at 
java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
        at 
java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
        at java.base/java.lang.Thread.run(Thread.java:829)
  Caused by: java.lang.NegativeArraySizeException: -10
        at groovyjarjarasm.asm.Frame.merge(Frame.java:1233)
        at 
groovyjarjarasm.asm.MethodWriter.computeAllFrames(MethodWriter.java:1612)
        at groovyjarjarasm.asm.MethodWriter.visitMaxs(MethodWriter.java:1548)
        at 
org.codehaus.groovy.classgen.AsmClassGenerator.visitConstructorOrMethod(AsmClassGenerator.java:624)
        ... 45 more
{code}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to