[
https://issues.apache.org/jira/browse/GROOVY-12455?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Björn Kautler updated GROOVY-12455:
-----------------------------------
Description:
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.
[...]\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.
[...]\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}
was:
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}
> Regression: 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.6, 5.0.8
> Reporter: Björn Kautler
> Priority: Major
>
> 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.
> [...]\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.
> [...]\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)