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 2019/08/31 18:07:00 UTC
[jira] [Assigned] (GROOVY-9243) Fail to resolve nested type defined
in base type written in Groovy
[ https://issues.apache.org/jira/browse/GROOVY-9243?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Daniel Sun reassigned GROOVY-9243:
----------------------------------
Assignee: (was: Daniel Sun)
Description:
*file Base.groovy:*
{code:java}
package groovy.bugs.groovy9243
class Base {
static class X {}
}
{code}
*file Main.groovy:*
{code:java}
package groovy.bugs.groovy9243
class Groovy9243 extends Base {
def accessX() {
assert new X()
}
}
new Groovy9243().accessX()
{code}
compile Main.groovy with groovyc: {{unable to resolve class X }}
Here is a workaround:
*file Main.groovy:*
{code:java}
package groovy.bugs.groovy9243
class Groovy9243 extends Base {
def accessX() {
assert new Base.X() // qualify the type name
}
}
new Groovy9243().accessX()
{code}
Priority: Minor (was: Major)
Summary: Fail to resolve nested type defined in base type written in Groovy (was: Favor type in the same package over nested type with same name in its base type)
> Fail to resolve nested type defined in base type written in Groovy
> ------------------------------------------------------------------
>
> Key: GROOVY-9243
> URL: https://issues.apache.org/jira/browse/GROOVY-9243
> Project: Groovy
> Issue Type: Bug
> Reporter: Daniel Sun
> Priority: Minor
>
> *file Base.groovy:*
> {code:java}
> package groovy.bugs.groovy9243
> class Base {
> static class X {}
> }
> {code}
> *file Main.groovy:*
> {code:java}
> package groovy.bugs.groovy9243
> class Groovy9243 extends Base {
> def accessX() {
> assert new X()
> }
> }
> new Groovy9243().accessX()
> {code}
> compile Main.groovy with groovyc: {{unable to resolve class X }}
> Here is a workaround:
> *file Main.groovy:*
> {code:java}
> package groovy.bugs.groovy9243
> class Groovy9243 extends Base {
> def accessX() {
> assert new Base.X() // qualify the type name
> }
> }
> new Groovy9243().accessX()
> {code}
--
This message was sent by Atlassian Jira
(v8.3.2#803003)