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

ASF GitHub Bot commented on GROOVY-7995:
----------------------------------------

GitHub user blindpirate opened a pull request:

    https://github.com/apache/groovy/pull/460

    GROOVY-7995: Short syntax of closure call invokes wrong closure if wrapped 
in another closure and @CompileStatic is applied

    

You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/blindpirate/groovy groovy7995

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/groovy/pull/460.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #460
    
----
commit b2d84738986fc83a589e78ec205bb206318a1e4a
Author: zhangbo <zhan...@nanchao.org>
Date:   2016-09-16T00:29:11Z

    GROOVY-7922: Static type checking not strict enough in the presence of 
ambiguous method matching

commit be6396148d10f3a26983a0b93022639cf02a7839
Author: zhangbo <zhan...@nanchao.org>
Date:   2016-09-16T14:27:50Z

    remove comment: GROOVY-6970

commit f5be26b2b747659a325b3d87cd3986e3373bd465
Author: zhangbo <zhan...@nanchao.org>
Date:   2016-09-17T01:14:17Z

    use ParameterUtils method instead

commit 815e76b43a539a4c9e8cf3f8a1a2ff5fea13d55d
Author: zhangbo <zhan...@nanchao.org>
Date:   2016-09-18T06:54:52Z

    refactor to move redundant parameters

commit 65e9fd1db1776b506a56ea9ebb1fce4097973b52
Author: zhangbo <zhan...@nanchao.org>
Date:   2016-11-02T13:46:23Z

    resolve conflict

commit bc2d8374c06215a0adadd2bf507c29d928111df5
Author: zhangbo <zhan...@nanchao.org>
Date:   2016-11-10T02:54:21Z

    Merge remote-tracking branch 'upstream/master'

commit 07cd803c5ca7c4e9916d431da5c9edcdb7cf9853
Author: zhangbo <zhan...@nanchao.org>
Date:   2016-11-10T15:55:10Z

    fix groovy7995: CLOSURE_NO_ARG and CLOSURE_ONE_ARG are never used.

----


> Short syntax of closure call invokes wrong closure if wrapped in another 
> closure and @CompileStatic is applied
> --------------------------------------------------------------------------------------------------------------
>
>                 Key: GROOVY-7995
>                 URL: https://issues.apache.org/jira/browse/GROOVY-7995
>             Project: Groovy
>          Issue Type: Bug
>          Components: Static compilation
>    Affects Versions: 2.4.7
>            Reporter: Krzysztof Kowalczyk
>
> The following would fail:
> {code}
> ​import groovy.transform.CompileStatic
> @CompileStatic
> class Foo {
>      Closure c = { "ok" }
>      Closure wrap = {
>          c()
>      }
>      def run(){
>          wrap()
>      }
> }
> assert new Foo().run()​ == "ok"  // stack overflow
> {code}
> It works fine without CompileStatic or if invokation is done by c.call()



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to