/
githubmirror
/
panama-vector
Обзор
Документация
Войти
/
githubmirror
/
panama-vector
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
test/langtools/tools/javac/RestrictedMethods.java
56 строк
2 KB
Jorn Vernee
8333560: -Xlint:restricted does not work with --release
06 июн 2024, 18:18
06 июн 2024, 18:18
02f2404
Код
Авторство
О чём код?
/* * @test /nodynamiccopyright/ * @bug 8316971 * @summary Smoke test for restricted method call warnings * @compile/fail/ref=RestrictedMethods.out -Xlint:restricted -Werror -XDrawDiagnostics RestrictedMethods.java * @compile/fail/ref=RestrictedMethods.out --release ${jdk.version} -Xlint:restricted -Werror -XDrawDiagnostics RestrictedMethods.java * @compile -Werror RestrictedMethods.java */ import java.lang.foreign.MemorySegment; import java.util.function.Function; class RestrictedMethods { MemorySegment warn = MemorySegment.NULL.reinterpret(10); // warning here @SuppressWarnings("restricted") MemorySegment suppressed = MemorySegment.NULL.reinterpret(10); // no warning here Function<Integer, MemorySegment> warn_ref = MemorySegment.NULL::reinterpret; // warning here @SuppressWarnings("restricted") Function<Integer, MemorySegment> suppressed_ref = MemorySegment.NULL::reinterpret; // no warning here void testWarn() { MemorySegment.NULL.reinterpret(10); // warning here } @SuppressWarnings("restricted") void testSuppressed() { MemorySegment.NULL.reinterpret(10); // no warning here } Function<Integer, MemorySegment> testWarnRef() { return MemorySegment.NULL::reinterpret; // warning here } @SuppressWarnings("restricted") Function<Integer, MemorySegment> testSuppressedRef() { return MemorySegment.NULL::reinterpret; // no warning here } @SuppressWarnings("restricted") static class Nested { MemorySegment suppressedNested = MemorySegment.NULL.reinterpret(10); // no warning here Function<Integer, MemorySegment> suppressedNested_ref = MemorySegment.NULL::reinterpret; // no warning here void testSuppressedNested() { MemorySegment.NULL.reinterpret(10); // no warning here } Function<Integer, MemorySegment> testSuppressedNestedRef() { return MemorySegment.NULL::reinterpret; // no warning here } } }