You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@groovy.apache.org by "Eric Milles (Jira)" <ji...@apache.org> on 2021/05/08 19:35:00 UTC
[jira] [Updated] (GROOVY-10076) No warning for type parameter that
hides a type
[ https://issues.apache.org/jira/browse/GROOVY-10076?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Eric Milles updated GROOVY-10076:
---------------------------------
Description:
Consider the following:
{code:groovy}
class Type<T> {
def <T> m(T t) {
}
}
{code}
In this case, I think it was an accident to add "<T>" to the method declaration.
The method type parameter "T" hides the enclosing class type parameter "T" without warning. I think you could get the same situation with "class T" in the same package. ecj states "The type parameter T is hiding the type T".
was:
Consider the following:
{code:groovy}
class Type<T> {
def <T> m(T t) {
}
}
{code}
In this case, I think it was an accident by the developer to add "<T>" to the method declaration.
The method type parameter "T" hides the enclosing class type parameter "T" without warning. I think you could get the same situation with "class T" in the same package. ecj states "The type parameter T is hiding the type T".
> No warning for type parameter that hides a type
> -----------------------------------------------
>
> Key: GROOVY-10076
> URL: https://issues.apache.org/jira/browse/GROOVY-10076
> Project: Groovy
> Issue Type: Bug
> Reporter: Eric Milles
> Priority: Minor
>
> Consider the following:
> {code:groovy}
> class Type<T> {
> def <T> m(T t) {
> }
> }
> {code}
> In this case, I think it was an accident to add "<T>" to the method declaration.
> The method type parameter "T" hides the enclosing class type parameter "T" without warning. I think you could get the same situation with "class T" in the same package. ecj states "The type parameter T is hiding the type T".
--
This message was sent by Atlassian Jira
(v8.3.4#803005)