Daniel Sun created GROOVY-11720: ----------------------------------- Summary: [GINQ] Failed to recognize sub-query in where clause Key: GROOVY-11720 URL: https://issues.apache.org/jira/browse/GROOVY-11720 Project: Groovy Issue Type: Bug Affects Versions: 5.0.0-beta-2, 4.0.28 Reporter: Daniel Sun Assignee: Daniel Sun
{code:java} assert [2] == GQ { from n in [1, 2, 3] where n == (from m in [1, 2] select max(m)) select n }.toList() {code} yields the following error: {code:java} groovy.lang.MissingPropertyException: No such property: m for class: ConsoleScript2 at org.codehaus.groovy.runtime.ScriptBytecodeAdapter.unwrap(ScriptBytecodeAdapter.java:69) at org.codehaus.groovy.vmplugin.v8.IndyGuardsFiltersAndSignatures.unwrap(IndyGuardsFiltersAndSignatures.java:163) at org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:344) at ConsoleScript2$_run_closure1$_closure2.doCall(ConsoleScript2:3) at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) at java.base/java.lang.reflect.Method.invoke(Method.java:580) at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:338) at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:274) at org.codehaus.groovy.runtime.metaclass.ClosureMetaClass.invokeMethod(ClosureMetaClass.java:270) at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1008) at groovy.lang.Closure.call(Closure.java:471) at org.codehaus.groovy.runtime.ConvertedClosure.invokeCustom(ConvertedClosure.java:54) at org.codehaus.groovy.runtime.ConversionHandler.invoke(ConversionHandler.java:114) at jdk.proxy1/jdk.proxy1.$Proxy27.test(Unknown Source) at java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:178) at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1708) at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509) at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499) at java.base/java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:921) at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) at java.base/java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:682) at org.apache.groovy.ginq.provider.collection.runtime.QueryableCollection.toList(QueryableCollection.java:580) at org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:344) at ConsoleScript2.run(ConsoleScript2:1) at groovy.lang.GroovyShell.runScriptOrMainOrTestOrRunnable(GroovyShell.java:290) at groovy.lang.GroovyShell.run(GroovyShell.java:422) at groovy.lang.GroovyShell.run(GroovyShell.java:401) at groovy.lang.GroovyShell.run(GroovyShell.java:201) 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.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) at java.base/java.lang.reflect.Method.invoke(Method.java:580) at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:338) at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:274) at org.codehaus.groovy.runtime.metaclass.ClosureMetaClass.invokeMethod(ClosureMetaClass.java:318) at org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:344) 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.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) at java.base/java.lang.reflect.Method.invoke(Method.java:580) at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:338) at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:274) at org.codehaus.groovy.runtime.metaclass.ClosureMetaClass.invokeMethod(ClosureMetaClass.java:270) at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1008) at groovy.lang.Closure.call(Closure.java:471) at groovy.lang.Closure.call(Closure.java:450) at groovy.lang.Closure.run(Closure.java:543) at java.base/java.lang.Thread.run(Thread.java:1583) {code} -- This message was sent by Atlassian Jira (v8.20.10#820010)