[jira] [Resolved] (GROOVY-10470) Update from Groovy 3 to 4.0.0 breaks existing code

2022-02-13 Thread Paul King (Jira)


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

Paul King resolved GROOVY-10470.

  Assignee: Paul King
Resolution: Information Provided

> Update from Groovy 3 to 4.0.0 breaks existing code
> --
>
> Key: GROOVY-10470
> URL: https://issues.apache.org/jira/browse/GROOVY-10470
> Project: Groovy
>  Issue Type: Bug
>  Components: groovy-runtime
>Affects Versions: 4.0.0
>Reporter: Alexander Veit
>Assignee: Paul King
>Priority: Major
>
> After updating from Groovy 3 to 4.0.0 scripts that use {{AntBuilder}} without 
> an {{import}} statement no longer work.
> This is probably caused by missing default includes for {{groovy.ant.*}} or 
> {{groovy.ant.AntBuilder}}.
> The same problem exists for {{XmlSlurper}} and {{XmlParser}}.
> Example: The script below works with Groovy 3.0.9 but not with 4.0.0.
> {code:java}
> new AntBuilder()
> {code}



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Resolved] (GROOVY-10474) Bump gradle to 7.4 (build dependency)

2022-02-13 Thread Paul King (Jira)


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

Paul King resolved GROOVY-10474.

Fix Version/s: 4.0.1
 Assignee: Paul King
   Resolution: Fixed

> Bump gradle to 7.4 (build dependency)
> -
>
> Key: GROOVY-10474
> URL: https://issues.apache.org/jira/browse/GROOVY-10474
> Project: Groovy
>  Issue Type: Dependency upgrade
>Reporter: Paul King
>Assignee: Paul King
>Priority: Major
> Fix For: 4.0.1
>
>




--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Commented] (GROOVY-10472) @AutoImplement is failing when covariant returns are involved

2022-02-13 Thread Paul King (Jira)


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

Paul King commented on GROOVY-10472:


Proposed PR merged. If you can check whether the snapshot builds work for your 
real-life example, that would be great.

