On Tue, 14 May 2024 11:42:19 GMT, Adam Sotona <asot...@openjdk.org> wrote:

>> ClassFile API `jdk.internal.classfile.verifier.VerifierImpl` performed only 
>> bytecode-level class verification.
>> This patch adds `jdk.internal.classfile.verifier.ParserVerifier` with 
>> additional class checks inspired by 
>> `hotspot/share/classfile/classFileParser.cpp`.
>> 
>> Also new `VerifierSelfTest::testParserVerifier` has been added.
>> 
>> Please review.
>> 
>> Thanks,
>> Adam
>
> Adam Sotona has updated the pull request incrementally with one additional 
> commit since the last revision:
> 
>   applied the suggested changes

src/java.base/share/classes/jdk/internal/classfile/impl/verifier/ParserVerifier.java
 line 205:

> 203:     private void verifyAttribute(AttributedElement ae, Attribute<?> a, 
> List<VerifyError> errors) {
> 204:         int size = -1;
> 205:         switch (a) {

Maybe use a switch expression to set `size` where `default` yields -1?

src/java.base/share/classes/jdk/internal/classfile/impl/verifier/ParserVerifier.java
 line 306:

> 304:                 size = 1;
> 305:                 for (var ans : aa.parameterAnnotations()) {
> 306:                     size += annotationsSize(ans);

Shouldn't we call the new method here (passing `parameterAnnotations`) ?

-------------

PR Review Comment: https://git.openjdk.org/jdk/pull/16809#discussion_r1601317434
PR Review Comment: https://git.openjdk.org/jdk/pull/16809#discussion_r1601320492

Reply via email to