diff options
Diffstat (limited to 'test')
4 files changed, 44 insertions, 0 deletions
diff --git a/test/core/src/lombok/RunTestsViaEcj.java b/test/core/src/lombok/RunTestsViaEcj.java index 1d840a21..454a8aef 100644 --- a/test/core/src/lombok/RunTestsViaEcj.java +++ b/test/core/src/lombok/RunTestsViaEcj.java @@ -83,6 +83,8 @@ public class RunTestsViaEcj extends AbstractRunTests { warnings.put(CompilerOptions.OPTION_ReportUnusedLabel, "ignore"); warnings.put(CompilerOptions.OPTION_ReportUnusedImport, "ignore"); warnings.put(CompilerOptions.OPTION_ReportUnusedPrivateMember, "ignore"); + warnings.put(CompilerOptions.OPTION_ReportIndirectStaticAccess, "warning"); + warnings.put(CompilerOptions.OPTION_ReportNonStaticAccessToStatic, "warning"); int ecjVersion = Eclipse.getEcjCompilerVersion(); warnings.put(CompilerOptions.OPTION_Source, (ecjVersion < 9 ? "1." : "") + ecjVersion); options.set(warnings); diff --git a/test/transform/resource/after-ecj/ExtensionMethodNonStaticAccess.java b/test/transform/resource/after-ecj/ExtensionMethodNonStaticAccess.java new file mode 100644 index 00000000..c930a329 --- /dev/null +++ b/test/transform/resource/after-ecj/ExtensionMethodNonStaticAccess.java @@ -0,0 +1,22 @@ +class ExtensionMethodNonStaticAccess { + ExtensionMethodNonStaticAccess() { + super(); + } + public void method() { + Derived derived = new Derived(); + derived.staticMethod(); + } +} +class Base { + Base() { + super(); + } + static String staticMethod() { + return ""; + } +} +class Derived extends Base { + Derived() { + super(); + } +} diff --git a/test/transform/resource/before/ExtensionMethodNonStaticAccess.java b/test/transform/resource/before/ExtensionMethodNonStaticAccess.java new file mode 100644 index 00000000..0d317c35 --- /dev/null +++ b/test/transform/resource/before/ExtensionMethodNonStaticAccess.java @@ -0,0 +1,18 @@ +//issue #2752: this test triggers an indirect static access and a non static access warning for the same method call +//platform ecj,eclipse +class ExtensionMethodNonStaticAccess { + public void method(){ + Derived derived = new Derived(); + derived.staticMethod(); + } +} + +class Base { + static String staticMethod() { + return ""; + } +} + +class Derived extends Base { + +}
\ No newline at end of file diff --git a/test/transform/resource/messages-ecj/ExtensionMethodNonStaticAccess.java.messages b/test/transform/resource/messages-ecj/ExtensionMethodNonStaticAccess.java.messages new file mode 100644 index 00000000..3f5f3988 --- /dev/null +++ b/test/transform/resource/messages-ecj/ExtensionMethodNonStaticAccess.java.messages @@ -0,0 +1,2 @@ +6 The static method staticMethod() from the type Base should be accessed directly +6 The static method staticMethod() from the type Base should be accessed in a static way
\ No newline at end of file |