duke@1: /** duke@1: * @test /nodynamiccopyright/ duke@1: * @bug 4986256 jjg@611: * @compile/ref=Deprecation.noLint.out -XDrawDiagnostics Deprecation.java jjg@611: * @compile/ref=Deprecation.lintDeprecation.out -Xlint:deprecation -XDrawDiagnostics Deprecation.java jjg@611: * @compile/ref=Deprecation.lintAll.out -Xlint:all,-path -XDrawDiagnostics Deprecation.java duke@1: */ duke@1: duke@1: @Deprecated duke@1: class Deprecation duke@1: { duke@1: } duke@1: duke@1: // control: this class should generate warnings duke@1: class Deprecation2 duke@1: { duke@1: void m() { duke@1: Object d = new Deprecation(); duke@1: } duke@1: } duke@1: duke@1: // tests: the warnings that would otherwise be generated should all be suppressed duke@1: @SuppressWarnings("deprecation") duke@1: class Deprecation3 duke@1: { duke@1: void m() { duke@1: Object d = new Deprecation(); duke@1: } duke@1: } duke@1: duke@1: class Deprecation4 duke@1: { duke@1: @SuppressWarnings("deprecation") duke@1: void m() { duke@1: Object d = new Deprecation(); duke@1: } duke@1: } duke@1: duke@1: class Deprecation5 duke@1: { duke@1: void m() { duke@1: @SuppressWarnings("deprecation") duke@1: class Inner { duke@1: void m() { duke@1: Object d = new Deprecation(); duke@1: } duke@1: } duke@1: } duke@1: } duke@1: duke@1: // this class should produce warnings because @SuppressWarnings should not be inherited duke@1: class Deprecation6 extends Deprecation3 duke@1: { duke@1: void m() { duke@1: Object d = new Deprecation(); duke@1: } duke@1: }