[
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 <[email protected]>
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 <[email protected]>
Date: 2016-09-16T14:27:50Z
remove comment: GROOVY-6970
commit f5be26b2b747659a325b3d87cd3986e3373bd465
Author: zhangbo <[email protected]>
Date: 2016-09-17T01:14:17Z
use ParameterUtils method instead
commit 815e76b43a539a4c9e8cf3f8a1a2ff5fea13d55d
Author: zhangbo <[email protected]>
Date: 2016-09-18T06:54:52Z
refactor to move redundant parameters
commit 65e9fd1db1776b506a56ea9ebb1fce4097973b52
Author: zhangbo <[email protected]>
Date: 2016-11-02T13:46:23Z
resolve conflict
commit bc2d8374c06215a0adadd2bf507c29d928111df5
Author: zhangbo <[email protected]>
Date: 2016-11-10T02:54:21Z
Merge remote-tracking branch 'upstream/master'
commit 07cd803c5ca7c4e9916d431da5c9edcdb7cf9853
Author: zhangbo <[email protected]>
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)