You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@groovy.apache.org by "Paul King (JIRA)" <ji...@apache.org> on 2017/02/01 23:19:02 UTC

[jira] [Closed] (GROOVY-7927) Static type checking

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

Paul King closed GROOVY-7927.
-----------------------------

> Static type checking
> --------------------
>
>                 Key: GROOVY-7927
>                 URL: https://issues.apache.org/jira/browse/GROOVY-7927
>             Project: Groovy
>          Issue Type: Bug
>          Components: Static compilation
>    Affects Versions: 2.4.7
>            Reporter: Cazacu Mihai
>            Assignee: Jochen Theodorou
>             Fix For: 2.4.8
>
>
> I have a problem running this code: 
>   
> {code:title=Test.groovy|borderStyle=solid}
> import groovy.transform.CompileStatic 
> import java.util.function.Function 
>   
> @CompileStatic 
> class Test { 
>         static void main(String[] args) { 
>                // this code fails 
>                 Function<Integer, Integer> fct = { Integer n -> 
>                         -n 
>                 } 
>   
>                 // this one works but it is too verbose 
>                 // Function<Integer, Integer> fct = ({ Integer n -> 
>                 // -n 
>                 // } as Function<Integer, Integer>) 
>   
>                 println fct.apply(10) 
>         } 
> } 
> {code}
> Error: 
> {quote}
> Test.groovy: 9: [Static type checking] - Incompatible generic argument types. Cannot assign java.util.function.Function <java.lang.Integer, groovy.lang.Closure> to: java.util.function.Function <Integer, Integer>
>  @ line 9, column 36. 
>    	Function<Integer, Integer> fct = { Integer n -> 
>                                       ^ 
> 1 error 
> {quote}



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)