> @AutoImplement is failing when covariant returns are involved
> -
>
> Key: GROOVY-10472
> URL: https://issues.apache.org/jira/browse/GROOVY-10472
> Project: Groovy
>  Issue Type: Bug
>  Components: Compiler
>Reporter: Phaninra
>Assignee: Paul King
>Priority: Major
> Fix For: 3.0.10, 4.0.1
>
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> {code:java}
> @AutoImplement{code}
>  is failing when (Java) covariant returns are involved. 
>  
> Copy the following into GroovyConsole and hit run to reproduce the error.
> {code:java}
> import groovy.transform.*
> @CompileStatic
> interface Super {
>     Iterable findAll()
> }
> @CompileStatic
> interface Sub extends Super {
>     List findAll() // a List instead of an Iterable
> }
> @AutoImplement
> @CompileStatic
> class ThisClassFails implements Sub{} {code}
>  
> Error will look like 
> {code:java}
> 1 compilation error:
> The return type of java.lang.Iterable findAll() in ThisClassFails is 
> incompatible with java.util.List in Sub
> . At [14:1]  at line: 14, column: 1 {code}
>  
> Refs:
>  - Real life example: 
> [https://docs.spring.io/spring-data/jpa/docs/current/api/org/springframework/data/jpa/repository/JpaRepository.html]
>  Look at all variations of `findAll` methods in that interface and super - 
> some use Iterable and some use List. 
>  - Covariant return type : [https://www.javatpoint.com/covariant-return-type]
>  
>  



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Commented] (GROOVY-10472) @AutoImplement is failing when covariant returns are involved

2022-02-13 Thread Paul King (Jira)


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

Paul King commented on GROOVY-10472:


Proposed PR:
https://github.com/apache/groovy/pull/1684

> @AutoImplement is failing when covariant returns are involved
> -
>
> Key: GROOVY-10472
> URL: https://issues.apache.org/jira/browse/GROOVY-10472
> Project: Groovy
>  Issue Type: Bug
>  Components: Compiler
>Reporter: Phaninra
>Assignee: Paul King
>Priority: Major
> Fix For: 3.0.10, 4.0.1
>
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> {code:java}
> @AutoImplement{code}
>  is failing when (Java) covariant returns are involved. 
>  
> Copy the following into GroovyConsole and hit run to reproduce the error.
> {code:java}
> import groovy.transform.*
> @CompileStatic
> interface Super {
>     Iterable findAll()
> }
> @CompileStatic
> interface Sub extends Super {
>     List findAll() // a List instead of an Iterable
> }
> @AutoImplement
> @CompileStatic
> class ThisClassFails implements Sub{} {code}
>  
> Error will look like 
> {code:java}
> 1 compilation error:
> The return type of java.lang.Iterable findAll() in ThisClassFails is 
> incompatible with java.util.List in Sub
> . At [14:1]  at line: 14, column: 1 {code}
>  
> Refs:
>  - Real life example: 
> [https://docs.spring.io/spring-data/jpa/docs/current/api/org/springframework/data/jpa/repository/JpaRepository.html]
>  Look at all variations of `findAll` methods in that interface and super - 
> some use Iterable and some use List. 
>  - Covariant return type : [https://www.javatpoint.com/covariant-return-type]
>  
>  



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] (GROOVY-10472) @AutoImplement is failing when covariant returns are involved

2022-02-13 Thread Paul King (Jira)


[ https://issues.apache.org/jira/browse/GROOVY-10472 ]


Paul King deleted comment on GROOVY-10472:


was (Author: paulk):
Proposed PR merged. If you can check whether the snapshot builds work for your 
real-life example, that would be great.

> @AutoImplement is failing when covariant returns are involved
> -
>
> Key: GROOVY-10472
> URL: https://issues.apache.org/jira/browse/GROOVY-10472
> Project: Groovy
>  Issue Type: Bug
>  Components: Compiler
>Reporter: Phaninra
>Assignee: Paul King
>Priority: Major
> Fix For: 3.0.10, 4.0.1
>
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> {code:java}
> @AutoImplement{code}
>  is failing when (Java) covariant returns are involved. 
>  
> Copy the following into GroovyConsole and hit run to reproduce the error.
> {code:java}
> import groovy.transform.*
> @CompileStatic
> interface Super {
>     Iterable findAll()
> }
> @CompileStatic
> interface Sub extends Super {
>     List findAll() // a List instead of an Iterable
> }
> @AutoImplement
> @CompileStatic
> class ThisClassFails implements Sub{} {code}
>  
> Error will look like 
> {code:java}
> 1 compilation error:
> The return type of java.lang.Iterable findAll() in ThisClassFails is 
> incompatible with java.util.List in Sub
> . At [14:1]  at line: 14, column: 1 {code}
>  
> Refs:
>  - Real life example: 
> [https://docs.spring.io/spring-data/jpa/docs/current/api/org/springframework/data/jpa/repository/JpaRepository.html]
>  Look at all variations of `findAll` methods in that interface and super - 
> some use Iterable and some use List. 
>  - Covariant return type : [https://www.javatpoint.com/covariant-return-type]
>  
>  



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Resolved] (GROOVY-10472) @AutoImplement is failing when covariant returns are involved

2022-02-13 Thread Paul King (Jira)


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

Paul King resolved GROOVY-10472.

Fix Version/s: 3.0.10
   4.0.1
 Assignee: Paul King
   Resolution: Fixed

Proposed PR merged. If you can check whether the snapshot builds work for your 
real-life example, that would be great.

> @AutoImplement is failing when covariant returns are involved
> -
>
> Key: GROOVY-10472
> URL: https://issues.apache.org/jira/browse/GROOVY-10472
> Project: Groovy
>  Issue Type: Bug
>  Components: Compiler
>Reporter: Phaninra
>Assignee: Paul King
>Priority: Major
> Fix For: 3.0.10, 4.0.1
>
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> {code:java}
> @AutoImplement{code}
>  is failing when (Java) covariant returns are involved. 
>  
> Copy the following into GroovyConsole and hit run to reproduce the error.
> {code:java}
> import groovy.transform.*
> @CompileStatic
> interface Super {
>     Iterable findAll()
> }
> @CompileStatic
> interface Sub extends Super {
>     List findAll() // a List instead of an Iterable
> }
> @AutoImplement
> @CompileStatic
> class ThisClassFails implements Sub{} {code}
>  
> Error will look like 
> {code:java}
> 1 compilation error:
> The return type of java.lang.Iterable findAll() in ThisClassFails is 
> incompatible with java.util.List in Sub
> . At [14:1]  at line: 14, column: 1 {code}
>  
> Refs:
>  - Real life example: 
> [https://docs.spring.io/spring-data/jpa/docs/current/api/org/springframework/data/jpa/repository/JpaRepository.html]
>  Look at all variations of `findAll` methods in that interface and super - 
> some use Iterable and some use List. 
>  - Covariant return type : [https://www.javatpoint.com/covariant-return-type]
>  
>  



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[GitHub] [groovy] asfgit merged pull request #1684: GROOVY-10472: @AutoImplement is failing when covariant returns are in…

2022-02-13 Thread GitBox


asfgit merged pull request #1684:
URL: https://github.com/apache/groovy/pull/1684


   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: notifications-unsubscr...@groovy.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org




[GitHub] [groovy] paulk-asert commented on pull request #1683: Add support for Java 15 target

2022-02-13 Thread GitBox


paulk-asert commented on pull request #1683:
URL: https://github.com/apache/groovy/pull/1683#issuecomment-1038730513


   Merged, thanks!


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: notifications-unsubscr...@groovy.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org




[GitHub] [groovy] paulk-asert merged pull request #1683: Add support for Java 15 target

2022-02-13 Thread GitBox


paulk-asert merged pull request #1683:
URL: https://github.com/apache/groovy/pull/1683


   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: notifications-unsubscr...@groovy.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org




[jira] [Resolved] (GROOVY-10479) Disable Ant tests which don't fork under JDK18

2022-02-13 Thread Paul King (Jira)


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

Paul King resolved GROOVY-10479.

Fix Version/s: 4.0.1
 Assignee: Paul King
   Resolution: Fixed

> Disable Ant tests which don't fork under JDK18
> --
>
> Key: GROOVY-10479
> URL: https://issues.apache.org/jira/browse/GROOVY-10479
> Project: Groovy
>  Issue Type: Task
>Reporter: Paul King
>Assignee: Paul King
>Priority: Major
> Fix For: 4.0.1
>
>
> Due to [JEP-411|https://openjdk.java.net/jeps/411], the security manager is 
> being slowly phased out. This results in warnings on JDK17 and runtime 
> exceptions on JDK18. Groovy is already making progress on how to handle that 
> change in other areas. This issue is specifically to disable Ant tests on 
> JDK18 until such time as Ant itself no longer has the issue as per [Ant 
> bugzilla issue 65381|https://bz.apache.org/bugzilla/show_bug.cgi?id=65381]. 
> If Ant fixes or implements its own workaround mechanism our goal would be to 
> re-enable the tests affected by this issue.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Updated] (GROOVY-10479) Disable Ant tests which don't fork under JDK18

2022-02-13 Thread Paul King (Jira)


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

Paul King updated GROOVY-10479:
---
Description: Due to [JEP-411|https://openjdk.java.net/jeps/411], the 
security manager is being slowly phased out. This results in warnings on JDK17 
and runtime exceptions on JDK18. Groovy is already making progress on how to 
handle that change in other areas. This issue is specifically to disable Ant 
tests on JDK18 until such time as Ant itself no longer has the issue as per 
[Ant bugzilla issue 
65381|https://bz.apache.org/bugzilla/show_bug.cgi?id=65381]. If Ant fixes or 
implements its own workaround mechanism our goal would be to re-enable the 
tests affected by this issue.  (was: Due to 
[JEP-411|https://openjdk.java.net/jeps/411], the security manager is being 
slowly phased out. This results in warnings on JDK17 and runtime exceptions on 
JDK18. Groovy is already making progress on how to handle that change in other 
areas. This issue is specifically to disable Ant tests on JDK18 until such time 
as Ant itself no longer has the issue as per [Ant bugzilla issue 
65381|https://bz.apache.org/bugzilla/show_bug.cgi?id=65381]. If Ant fixes or 
implements a mechanism our goal would be to re-enable the tests affected by 
this issue.)

> Disable Ant tests which don't fork under JDK18
> --
>
> Key: GROOVY-10479
> URL: https://issues.apache.org/jira/browse/GROOVY-10479
> Project: Groovy
>  Issue Type: Task
>Reporter: Paul King
>Priority: Major
>
> Due to [JEP-411|https://openjdk.java.net/jeps/411], the security manager is 
> being slowly phased out. This results in warnings on JDK17 and runtime 
> exceptions on JDK18. Groovy is already making progress on how to handle that 
> change in other areas. This issue is specifically to disable Ant tests on 
> JDK18 until such time as Ant itself no longer has the issue as per [Ant 
> bugzilla issue 65381|https://bz.apache.org/bugzilla/show_bug.cgi?id=65381]. 
> If Ant fixes or implements its own workaround mechanism our goal would be to 
> re-enable the tests affected by this issue.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Updated] (GROOVY-10479) Disable Ant tests which don't fork under JDK18

2022-02-13 Thread Paul King (Jira)


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

Paul King updated GROOVY-10479:
---
Description: Due to [JEP-411|https://openjdk.java.net/jeps/411], the 
security manager is being slowly phased out. This results in warnings on JDK17 
and runtime exceptions on JDK18. Groovy is already making progress on how to 
handle that change in other areas. This issue is specifically to disable Ant 
tests on JDK18 until such time as Ant itself no longer has the issue as per 
[Ant bugzilla issue 
65381|https://bz.apache.org/bugzilla/show_bug.cgi?id=65381]. If Ant fixes or 
implements a mechanism our goal would be to re-enable the tests affected by 
this issue.  (was: Due to [JEP-411|[https://openjdk.java.net/jeps/411],] the 
security manager is being slowly phased out. This results in warnings on JDK17 
and runtime exceptions on JDK18. Groovy is already making progress on how to 
handle that change in other areas. This issue is specifically to disable Ant 
tests on JDK18 until such time as Ant itself no longer has the issue as per 
[Ant bugzilla issue 
65381|[https://bz.apache.org/bugzilla/show_bug.cgi?id=65381]]. If Ant fixes or 
implements a mechanism our goal would be to re-enable the tests affected by 
this issue.)

> Disable Ant tests which don't fork under JDK18
> --
>
> Key: GROOVY-10479
> URL: https://issues.apache.org/jira/browse/GROOVY-10479
> Project: Groovy
>  Issue Type: Task
>Reporter: Paul King
>Priority: Major
>
> Due to [JEP-411|https://openjdk.java.net/jeps/411], the security manager is 
> being slowly phased out. This results in warnings on JDK17 and runtime 
> exceptions on JDK18. Groovy is already making progress on how to handle that 
> change in other areas. This issue is specifically to disable Ant tests on 
> JDK18 until such time as Ant itself no longer has the issue as per [Ant 
> bugzilla issue 65381|https://bz.apache.org/bugzilla/show_bug.cgi?id=65381]. 
> If Ant fixes or implements a mechanism our goal would be to re-enable the 
> tests affected by this issue.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Created] (GROOVY-10479) Disable Ant tests which don't fork under JDK18

2022-02-13 Thread Paul King (Jira)
Paul King created GROOVY-10479:
--

 Summary: Disable Ant tests which don't fork under JDK18
 Key: GROOVY-10479
 URL: https://issues.apache.org/jira/browse/GROOVY-10479
 Project: Groovy
  Issue Type: Task
Reporter: Paul King


Due to [JEP-411|[https://openjdk.java.net/jeps/411],] the security manager is 
being slowly phased out. This results in warnings on JDK17 and runtime 
exceptions on JDK18. Groovy is already making progress on how to handle that 
change in other areas. This issue is specifically to disable Ant tests on JDK18 
until such time as Ant itself no longer has the issue as per [Ant bugzilla 
issue 65381|[https://bz.apache.org/bugzilla/show_bug.cgi?id=65381]]. If Ant 
fixes or implements a mechanism our goal would be to re-enable the tests 
affected by this issue.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Closed] (GROOVY-10475) Groovy console fails to launch if Jar built by Maven

2022-02-13 Thread Paul King (Jira)


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

Paul King closed GROOVY-10475.
--
Resolution: Not A Problem

Not an inconvenience at all. Thanks for raising the issue. I am sure others who 
are trying to do similar things in the future will appreciate knowing the 
solution you found.

> Groovy console fails to launch if Jar built by Maven
> 
>
> Key: GROOVY-10475
> URL: https://issues.apache.org/jira/browse/GROOVY-10475
> Project: Groovy
>  Issue Type: Bug
>  Components: Groovy Console
>Affects Versions: 3.0.9, 4.0.0
> Environment: Ubuntu 18.04/20.04, Debian 10
> OpenJDK 11.0.13
> Groovy 3.0.9/4.0.0
> Maven 3.6.0
>Reporter: Olga Lobanova
>Priority: Major
> Attachments: groovy-console-test.tgz
>
>
> The same error like in GROOVY-8253 still exists for Groovy 3(or 4) and Java 
> 11 if Jar with main method is build by Maven.
> Use to reproduce the attached project  [^groovy-console-test.tgz]
> Execute via:
> {noformat}
> mvn package
> java -jar ./target/my-app-1.0-SNAPSHOT.jar
> {noformat}
> The exception stacktrace:
> {noformat}
> Exception in thread "main" groovy.lang.MissingMethodException: No signature 
> of method: javax.swing.JMenu.setMnemonic() is applicable for argument types: 
> (String) values: [F]
> Possible solutions: setMnemonic(char), setMnemonic(int), getMnemonic()
>   at 
> org.codehaus.groovy.runtime.ScriptBytecodeAdapter.unwrap(ScriptBytecodeAdapter.java:72)
>   at 
> org.codehaus.groovy.runtime.ScriptBytecodeAdapter.unwrap(ScriptBytecodeAdapter.java:78)
>   at 
> org.codehaus.groovy.runtime.callsite.PogoMetaClassSite.callCurrent(PogoMetaClassSite.java:82)
>   at 
> org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:194)
>   at 
> groovy.console.ui.view.BasicMenuBar$_run_closure1.doCall(BasicMenuBar.groovy:22)
>   at 
> groovy.console.ui.view.BasicMenuBar$_run_closure1.doCall(BasicMenuBar.groovy)
>   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.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:343)
>   at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:328)
>   at 
> org.codehaus.groovy.runtime.metaclass.ClosureMetaClass.invokeMethod(ClosureMetaClass.java:279)
>   at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1009)
>   at groovy.lang.Closure.call(Closure.java:418)
>   at groovy.lang.Closure.call(Closure.java:412)
>   at 
> groovy.util.FactoryBuilderSupport.dispatchNodeCall(FactoryBuilderSupport.java:892)
>   at 
> groovy.util.FactoryBuilderSupport.doInvokeMethod(FactoryBuilderSupport.java:784)
>   at 
> groovy.util.FactoryBuilderSupport.invokeMethod(FactoryBuilderSupport.java:503)
>   at 
> groovy.util.FactoryInterceptorMetaClass.invokeMethod(FactoryBuilderSupport.java:1342)
>   at 
> org.codehaus.groovy.runtime.callsite.PogoMetaClassSite.callCurrent(PogoMetaClassSite.java:75)
>   at 
> org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallCurrent(CallSiteArray.java:50)
>   at 
> org.codehaus.groovy.runtime.callsite.PogoMetaClassSite.callCurrent(PogoMetaClassSite.java:85)
>   at 
> org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:185)
>   at groovy.console.ui.view.BasicMenuBar.run(BasicMenuBar.groovy:21)
>   at 
> groovy.util.FactoryBuilderSupport.build(FactoryBuilderSupport.java:1174)
>   at 
> groovy.util.FactoryBuilderSupport.build(FactoryBuilderSupport.java:1157)
>   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.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:343)
>   at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:328)
>   at groovy.lang.MetaClassImpl.doInvokeMethod(MetaClassImpl.java:1369)
>   at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1103)
>   at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1009)
>   at 
> org.codehaus.groovy.runtime.InvokerHelper.invokePogoMethod(InvokerHelper.java:610)
>   at 
> org.codehaus.groovy.runtime.I

[jira] [Commented] (GROOVY-10475) Groovy console fails to launch if Jar built by Maven

2022-02-13 Thread Olga Lobanova (Jira)


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

Olga Lobanova commented on GROOVY-10475:


Hello [~paulk].

While researching how we can pre-merge extensions from modules via Maven, we 
found that the solution already exists, that is the 
{{GroovyResourceTransformer}}:
https://maven.apache.org/plugins/maven-shade-plugin/examples/resource-transformers.html#GroovyResourceTransformer

If the shaded jar is built via maven-shade-plugin with 
GroovyResourceTransformer, then the 
{{META-INF/groovy/org.codehaus.groovy.runtime.ExtensionModule}} file lists 
extensions from all Groovy modules that are included in groovy-all. In this 
case the Groovy console starts and runs without errors.  :)

Thank you again for your help and sorry for the inconvenience.

You can close this issue.

Best regards,
Olga

> Groovy console fails to launch if Jar built by Maven
> 
>
> Key: GROOVY-10475
> URL: https://issues.apache.org/jira/browse/GROOVY-10475
> Project: Groovy
>  Issue Type: Bug
>  Components: Groovy Console
>Affects Versions: 3.0.9, 4.0.0
> Environment: Ubuntu 18.04/20.04, Debian 10
> OpenJDK 11.0.13
> Groovy 3.0.9/4.0.0
> Maven 3.6.0
>Reporter: Olga Lobanova
>Priority: Major
> Attachments: groovy-console-test.tgz
>
>
> The same error like in GROOVY-8253 still exists for Groovy 3(or 4) and Java 
> 11 if Jar with main method is build by Maven.
> Use to reproduce the attached project  [^groovy-console-test.tgz]
> Execute via:
> {noformat}
> mvn package
> java -jar ./target/my-app-1.0-SNAPSHOT.jar
> {noformat}
> The exception stacktrace:
> {noformat}
> Exception in thread "main" groovy.lang.MissingMethodException: No signature 
> of method: javax.swing.JMenu.setMnemonic() is applicable for argument types: 
> (String) values: [F]
> Possible solutions: setMnemonic(char), setMnemonic(int), getMnemonic()
>   at 
> org.codehaus.groovy.runtime.ScriptBytecodeAdapter.unwrap(ScriptBytecodeAdapter.java:72)
>   at 
> org.codehaus.groovy.runtime.ScriptBytecodeAdapter.unwrap(ScriptBytecodeAdapter.java:78)
>   at 
> org.codehaus.groovy.runtime.callsite.PogoMetaClassSite.callCurrent(PogoMetaClassSite.java:82)
>   at 
> org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:194)
>   at 
> groovy.console.ui.view.BasicMenuBar$_run_closure1.doCall(BasicMenuBar.groovy:22)
>   at 
> groovy.console.ui.view.BasicMenuBar$_run_closure1.doCall(BasicMenuBar.groovy)
>   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.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:343)
>   at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:328)
>   at 
> org.codehaus.groovy.runtime.metaclass.ClosureMetaClass.invokeMethod(ClosureMetaClass.java:279)
>   at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1009)
>   at groovy.lang.Closure.call(Closure.java:418)
>   at groovy.lang.Closure.call(Closure.java:412)
>   at 
> groovy.util.FactoryBuilderSupport.dispatchNodeCall(FactoryBuilderSupport.java:892)
>   at 
> groovy.util.FactoryBuilderSupport.doInvokeMethod(FactoryBuilderSupport.java:784)
>   at 
> groovy.util.FactoryBuilderSupport.invokeMethod(FactoryBuilderSupport.java:503)
>   at 
> groovy.util.FactoryInterceptorMetaClass.invokeMethod(FactoryBuilderSupport.java:1342)
>   at 
> org.codehaus.groovy.runtime.callsite.PogoMetaClassSite.callCurrent(PogoMetaClassSite.java:75)
>   at 
> org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallCurrent(CallSiteArray.java:50)
>   at 
> org.codehaus.groovy.runtime.callsite.PogoMetaClassSite.callCurrent(PogoMetaClassSite.java:85)
>   at 
> org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:185)
>   at groovy.console.ui.view.BasicMenuBar.run(BasicMenuBar.groovy:21)
>   at 
> groovy.util.FactoryBuilderSupport.build(FactoryBuilderSupport.java:1174)
>   at 
> groovy.util.FactoryBuilderSupport.build(FactoryBuilderSupport.java:1157)
>   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/ja

[jira] [Comment Edited] (GROOVY-10478) Groovy4: java.lang.VerifyError: Bad invokespecial instruction: interface method reference is in an indirect superinterface.

2022-02-13 Thread Eric Milles (Jira)


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

Eric Milles edited comment on GROOVY-10478 at 2/13/22, 8:47 PM:


Are you able to track down the source of the method call or reference?  Looks 
like maybe {{getTS_UPDATED}}.  This is possibly related to GROOVY-10362 and 
GROOVY-9853.


was (Author: emilles):
Are you able to track down the source of the method call or reference?  Looks 
like {{getTS_UPDATED}}.  This is possibly related to GROOVY-10362 and 
GROOVY-9853.

> Groovy4: java.lang.VerifyError: Bad invokespecial instruction: interface 
> method reference is in an indirect superinterface.
> ---
>
> Key: GROOVY-10478
> URL: https://issues.apache.org/jira/browse/GROOVY-10478
> Project: Groovy
>  Issue Type: Bug
>  Components: bytecode
>Affects Versions: 4.0.0
> Environment: os.name: Windows 10
> groovy.version: 4.0.0
> java.version: 11.0.13
> java.runtime.version: 11.0.13+8
> java.runtime.name: OpenJDK Runtime Environment
> java.vendor.version: Temurin-11.0.13+8
> java.vm.version: 11.0.13+8
> java.vm.name: OpenJDK 64-Bit Server VM
>Reporter: mgroovy
>Priority: Major
>
> * Tried to execute my Groovy 3 to Groovy 4 performance degradation test case 
> (see GROOVY-10307)
> *  Code worked with Groovy 4.0.0-RC1, but Groovy 4.0.0 throws RTE:
> {code:java}
> java.lang.VerifyError: Bad invokespecial instruction: interface method 
> reference is in an indirect superinterface.{code}
> * Standalone test to reproduce error upcoming
> * The error occurs when trying to access a class that represents a concrete 
> database table, deriving from a shared database table base class with certain 
> shared properties/methods added through a hierarchy of Groovy traits, with 
> the properties/methods also occuring in interfaces implemented through said 
> traits
> * The error only occurs if that class is @CompileStatic annotated
> * The error reported seems to be non-deterministically picked from any of the 
> traits' properties/methods
> * Full error:
> {code}
> java.lang.VerifyError: Bad invokespecial instruction: interface method 
> reference is in an indirect superinterface.
> Exception Details:
>   Location:
> 
> schema/tables/entities/variation/editor/FOO_Table.schema_tables_CreatedUpdatedColumnsTabletrait$super$getTS_UPDATED()Lgroovysql/sql/column/Column;
>  @38: invokespecial
>   Reason:
> Error exists in the bytecode
>   Bytecode:
> 000: 2ac1 01d2 9900 212a ba01 d500 00b9 01d9
> 010: 0100 1303 3403 bd01 9eb8 01e0 ba01 e300
> 020: 00b0  bf2a b703 38b0   
>   Stackmap Table:
> full_frame(@34,{},{Object[#487]})
> append_frame(@37,Object[#2])
> {code}
> * Stacktrace starting with JUnit 5 test invocation:
> {code}
>   at java.base/java.lang.Class.getDeclaredConstructors0(Native Method)
>   at 
> java.base/java.lang.Class.privateGetDeclaredConstructors(Class.java:3137)
>   at java.base/java.lang.Class.getDeclaredConstructors(Class.java:2357)
>   at 
> org.codehaus.groovy.reflection.CachedClass$2.lambda$initValue$4(CachedClass.java:69)
>   at java.base/java.security.AccessController.doPrivileged(Native Method)
>   at org.codehaus.groovy.vmplugin.v8.Java8.doPrivileged(Java8.java:628)
>   at 
> org.codehaus.groovy.reflection.CachedClass$2.initValue(CachedClass.java:74)
>   at 
> org.codehaus.groovy.reflection.CachedClass$2.initValue(CachedClass.java:64)
>   at 
> org.codehaus.groovy.util.LazyReference.getLocked(LazyReference.java:50)
>   at org.codehaus.groovy.util.LazyReference.get(LazyReference.java:37)
>   at 
> org.codehaus.groovy.reflection.CachedClass.getConstructors(CachedClass.java:258)
>   at groovy.lang.MetaClassImpl.(MetaClassImpl.java:232)
>   at groovy.lang.MetaClassImpl.(MetaClassImpl.java:242)
>   at 
> groovy.lang.MetaClassRegistry$MetaClassCreationHandle.createNormalMetaClass(MetaClassRegistry.java:166)
>   at 
> groovy.lang.MetaClassRegistry$MetaClassCreationHandle.createWithCustomLookup(MetaClassRegistry.java:156)
>   at 
> groovy.lang.MetaClassRegistry$MetaClassCreationHandle.create(MetaClassRegistry.java:139)
>   at 
> org.codehaus.groovy.reflection.ClassInfo.getMetaClassUnderLock(ClassInfo.java:271)
>   at 
> org.codehaus.groovy.reflection.ClassInfo.getMetaClass(ClassInfo.java:314)
>   at 
> org.codehaus.groovy.runtime.metaclass.MetaClassRegistryImpl.getMetaClass(MetaClassRegistryImpl.java:269)
>   at 
> org.codehaus.groovy.vmplugin.v8.Selector$MethodSelector.getMetaClass(Selector.java:575)
>   at 
> org.codehaus.groovy.vmplugin.v8.Selector$MethodSelector.setCallSit

[jira] [Comment Edited] (GROOVY-10478) Groovy4: java.lang.VerifyError: Bad invokespecial instruction: interface method reference is in an indirect superinterface.

2022-02-13 Thread Eric Milles (Jira)


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

Eric Milles edited comment on GROOVY-10478 at 2/13/22, 8:46 PM:


Are you able to track down the source of the method call or reference?  Looks 
like {{getTS_UPDATED}}.  This is possibly related to GROOVY-10362 and 
GROOVY-9853.


was (Author: emilles):
Are you able to track down the source of the method call or reference?  This is 
possibly related to GROOVY-10362 and GROOVY-9853.

> Groovy4: java.lang.VerifyError: Bad invokespecial instruction: interface 
> method reference is in an indirect superinterface.
> ---
>
> Key: GROOVY-10478
> URL: https://issues.apache.org/jira/browse/GROOVY-10478
> Project: Groovy
>  Issue Type: Bug
>  Components: bytecode
>Affects Versions: 4.0.0
> Environment: os.name: Windows 10
> groovy.version: 4.0.0
> java.version: 11.0.13
> java.runtime.version: 11.0.13+8
> java.runtime.name: OpenJDK Runtime Environment
> java.vendor.version: Temurin-11.0.13+8
> java.vm.version: 11.0.13+8
> java.vm.name: OpenJDK 64-Bit Server VM
>Reporter: mgroovy
>Priority: Major
>
> * Tried to execute my Groovy 3 to Groovy 4 performance degradation test case 
> (see GROOVY-10307)
> *  Code worked with Groovy 4.0.0-RC1, but Groovy 4.0.0 throws RTE:
> {code:java}
> java.lang.VerifyError: Bad invokespecial instruction: interface method 
> reference is in an indirect superinterface.{code}
> * Standalone test to reproduce error upcoming
> * The error occurs when trying to access a class that represents a concrete 
> database table, deriving from a shared database table base class with certain 
> shared properties/methods added through a hierarchy of Groovy traits, with 
> the properties/methods also occuring in interfaces implemented through said 
> traits
> * The error only occurs if that class is @CompileStatic annotated
> * The error reported seems to be non-deterministically picked from any of the 
> traits' properties/methods
> * Full error:
> {code}
> java.lang.VerifyError: Bad invokespecial instruction: interface method 
> reference is in an indirect superinterface.
> Exception Details:
>   Location:
> 
> schema/tables/entities/variation/editor/FOO_Table.schema_tables_CreatedUpdatedColumnsTabletrait$super$getTS_UPDATED()Lgroovysql/sql/column/Column;
>  @38: invokespecial
>   Reason:
> Error exists in the bytecode
>   Bytecode:
> 000: 2ac1 01d2 9900 212a ba01 d500 00b9 01d9
> 010: 0100 1303 3403 bd01 9eb8 01e0 ba01 e300
> 020: 00b0  bf2a b703 38b0   
>   Stackmap Table:
> full_frame(@34,{},{Object[#487]})
> append_frame(@37,Object[#2])
> {code}
> * Stacktrace starting with JUnit 5 test invocation:
> {code}
>   at java.base/java.lang.Class.getDeclaredConstructors0(Native Method)
>   at 
> java.base/java.lang.Class.privateGetDeclaredConstructors(Class.java:3137)
>   at java.base/java.lang.Class.getDeclaredConstructors(Class.java:2357)
>   at 
> org.codehaus.groovy.reflection.CachedClass$2.lambda$initValue$4(CachedClass.java:69)
>   at java.base/java.security.AccessController.doPrivileged(Native Method)
>   at org.codehaus.groovy.vmplugin.v8.Java8.doPrivileged(Java8.java:628)
>   at 
> org.codehaus.groovy.reflection.CachedClass$2.initValue(CachedClass.java:74)
>   at 
> org.codehaus.groovy.reflection.CachedClass$2.initValue(CachedClass.java:64)
>   at 
> org.codehaus.groovy.util.LazyReference.getLocked(LazyReference.java:50)
>   at org.codehaus.groovy.util.LazyReference.get(LazyReference.java:37)
>   at 
> org.codehaus.groovy.reflection.CachedClass.getConstructors(CachedClass.java:258)
>   at groovy.lang.MetaClassImpl.(MetaClassImpl.java:232)
>   at groovy.lang.MetaClassImpl.(MetaClassImpl.java:242)
>   at 
> groovy.lang.MetaClassRegistry$MetaClassCreationHandle.createNormalMetaClass(MetaClassRegistry.java:166)
>   at 
> groovy.lang.MetaClassRegistry$MetaClassCreationHandle.createWithCustomLookup(MetaClassRegistry.java:156)
>   at 
> groovy.lang.MetaClassRegistry$MetaClassCreationHandle.create(MetaClassRegistry.java:139)
>   at 
> org.codehaus.groovy.reflection.ClassInfo.getMetaClassUnderLock(ClassInfo.java:271)
>   at 
> org.codehaus.groovy.reflection.ClassInfo.getMetaClass(ClassInfo.java:314)
>   at 
> org.codehaus.groovy.runtime.metaclass.MetaClassRegistryImpl.getMetaClass(MetaClassRegistryImpl.java:269)
>   at 
> org.codehaus.groovy.vmplugin.v8.Selector$MethodSelector.getMetaClass(Selector.java:575)
>   at 
> org.codehaus.groovy.vmplugin.v8.Selector$MethodSelector.setCallSiteTarget(Selector.java:1006)
>   at

[jira] [Commented] (GROOVY-10478) Groovy4: java.lang.VerifyError: Bad invokespecial instruction: interface method reference is in an indirect superinterface.

2022-02-13 Thread Eric Milles (Jira)


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

Eric Milles commented on GROOVY-10478:
--

Are you able to track down the source of the method call or reference?  This is 
possibly related to GROOVY-10362 and GROOVY-9853.

> Groovy4: java.lang.VerifyError: Bad invokespecial instruction: interface 
> method reference is in an indirect superinterface.
> ---
>
> Key: GROOVY-10478
> URL: https://issues.apache.org/jira/browse/GROOVY-10478
> Project: Groovy
>  Issue Type: Bug
>  Components: bytecode
>Affects Versions: 4.0.0
> Environment: os.name: Windows 10
> groovy.version: 4.0.0
> java.version: 11.0.13
> java.runtime.version: 11.0.13+8
> java.runtime.name: OpenJDK Runtime Environment
> java.vendor.version: Temurin-11.0.13+8
> java.vm.version: 11.0.13+8
> java.vm.name: OpenJDK 64-Bit Server VM
>Reporter: mgroovy
>Priority: Major
>
> * Tried to execute my Groovy 3 to Groovy 4 performance degradation test case 
> (see GROOVY-10307)
> *  Code worked with Groovy 4.0.0-RC1, but Groovy 4.0.0 throws RTE:
> {code:java}
> java.lang.VerifyError: Bad invokespecial instruction: interface method 
> reference is in an indirect superinterface.{code}
> * Standalone test to reproduce error upcoming
> * The error occurs when trying to access a class that represents a concrete 
> database table, deriving from a shared database table base class with certain 
> shared properties/methods added through a hierarchy of Groovy traits, with 
> the properties/methods also occuring in interfaces implemented through said 
> traits
> * The error only occurs if that class is @CompileStatic annotated
> * The error reported seems to be non-deterministically picked from any of the 
> traits' properties/methods
> * Full error:
> {code}
> java.lang.VerifyError: Bad invokespecial instruction: interface method 
> reference is in an indirect superinterface.
> Exception Details:
>   Location:
> 
> schema/tables/entities/variation/editor/FOO_Table.schema_tables_CreatedUpdatedColumnsTabletrait$super$getTS_UPDATED()Lgroovysql/sql/column/Column;
>  @38: invokespecial
>   Reason:
> Error exists in the bytecode
>   Bytecode:
> 000: 2ac1 01d2 9900 212a ba01 d500 00b9 01d9
> 010: 0100 1303 3403 bd01 9eb8 01e0 ba01 e300
> 020: 00b0  bf2a b703 38b0   
>   Stackmap Table:
> full_frame(@34,{},{Object[#487]})
> append_frame(@37,Object[#2])
> {code}
> * Stacktrace starting with JUnit 5 test invocation:
> {code}
>   at java.base/java.lang.Class.getDeclaredConstructors0(Native Method)
>   at 
> java.base/java.lang.Class.privateGetDeclaredConstructors(Class.java:3137)
>   at java.base/java.lang.Class.getDeclaredConstructors(Class.java:2357)
>   at 
> org.codehaus.groovy.reflection.CachedClass$2.lambda$initValue$4(CachedClass.java:69)
>   at java.base/java.security.AccessController.doPrivileged(Native Method)
>   at org.codehaus.groovy.vmplugin.v8.Java8.doPrivileged(Java8.java:628)
>   at 
> org.codehaus.groovy.reflection.CachedClass$2.initValue(CachedClass.java:74)
>   at 
> org.codehaus.groovy.reflection.CachedClass$2.initValue(CachedClass.java:64)
>   at 
> org.codehaus.groovy.util.LazyReference.getLocked(LazyReference.java:50)
>   at org.codehaus.groovy.util.LazyReference.get(LazyReference.java:37)
>   at 
> org.codehaus.groovy.reflection.CachedClass.getConstructors(CachedClass.java:258)
>   at groovy.lang.MetaClassImpl.(MetaClassImpl.java:232)
>   at groovy.lang.MetaClassImpl.(MetaClassImpl.java:242)
>   at 
> groovy.lang.MetaClassRegistry$MetaClassCreationHandle.createNormalMetaClass(MetaClassRegistry.java:166)
>   at 
> groovy.lang.MetaClassRegistry$MetaClassCreationHandle.createWithCustomLookup(MetaClassRegistry.java:156)
>   at 
> groovy.lang.MetaClassRegistry$MetaClassCreationHandle.create(MetaClassRegistry.java:139)
>   at 
> org.codehaus.groovy.reflection.ClassInfo.getMetaClassUnderLock(ClassInfo.java:271)
>   at 
> org.codehaus.groovy.reflection.ClassInfo.getMetaClass(ClassInfo.java:314)
>   at 
> org.codehaus.groovy.runtime.metaclass.MetaClassRegistryImpl.getMetaClass(MetaClassRegistryImpl.java:269)
>   at 
> org.codehaus.groovy.vmplugin.v8.Selector$MethodSelector.getMetaClass(Selector.java:575)
>   at 
> org.codehaus.groovy.vmplugin.v8.Selector$MethodSelector.setCallSiteTarget(Selector.java:1006)
>   at 
> org.codehaus.groovy.vmplugin.v8.IndyInterface.fallback(IndyInterface.java:351)
>   at 
> org.codehaus.groovy.vmplugin.v8.IndyInterface.access$000(IndyInterface.java:49)
>   at 
> org.codehaus.groovy.vmplugin.v8.IndyInterface$Fa

[jira] [Updated] (GROOVY-10478) Groovy4: java.lang.VerifyError: Bad invokespecial instruction: interface method reference is in an indirect superinterface.

2022-02-13 Thread mgroovy (Jira)


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

mgroovy updated GROOVY-10478:
-
Description: 
* Tried to execute my Groovy 3 to Groovy 4 performance degradation test case 
(see GROOVY-10307)
*  Code worked with Groovy 4.0.0-RC1, but Groovy 4.0.0 throws RTE:
{code:java}
java.lang.VerifyError: Bad invokespecial instruction: interface method 
reference is in an indirect superinterface.{code}
* Standalone test to reproduce error upcoming
* The error occurs when trying to access a class that represents a concrete 
database table, deriving from a shared database table base class with certain 
shared properties/methods added through a hierarchy of Groovy traits, with the 
properties/methods also occuring in interfaces implemented through said traits
* The error only occurs if that class is @CompileStatic annotated
* The error reported seems to be non-deterministically picked from any of the 
traits' properties/methods
* Full error:
{code}
java.lang.VerifyError: Bad invokespecial instruction: interface method 
reference is in an indirect superinterface.
Exception Details:
  Location:

schema/tables/entities/variation/editor/FOO_Table.schema_tables_CreatedUpdatedColumnsTabletrait$super$getTS_UPDATED()Lgroovysql/sql/column/Column;
 @38: invokespecial
  Reason:
Error exists in the bytecode
  Bytecode:
000: 2ac1 01d2 9900 212a ba01 d500 00b9 01d9
010: 0100 1303 3403 bd01 9eb8 01e0 ba01 e300
020: 00b0  bf2a b703 38b0   
  Stackmap Table:
full_frame(@34,{},{Object[#487]})
append_frame(@37,Object[#2])
{code}

* Stacktrace starting with JUnit 5 test invocation:
{code}
at java.base/java.lang.Class.getDeclaredConstructors0(Native Method)
at 
java.base/java.lang.Class.privateGetDeclaredConstructors(Class.java:3137)
at java.base/java.lang.Class.getDeclaredConstructors(Class.java:2357)
at 
org.codehaus.groovy.reflection.CachedClass$2.lambda$initValue$4(CachedClass.java:69)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at org.codehaus.groovy.vmplugin.v8.Java8.doPrivileged(Java8.java:628)
at 
org.codehaus.groovy.reflection.CachedClass$2.initValue(CachedClass.java:74)
at 
org.codehaus.groovy.reflection.CachedClass$2.initValue(CachedClass.java:64)
at 
org.codehaus.groovy.util.LazyReference.getLocked(LazyReference.java:50)
at org.codehaus.groovy.util.LazyReference.get(LazyReference.java:37)
at 
org.codehaus.groovy.reflection.CachedClass.getConstructors(CachedClass.java:258)
at groovy.lang.MetaClassImpl.(MetaClassImpl.java:232)
at groovy.lang.MetaClassImpl.(MetaClassImpl.java:242)
at 
groovy.lang.MetaClassRegistry$MetaClassCreationHandle.createNormalMetaClass(MetaClassRegistry.java:166)
at 
groovy.lang.MetaClassRegistry$MetaClassCreationHandle.createWithCustomLookup(MetaClassRegistry.java:156)
at 
groovy.lang.MetaClassRegistry$MetaClassCreationHandle.create(MetaClassRegistry.java:139)
at 
org.codehaus.groovy.reflection.ClassInfo.getMetaClassUnderLock(ClassInfo.java:271)
at 
org.codehaus.groovy.reflection.ClassInfo.getMetaClass(ClassInfo.java:314)
at 
org.codehaus.groovy.runtime.metaclass.MetaClassRegistryImpl.getMetaClass(MetaClassRegistryImpl.java:269)
at 
org.codehaus.groovy.vmplugin.v8.Selector$MethodSelector.getMetaClass(Selector.java:575)
at 
org.codehaus.groovy.vmplugin.v8.Selector$MethodSelector.setCallSiteTarget(Selector.java:1006)
at 
org.codehaus.groovy.vmplugin.v8.IndyInterface.fallback(IndyInterface.java:351)
at 
org.codehaus.groovy.vmplugin.v8.IndyInterface.access$000(IndyInterface.java:49)
at 
org.codehaus.groovy.vmplugin.v8.IndyInterface$FallbackSupplier.get(IndyInterface.java:281)
at 
org.codehaus.groovy.vmplugin.v8.IndyInterface.lambda$fromCache$1(IndyInterface.java:301)
at java.base/java.util.HashMap.computeIfAbsent(HashMap.java:1134)
at 
org.codehaus.groovy.vmplugin.v8.CacheableCallSite.getAndPut(CacheableCallSite.java:61)
at 
org.codehaus.groovy.vmplugin.v8.IndyInterface.lambda$fromCache$2(IndyInterface.java:298)
at 
org.codehaus.groovy.vmplugin.v8.IndyInterface.doWithCallSite(IndyInterface.java:367)
at 
org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:295)
at groovy.groovybugs.v4_0_0.Groovy_4_0_0.java-lang-VerifyError - Bad 
invokespecial instruction - interface method reference is in an indirect 
superinterface(Groovy_4_0_0.groovy:42)
...
{code}

  was:
* Tried to execute my Groovy 3 to Groovy 4 performance degradation test case 
(see GROOVY-10307)
*  Code worked with Groovy 4.0.0-RC1, but Groovy 4.0.0 throws RTE:
{code:java}
java.lang.VerifyError: Bad invokespecial instruction: interface method 
reference is in an indirect superinterface.{code}
* T