You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@groovy.apache.org by "paolo di tommaso (JIRA)" <ji...@apache.org> on 2018/08/21 18:49:00 UTC
[jira] [Created] (GROOVY-8762) Invalid this reference in nested
class
paolo di tommaso created GROOVY-8762:
----------------------------------------
Summary: Invalid this reference in nested class
Key: GROOVY-8762
URL: https://issues.apache.org/jira/browse/GROOVY-8762
Project: Groovy
Issue Type: Bug
Affects Versions: 2.5.1, 2.4.15
Reporter: paolo di tommaso
The following snippet throws an exception when trying to initialise the `y` attribute
{code:java}
class Foo {
static class Bar extends Closure {
private int x
private int y
Bar(int a) {
super(null, null);
x = a
this.y = a
}
public int getMaximumNumberOfParameters() {
throw new UnsupportedOperationException()
}
public Class[] getParameterTypes() {
throw new UnsupportedOperationException()
}
public Object call(final Object... args) {
throw new UnsupportedOperationException()
}
public Object call(final Object arguments) {
throw new UnsupportedOperationException()
}
public Object call() {
throw new UnsupportedOperationException()
}
}
def doSomething() {
new Bar(1)
}
}
assert new Foo().doSomething()
{code}
Reported error:
{code}
java.lang.NullPointerException
at Foo$Bar.<init>(ConsoleScript8:12)
at Foo.doSomething(ConsoleScript8:37)
at Foo$doSomething.call(Unknown Source)
at ConsoleScript8.run(ConsoleScript8:42)
{code}
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)