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

Daniel Sun resolved GROOVY-10877.
---------------------------------
    Resolution: Fixed

> Record with ThreadInterruptibleASTTransformation applied fails to run
> ---------------------------------------------------------------------
>
>                 Key: GROOVY-10877
>                 URL: https://issues.apache.org/jira/browse/GROOVY-10877
>             Project: Groovy
>          Issue Type: Bug
>    Affects Versions: 4.0.6
>            Reporter: Daniel Sun
>            Assignee: Daniel Sun
>            Priority: Major
>             Fix For: 4.0.7
>
>
> {code:java}
> @groovy.transform.ThreadInterrupt
> record Point(int x, int y) {}
> def p = new Point(1, 2)
> assert 'Point[x=1, y=2]' == p.toString()
> {code}
> {code:java}
> java.lang.ClassFormatError: StackMapTable format error: reserved frame type
>       at java.base/java.lang.Class.getDeclaredConstructors0(Native Method)
>       at 
> java.base/java.lang.Class.privateGetDeclaredConstructors(Class.java:3373)
>       at java.base/java.lang.Class.getDeclaredConstructors(Class.java:2555)
>       at 
> org.codehaus.groovy.reflection.CachedClass$2.lambda$initValue$4(CachedClass.java:68)
>       at 
> java.base/java.security.AccessController.doPrivileged(AccessController.java:318)
>       at 
> org.codehaus.groovy.reflection.CachedClass.doPrivileged(CachedClass.java:138)
>       at 
> org.codehaus.groovy.reflection.CachedClass$2.initValue(CachedClass.java:73)
>       at 
> org.codehaus.groovy.reflection.CachedClass$2.initValue(CachedClass.java:63)
>       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:262)
>       at groovy.lang.MetaClassImpl.<init>(MetaClassImpl.java:233)
>       at groovy.lang.MetaClassImpl.<init>(MetaClassImpl.java:243)
>       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$InitSelector.getMetaClass(Selector.java:404)
>       at 
> org.codehaus.groovy.vmplugin.v8.Selector$MethodSelector.setCallSiteTarget(Selector.java:1021)
>       at 
> org.codehaus.groovy.vmplugin.v8.IndyInterface.fallback(IndyInterface.java:359)
>       at 
> org.codehaus.groovy.vmplugin.v8.IndyInterface$FallbackSupplier.get(IndyInterface.java:282)
>       at 
> org.codehaus.groovy.vmplugin.v8.IndyInterface.lambda$fromCache$1(IndyInterface.java:304)
>       at 
> org.codehaus.groovy.vmplugin.v8.CacheableCallSite.getAndPut(CacheableCallSite.java:70)
>       at 
> org.codehaus.groovy.vmplugin.v8.IndyInterface.lambda$fromCache$2(IndyInterface.java:301)
>       at 
> org.codehaus.groovy.vmplugin.v8.IndyInterface.doWithCallSite(IndyInterface.java:375)
>       at 
> org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:298)
>       at ConsoleScript10.run(ConsoleScript10:4)
>       at 
> groovy.lang.GroovyShell.runScriptOrMainOrTestOrRunnable(GroovyShell.java:287)
>       at groovy.lang.GroovyShell.run(GroovyShell.java:393)
>       at groovy.lang.GroovyShell.run(GroovyShell.java:372)
>       at groovy.lang.GroovyShell.run(GroovyShell.java:198)
>       at groovy.console.ui.Console$GroovySourceType.run(Console.groovy:1189)
>       at groovy.console.ui.Console.doRun(Console.groovy:1421)
>       at 
> java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>       at 
> java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
>       at 
> java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>       at java.base/java.lang.reflect.Method.invoke(Method.java:568)
>       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:342)
>       at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1010)
>       at 
> org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:321)
>       at 
> groovy.console.ui.Console$_runScriptImpl_closure23.doCall(Console.groovy:1379)
>       at 
> groovy.console.ui.Console$_runScriptImpl_closure23.doCall(Console.groovy)
>       at 
> java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>       at 
> java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
>       at 
> java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>       at java.base/java.lang.reflect.Method.invoke(Method.java:568)
>       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:1010)
>       at groovy.lang.Closure.call(Closure.java:418)
>       at groovy.lang.Closure.call(Closure.java:412)
>       at groovy.lang.Closure.run(Closure.java:500)
>       at java.base/java.lang.Thread.run(Thread.java:833)
> {code}



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

Reply via email to