death lord created GROOVY-8322:
----------------------------------

             Summary: call() and call(Object) on Closure disallows for static 
dispatch of call(Object[])
                 Key: GROOVY-8322
                 URL: https://issues.apache.org/jira/browse/GROOVY-8322
             Project: Groovy
          Issue Type: Bug
    Affects Versions: 2.4.12
            Reporter: death lord
            Priority: Minor


I have something like this:


{code:java}
@groovy.transform.CompileStatic
class A {
    Closure x

    def call(...args) {
        x.call((Object[]) args)
    }

    static main(w) {
        def a = new A(x: { ...args -> println(args[0].toString()) })
        a(1, 2, 3)
    }
}
{code}

And the output is [1, 2, 3].

If I remove CompileStatic the output is 1.

I think the culprit is the call(Object) method in Closure



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to