cc2861a993
Reviewed-by: jjg
48 lines
1.2 KiB
Java
48 lines
1.2 KiB
Java
/**
|
|
* @test /nodynamiccopyright/
|
|
* @bug 8065219
|
|
* @summary Deprecated warning in method reference are missing in some cases.
|
|
* @compile/ref=DeprecationSE8Test.noLint.out -XDrawDiagnostics DeprecationSE8Test.java
|
|
* @compile/ref=DeprecationSE8Test.out -Xlint:deprecation,-options --release 8 -XDrawDiagnostics DeprecationSE8Test.java
|
|
*/
|
|
|
|
|
|
class DeprecationSE8Test {
|
|
@FunctionalInterface
|
|
interface I {
|
|
DeprecationSE8Test meth();
|
|
}
|
|
|
|
@FunctionalInterface
|
|
interface J {
|
|
int meth();
|
|
}
|
|
|
|
@Deprecated
|
|
public DeprecationSE8Test() {
|
|
}
|
|
|
|
@Deprecated
|
|
public static int foo() {
|
|
return 1;
|
|
}
|
|
|
|
// Using deprecated entities from within one's own top level class does not merit warning.
|
|
void notBadUsages() {
|
|
I i = DeprecationSE8Test::new;
|
|
new DeprecationSE8Test();
|
|
J j = DeprecationSE8Test::foo;
|
|
foo();
|
|
}
|
|
}
|
|
|
|
class DeprecationSE8_01 {
|
|
// Using deprecated entities from outside one's own top level class deserves warning.
|
|
void badUsages() {
|
|
DeprecationSE8Test.I i = DeprecationSE8Test::new;
|
|
new DeprecationSE8Test();
|
|
DeprecationSE8Test.foo();
|
|
DeprecationSE8Test.J j = DeprecationSE8Test::foo;
|
|
}
|
|
}
|