[jira] [Updated] (GROOVY-8727) JDK 11 Compilation Failure: ClassVisitor.visitNestMemberExperimental throws UnsupportedOperationException

2018-08-02 Thread Misagh Moayyed (JIRA)


 [ 
https://issues.apache.org/jira/browse/GROOVY-8727?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Misagh Moayyed updated GROOVY-8727:
---
Description: 
*Description:*

Using JDK 11 and Gradle 4.9, the following compilation error is seen:

 
{code:java}
> Task :core:cas-server-core-tickets:compileTestGroovy FAILED
startup failed:
General error during class generation: java.lang.UnsupportedOperationException
java.lang.UnsupportedOperationException
at 
groovyjarjarasm.asm.ClassVisitor.visitNestMemberExperimental(ClassVisitor.java:248)
at groovyjarjarasm.asm.ClassReader.accept(ClassReader.java:651)
at groovyjarjarasm.asm.ClassReader.accept(ClassReader.java:391)
at 
org.codehaus.groovy.ast.decompiled.AsmDecompiler.parseClass(AsmDecompiler.java:83)
at 
org.codehaus.groovy.control.ClassNodeResolver.findDecompiled(ClassNodeResolver.java:254)
at 
org.codehaus.groovy.control.ClassNodeResolver.tryAsLoaderClassOrScript(ClassNodeResolver.java:192)
at 
org.codehaus.groovy.control.ClassNodeResolver.findClassNode(ClassNodeResolver.java:172)
at 
org.codehaus.groovy.control.ClassNodeResolver.resolveName(ClassNodeResolver.java:128)
at 
org.codehaus.groovy.ast.decompiled.AsmReferenceResolver.resolveClassNullable(AsmReferenceResolver.java:59)
at 
org.codehaus.groovy.ast.decompiled.AsmReferenceResolver.resolveClass(AsmReferenceResolver.java:46)
at 
org.codehaus.groovy.ast.decompiled.TypeSignatureParser.visitEnd(TypeSignatureParser.java:112)
at 
groovyjarjarasm.asm.signature.SignatureReader.parseType(SignatureReader.java:206)
at 
groovyjarjarasm.asm.signature.SignatureReader.parseType(SignatureReader.java:235)
at 
groovyjarjarasm.asm.signature.SignatureReader.accept(SignatureReader.java:114)
at 
org.codehaus.groovy.ast.decompiled.MemberSignatureParser.createMethodNode(MemberSignatureParser.java:95)
at 
org.codehaus.groovy.ast.decompiled.DecompiledClassNode.lazyInitMembers(DecompiledClassNode.java:195)
at 
org.codehaus.groovy.ast.decompiled.DecompiledClassNode.getMethods(DecompiledClassNode.java:103)
at org.codehaus.groovy.ast.ClassNode.getMethods(ClassNode.java:399)
at 
org.codehaus.groovy.classgen.AnnotationVisitor.checkIfMandatoryAnnotationValuesPassed(AnnotationVisitor.java:168)
at 
org.codehaus.groovy.classgen.AnnotationVisitor.visit(AnnotationVisitor.java:80)
at 
org.codehaus.groovy.classgen.ExtendedVerifier.visitAnnotation(ExtendedVerifier.java:311)
at 
org.codehaus.groovy.classgen.ExtendedVerifier.visitAnnotations(ExtendedVerifier.java:157)
at 
org.codehaus.groovy.classgen.ExtendedVerifier.visitConstructorOrMethod(ExtendedVerifier.java:112)
at 
org.codehaus.groovy.classgen.ExtendedVerifier.visitMethod(ExtendedVerifier.java:108)
at org.codehaus.groovy.ast.ClassNode.visitContents(ClassNode.java:1103)
at 
org.codehaus.groovy.classgen.ExtendedVerifier.visitClass(ExtendedVerifier.java:91)
at 
org.codehaus.groovy.control.CompilationUnit$18.call(CompilationUnit.java:827)
at 
org.codehaus.groovy.control.CompilationUnit.applyToPrimaryClassNodes(CompilationUnit.java:1087)
at 
org.codehaus.groovy.control.CompilationUnit.doPhaseOperation(CompilationUnit.java:631)
at 
org.codehaus.groovy.control.CompilationUnit.processPhaseOperations(CompilationUnit.java:609)
at 
org.codehaus.groovy.control.CompilationUnit.compile(CompilationUnit.java:586)
at 
org.codehaus.groovy.control.CompilationUnit.compile(CompilationUnit.java:565)
at 
org.gradle.api.internal.tasks.compile.ApiGroovyCompiler.execute(ApiGroovyCompiler.java:179)
at 
org.gradle.api.internal.tasks.compile.ApiGroovyCompiler.execute(ApiGroovyCompiler.java:57)
at 
org.gradle.api.internal.tasks.compile.GroovyCompilerFactory$DaemonSideCompiler.execute(GroovyCompilerFactory.java:77)
at 
org.gradle.api.internal.tasks.compile.GroovyCompilerFactory$DaemonSideCompiler.execute(GroovyCompilerFactory.java:65)
at 
org.gradle.api.internal.tasks.compile.daemon.AbstractDaemonCompiler$CompilerCallable.call(AbstractDaemonCompiler.java:88)
at 
org.gradle.api.internal.tasks.compile.daemon.AbstractDaemonCompiler$CompilerCallable.call(AbstractDaemonCompiler.java:76)
at 
org.gradle.workers.internal.DefaultWorkerServer.execute(DefaultWorkerServer.java:42)
at 
org.gradle.workers.internal.WorkerDaemonServer.execute(WorkerDaemonServer.java:46)
at 
org.gradle.workers.internal.WorkerDaemonServer.execute(WorkerDaemonServer.java:30)
at 
java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at 
java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at 

[jira] [Updated] (GROOVY-8727) JDK 11 Compilation Failure: ClassVisitor.visitNestMemberExperimental throws UnsupportedOperationException

2018-08-02 Thread Misagh Moayyed (JIRA)


 [ 
https://issues.apache.org/jira/browse/GROOVY-8727?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Misagh Moayyed updated GROOVY-8727:
---
Description: 
Description:

Using JDK 11 and Gradle 4.9, the following compilation error is sen:

 
{code:java}
> Task :core:cas-server-core-tickets:compileTestGroovy FAILED
startup failed:
General error during class generation: java.lang.UnsupportedOperationException
java.lang.UnsupportedOperationException
at 
groovyjarjarasm.asm.ClassVisitor.visitNestMemberExperimental(ClassVisitor.java:248)
at groovyjarjarasm.asm.ClassReader.accept(ClassReader.java:651)
at groovyjarjarasm.asm.ClassReader.accept(ClassReader.java:391)
at 
org.codehaus.groovy.ast.decompiled.AsmDecompiler.parseClass(AsmDecompiler.java:83)
at 
org.codehaus.groovy.control.ClassNodeResolver.findDecompiled(ClassNodeResolver.java:254)
at 
org.codehaus.groovy.control.ClassNodeResolver.tryAsLoaderClassOrScript(ClassNodeResolver.java:192)
at 
org.codehaus.groovy.control.ClassNodeResolver.findClassNode(ClassNodeResolver.java:172)
at 
org.codehaus.groovy.control.ClassNodeResolver.resolveName(ClassNodeResolver.java:128)
at 
org.codehaus.groovy.ast.decompiled.AsmReferenceResolver.resolveClassNullable(AsmReferenceResolver.java:59)
at 
org.codehaus.groovy.ast.decompiled.AsmReferenceResolver.resolveClass(AsmReferenceResolver.java:46)
at 
org.codehaus.groovy.ast.decompiled.TypeSignatureParser.visitEnd(TypeSignatureParser.java:112)
at 
groovyjarjarasm.asm.signature.SignatureReader.parseType(SignatureReader.java:206)
at 
groovyjarjarasm.asm.signature.SignatureReader.parseType(SignatureReader.java:235)
at 
groovyjarjarasm.asm.signature.SignatureReader.accept(SignatureReader.java:114)
at 
org.codehaus.groovy.ast.decompiled.MemberSignatureParser.createMethodNode(MemberSignatureParser.java:95)
at 
org.codehaus.groovy.ast.decompiled.DecompiledClassNode.lazyInitMembers(DecompiledClassNode.java:195)
at 
org.codehaus.groovy.ast.decompiled.DecompiledClassNode.getMethods(DecompiledClassNode.java:103)
at org.codehaus.groovy.ast.ClassNode.getMethods(ClassNode.java:399)
at 
org.codehaus.groovy.classgen.AnnotationVisitor.checkIfMandatoryAnnotationValuesPassed(AnnotationVisitor.java:168)
at 
org.codehaus.groovy.classgen.AnnotationVisitor.visit(AnnotationVisitor.java:80)
at 
org.codehaus.groovy.classgen.ExtendedVerifier.visitAnnotation(ExtendedVerifier.java:311)
at 
org.codehaus.groovy.classgen.ExtendedVerifier.visitAnnotations(ExtendedVerifier.java:157)
at 
org.codehaus.groovy.classgen.ExtendedVerifier.visitConstructorOrMethod(ExtendedVerifier.java:112)
at 
org.codehaus.groovy.classgen.ExtendedVerifier.visitMethod(ExtendedVerifier.java:108)
at org.codehaus.groovy.ast.ClassNode.visitContents(ClassNode.java:1103)
at 
org.codehaus.groovy.classgen.ExtendedVerifier.visitClass(ExtendedVerifier.java:91)
at 
org.codehaus.groovy.control.CompilationUnit$18.call(CompilationUnit.java:827)
at 
org.codehaus.groovy.control.CompilationUnit.applyToPrimaryClassNodes(CompilationUnit.java:1087)
at 
org.codehaus.groovy.control.CompilationUnit.doPhaseOperation(CompilationUnit.java:631)
at 
org.codehaus.groovy.control.CompilationUnit.processPhaseOperations(CompilationUnit.java:609)
at 
org.codehaus.groovy.control.CompilationUnit.compile(CompilationUnit.java:586)
at 
org.codehaus.groovy.control.CompilationUnit.compile(CompilationUnit.java:565)
at 
org.gradle.api.internal.tasks.compile.ApiGroovyCompiler.execute(ApiGroovyCompiler.java:179)
at 
org.gradle.api.internal.tasks.compile.ApiGroovyCompiler.execute(ApiGroovyCompiler.java:57)
at 
org.gradle.api.internal.tasks.compile.GroovyCompilerFactory$DaemonSideCompiler.execute(GroovyCompilerFactory.java:77)
at 
org.gradle.api.internal.tasks.compile.GroovyCompilerFactory$DaemonSideCompiler.execute(GroovyCompilerFactory.java:65)
at 
org.gradle.api.internal.tasks.compile.daemon.AbstractDaemonCompiler$CompilerCallable.call(AbstractDaemonCompiler.java:88)
at 
org.gradle.api.internal.tasks.compile.daemon.AbstractDaemonCompiler$CompilerCallable.call(AbstractDaemonCompiler.java:76)
at 
org.gradle.workers.internal.DefaultWorkerServer.execute(DefaultWorkerServer.java:42)
at 
org.gradle.workers.internal.WorkerDaemonServer.execute(WorkerDaemonServer.java:46)
at 
org.gradle.workers.internal.WorkerDaemonServer.execute(WorkerDaemonServer.java:30)
at 
java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at 
java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at 

[jira] [Created] (GROOVY-8727) JDK 11 Compilation Failure: ClassVisitor.visitNestMemberExperimental throws UnsupportedOperationException

2018-08-02 Thread Misagh Moayyed (JIRA)
Misagh Moayyed created GROOVY-8727:
--

 Summary: JDK 11 Compilation Failure: 
ClassVisitor.visitNestMemberExperimental throws UnsupportedOperationException 
 Key: GROOVY-8727
 URL: https://issues.apache.org/jira/browse/GROOVY-8727
 Project: Groovy
  Issue Type: Bug
  Components: Compiler
Affects Versions: 2.5.1, 3.x
Reporter: Misagh Moayyed


Using JDK 11 and Gradle 4.9, the following compilation error is sen:

 
{code:java}
// code placeholder
> Task :core:cas-server-core-tickets:compileTestGroovy FAILED
startup failed:
General error during class generation: java.lang.UnsupportedOperationException
java.lang.UnsupportedOperationException
at 
groovyjarjarasm.asm.ClassVisitor.visitNestMemberExperimental(ClassVisitor.java:248)
at groovyjarjarasm.asm.ClassReader.accept(ClassReader.java:651)
at groovyjarjarasm.asm.ClassReader.accept(ClassReader.java:391)
at 
org.codehaus.groovy.ast.decompiled.AsmDecompiler.parseClass(AsmDecompiler.java:83)
at 
org.codehaus.groovy.control.ClassNodeResolver.findDecompiled(ClassNodeResolver.java:254)
at 
org.codehaus.groovy.control.ClassNodeResolver.tryAsLoaderClassOrScript(ClassNodeResolver.java:192)
at 
org.codehaus.groovy.control.ClassNodeResolver.findClassNode(ClassNodeResolver.java:172)
at 
org.codehaus.groovy.control.ClassNodeResolver.resolveName(ClassNodeResolver.java:128)
at 
org.codehaus.groovy.ast.decompiled.AsmReferenceResolver.resolveClassNullable(AsmReferenceResolver.java:59)
at 
org.codehaus.groovy.ast.decompiled.AsmReferenceResolver.resolveClass(AsmReferenceResolver.java:46)
at 
org.codehaus.groovy.ast.decompiled.TypeSignatureParser.visitEnd(TypeSignatureParser.java:112)
at 
groovyjarjarasm.asm.signature.SignatureReader.parseType(SignatureReader.java:206)
at 
groovyjarjarasm.asm.signature.SignatureReader.parseType(SignatureReader.java:235)
at 
groovyjarjarasm.asm.signature.SignatureReader.accept(SignatureReader.java:114)
at 
org.codehaus.groovy.ast.decompiled.MemberSignatureParser.createMethodNode(MemberSignatureParser.java:95)
at 
org.codehaus.groovy.ast.decompiled.DecompiledClassNode.lazyInitMembers(DecompiledClassNode.java:195)
at 
org.codehaus.groovy.ast.decompiled.DecompiledClassNode.getMethods(DecompiledClassNode.java:103)
at org.codehaus.groovy.ast.ClassNode.getMethods(ClassNode.java:399)
at 
org.codehaus.groovy.classgen.AnnotationVisitor.checkIfMandatoryAnnotationValuesPassed(AnnotationVisitor.java:168)
at 
org.codehaus.groovy.classgen.AnnotationVisitor.visit(AnnotationVisitor.java:80)
at 
org.codehaus.groovy.classgen.ExtendedVerifier.visitAnnotation(ExtendedVerifier.java:311)
at 
org.codehaus.groovy.classgen.ExtendedVerifier.visitAnnotations(ExtendedVerifier.java:157)
at 
org.codehaus.groovy.classgen.ExtendedVerifier.visitConstructorOrMethod(ExtendedVerifier.java:112)
at 
org.codehaus.groovy.classgen.ExtendedVerifier.visitMethod(ExtendedVerifier.java:108)
at org.codehaus.groovy.ast.ClassNode.visitContents(ClassNode.java:1103)
at 
org.codehaus.groovy.classgen.ExtendedVerifier.visitClass(ExtendedVerifier.java:91)
at 
org.codehaus.groovy.control.CompilationUnit$18.call(CompilationUnit.java:827)
at 
org.codehaus.groovy.control.CompilationUnit.applyToPrimaryClassNodes(CompilationUnit.java:1087)
at 
org.codehaus.groovy.control.CompilationUnit.doPhaseOperation(CompilationUnit.java:631)
at 
org.codehaus.groovy.control.CompilationUnit.processPhaseOperations(CompilationUnit.java:609)
at 
org.codehaus.groovy.control.CompilationUnit.compile(CompilationUnit.java:586)
at 
org.codehaus.groovy.control.CompilationUnit.compile(CompilationUnit.java:565)
at 
org.gradle.api.internal.tasks.compile.ApiGroovyCompiler.execute(ApiGroovyCompiler.java:179)
at 
org.gradle.api.internal.tasks.compile.ApiGroovyCompiler.execute(ApiGroovyCompiler.java:57)
at 
org.gradle.api.internal.tasks.compile.GroovyCompilerFactory$DaemonSideCompiler.execute(GroovyCompilerFactory.java:77)
at 
org.gradle.api.internal.tasks.compile.GroovyCompilerFactory$DaemonSideCompiler.execute(GroovyCompilerFactory.java:65)
at 
org.gradle.api.internal.tasks.compile.daemon.AbstractDaemonCompiler$CompilerCallable.call(AbstractDaemonCompiler.java:88)
at 
org.gradle.api.internal.tasks.compile.daemon.AbstractDaemonCompiler$CompilerCallable.call(AbstractDaemonCompiler.java:76)
at 
org.gradle.workers.internal.DefaultWorkerServer.execute(DefaultWorkerServer.java:42)
at 
org.gradle.workers.internal.WorkerDaemonServer.execute(WorkerDaemonServer.java:46)
at 
org.gradle.workers.internal.WorkerDaemonServer.execute(WorkerDaemonServer.java:30)
at 

[jira] [Commented] (GROOVY-8726) Parameter lacks a reference to the MethodNode it belongs to

2018-08-02 Thread ASF GitHub Bot (JIRA)


[ 
https://issues.apache.org/jira/browse/GROOVY-8726?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16566430#comment-16566430
 ] 

ASF GitHub Bot commented on GROOVY-8726:


GitHub user jameskleeh opened a pull request:

https://github.com/apache/groovy/pull/779

GROOVY-8726: Store the method node reference in Parameter

This implementation copies all parameters when they are passed to the 
method node constructor. While there will be some waste in this process, I find 
it much easier and maintainable compared to changing all of the places in the 
codebase where parameters are reused.

Note that the build on my fork is failing with an unrelated compilation 
error

You can merge this pull request into a Git repository by running:

$ git pull https://github.com/jameskleeh/groovy master

Alternatively you can review and apply these changes as the patch at:

https://github.com/apache/groovy/pull/779.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

This closes #779


commit 6710d938b557dbf709924d3112d84c8de8e97a99
Author: jameskleeh 
Date:   2018-08-02T04:03:41Z

GROOVY-8726: Store the method node reference in Parameter




> Parameter lacks a reference to the MethodNode it belongs to
> ---
>
> Key: GROOVY-8726
> URL: https://issues.apache.org/jira/browse/GROOVY-8726
> Project: Groovy
>  Issue Type: Improvement
>  Components: Compiler
>Affects Versions: 2.5.1
>Reporter: James Kleeh
>Priority: Major
>
> The Parameter class lacks a reference to it's method node. This is important 
> to find arguments that have been "overridden".



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[GitHub] groovy pull request #779: GROOVY-8726: Store the method node reference in Pa...

2018-08-02 Thread jameskleeh
GitHub user jameskleeh opened a pull request:

https://github.com/apache/groovy/pull/779

GROOVY-8726: Store the method node reference in Parameter

This implementation copies all parameters when they are passed to the 
method node constructor. While there will be some waste in this process, I find 
it much easier and maintainable compared to changing all of the places in the 
codebase where parameters are reused.

Note that the build on my fork is failing with an unrelated compilation 
error

You can merge this pull request into a Git repository by running:

$ git pull https://github.com/jameskleeh/groovy master

Alternatively you can review and apply these changes as the patch at:

https://github.com/apache/groovy/pull/779.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

This closes #779


commit 6710d938b557dbf709924d3112d84c8de8e97a99
Author: jameskleeh 
Date:   2018-08-02T04:03:41Z

GROOVY-8726: Store the method node reference in Parameter




---