Skip to content

Commit f69061d

Browse files
committed
[GR-70208] JVMCI: Make ResolvedJavaType return a List<? extends JavaType>
PullRequest: labsjdk-ce/226
2 parents a55dff5 + c92e38c commit f69061d

File tree

2 files changed

+5
-4
lines changed

2 files changed

+5
-4
lines changed

src/jdk.internal.vm.ci/share/classes/jdk/vm/ci/meta/ResolvedJavaType.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -259,12 +259,13 @@ default ResolvedJavaType getElementalType() {
259259
* whether a type is a direct or indirect permitted subtype. The order of the results matches
260260
* that of {@link Class#getPermittedSubclasses()}.
261261
* <p>
262-
* If the type is not sealed, returns {@code null}.
262+
* If this type is not sealed, returns {@code null}. Returning a list with length 0 means
263+
* this type is sealed and has no permitted subclasses. That is, it is effectively final.
263264
*
264265
* @return unmodifiable list of permitted subtypes, or {@code null} if this type is not sealed
265266
* @see Class#getPermittedSubclasses()
266267
*/
267-
List<JavaType> getPermittedSubclasses();
268+
List<? extends JavaType> getPermittedSubclasses();
268269

269270
/**
270271
* Returns {@code true} if and only if this type represents a sealed class or

test/hotspot/jtreg/compiler/jvmci/jdk.vm.ci.runtime.test/src/jdk/vm/ci/runtime/test/TestResolvedJavaType.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -756,7 +756,7 @@ public void getPermittedSubclassesTest() {
756756
private void assertGetPermittedSubclasses(Class<?> clazz) {
757757
ResolvedJavaType type = metaAccess.lookupJavaType(clazz);
758758
assertEquals("Sealed status mismatch for class '" + clazz.getName(), clazz.isSealed(), type.isSealed());
759-
List<JavaType> actual = type.getPermittedSubclasses();
759+
List<? extends JavaType> actual = type.getPermittedSubclasses();
760760
Class<?>[] expected = clazz.getPermittedSubclasses();
761761
if (expected == null) {
762762
assertNull(actual);
@@ -1358,7 +1358,7 @@ public static void checkDeclaredAnnotationInfo(Class<?> clazz) {
13581358
"getElementalType",
13591359
"getEnclosingType",
13601360
"lookupType",
1361-
"isSealed", // tested with getPermittedSubsclasses
1361+
"isSealed", // tested with getPermittedSubclasses
13621362
"resolveField",
13631363
"$jacocoInit"
13641364
};

0 commit comments

Comments
 (0)