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

Arthur Sengileyev commented on GROOVY-10405:
--------------------------------------------

It is not a problem to fix this in our own codebase. If we reference the 
library, which used this AST transformation w/o CompileStatic annotation, then 
we are doomed. And as it could manifest in any of the referenced libraries this 
is pretty troublesome if not fixed in language runtime. But I will report 
potential fix to identified problematic dependencies.

Thank you.

> @AutoClone breaks in Java17 for File properties
> -----------------------------------------------
>
>                 Key: GROOVY-10405
>                 URL: https://issues.apache.org/jira/browse/GROOVY-10405
>             Project: Groovy
>          Issue Type: Bug
>    Affects Versions: 3.0.9
>         Environment: Java11 vs Java17
> Windows10, Ubuntu
>            Reporter: Aleks Tamarkin
>            Priority: Major
>             Fix For: 4.0.0-rc-1
>
>
> The following code works on Java11 but breaks on Java17
>  
> {code:java}
> import groovy.transform.AutoClone
> @AutoClone
> class Foo {
>     File file
>     String string
> }
> def foo = new Foo(file: new File('bar'), string: 'qux')
> foo.clone()
> {code}
> The error is
> {code:java}
> groovy.lang.MissingMethodException: No signature of method: 
> java.lang.Object.clone() is applicable for argument types: () values: []
> Possible solutions: collect(), collect(groovy.lang.Closure), 
> collect(java.util.Collection, groovy.lang.Closure), find(), any(), 
> use([Ljava.lang.Object;){code}
> This can be reproduced in GroovyConsole



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

Reply via email to