You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@groovy.apache.org by "Daniel Sun (JIRA)" <ji...@apache.org> on 2018/05/15 23:54:00 UTC

[jira] [Reopened] (GROOVY-8355) Instanceof inference does not work on field assigning

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

Daniel Sun reopened GROOVY-8355:
--------------------------------
      Assignee:     (was: Daniel Sun)

The pre-existing behavior is by design, but we can think about how to make it smarter.

See the discussion at https://github.com/apache/groovy/pull/706

> Instanceof inference does not work on field assigning
> -----------------------------------------------------
>
>                 Key: GROOVY-8355
>                 URL: https://issues.apache.org/jira/browse/GROOVY-8355
>             Project: Groovy
>          Issue Type: Bug
>          Components: Static compilation, Static Type Checker
>            Reporter: Alexey Afanasiev
>            Priority: Major
>             Fix For: 2.6.0-alpha-4, 3.0.0-alpha-3, 2.5.0-rc-3
>
>
> If instanceof inference works as expected [https://issues.apache.org/jira/browse/GROOVY-8293] So probably this code should work to:
> {code}
> import groovy.transform.CompileStatic
> @CompileStatic
> class Foo {
>     Object str = new Object()
>     def bar() {
>         str = "str"
>         str.toUpperCase() // here compile error
>     }
> }
> {code}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)