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 2016/08/24 07:15:21 UTC
[jira] [Updated] (GROOVY-4356) Static members should not be able to
access class-level generic types
[ https://issues.apache.org/jira/browse/GROOVY-4356?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Paul King updated GROOVY-4356:
------------------------------
Summary: Static members should not be able to access class-level generic types (was: Static members should not be able to access generic types)
> Static members should not be able to access class-level generic types
> ---------------------------------------------------------------------
>
> Key: GROOVY-4356
> URL: https://issues.apache.org/jira/browse/GROOVY-4356
> Project: Groovy
> Issue Type: Bug
> Components: class generator
> Affects Versions: 1.8-beta-1
> Reporter: Roshan Dawrani
>
> The following code compiles, but it shouldn't because T is a non-static generic type, and difference instances of Outer will have different concrete representations of T. Hence it makes no sense that static inner classes should be able to use such generic type variables.
> {code}
> class Outer<T> {
> T ofoo
> static class Inner {
> T ifoo
> }
> }
> {code}
> Similarly, all the cases below should not compile as well:
> {code}
> class Test1<T> {
> static T f1
> }
> class Test2<T> {
> static foo(T param1) {}
> }
> class Test3<T> {
> static foo() {
> T localVar1
> }
> }
> {code}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)