diff --git a/src/java.sql/share/classes/java/sql/ResultSet.java b/src/java.sql/share/classes/java/sql/ResultSet.java index 4534bd8e537be..f83e796aef7f4 100644 --- a/src/java.sql/share/classes/java/sql/ResultSet.java +++ b/src/java.sql/share/classes/java/sql/ResultSet.java @@ -26,6 +26,7 @@ package java.sql; import org.checkerframework.checker.nullness.qual.Nullable; +import org.checkerframework.checker.mustcall.qual.InheritableMustCall; import org.checkerframework.framework.qual.AnnotatedFor; import java.math.BigDecimal; @@ -149,7 +150,8 @@ * @since 1.1 */ -@AnnotatedFor("nullness") +@AnnotatedFor({"nullness", "mustcall"}) +@InheritableMustCall("close") public interface ResultSet extends Wrapper, AutoCloseable { /** diff --git a/src/java.sql/share/classes/java/sql/Statement.java b/src/java.sql/share/classes/java/sql/Statement.java index f62a6ef545008..af068ab8ee883 100644 --- a/src/java.sql/share/classes/java/sql/Statement.java +++ b/src/java.sql/share/classes/java/sql/Statement.java @@ -28,6 +28,9 @@ import org.checkerframework.checker.sqlquotes.qual.SqlEvenQuotes; import org.checkerframework.checker.tainting.qual.Untainted; +import org.checkerframework.checker.mustcall.qual.InheritableMustCall; +import org.checkerframework.framework.qual.AnnotatedFor; + import java.util.regex.Pattern; import static java.util.stream.Collectors.joining; @@ -47,6 +50,8 @@ * @see ResultSet * @since 1.1 */ +@AnnotatedFor({"mustcall"}) +@InheritableMustCall("close") public interface Statement extends Wrapper, AutoCloseable { /**