RFR: 8333377: Migrate Generic Signature parsing to ClassFile API [v5]

Chen Liang liach at openjdk.org
Tue Feb 25 22:26:16 UTC 2025


On Tue, 25 Feb 2025 22:21:46 GMT, Chen Liang <liach at openjdk.org> wrote:

>> Core reflection's generic signature parsing uses an ancient library with outdated visitor pattern on a tree model and contains unnecessary boilerplates. This is a duplication of ClassFile API's signature model. We should just move to ClassFile API, which is more throughoutly tested as well.
>> 
>> To ensure compatibility, new tests are added to ensure consistent behavior when encountering malformed signatures or signatures with missing types. The reflective objects have been preserved and the only change is that lazy expansion now happens from CF objects, to reduce compatibility risks.
>
> Chen Liang has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains four additional commits since the last revision:
> 
>  - Improve BytecodeDescriptor error message
>  - Years, test facelift
>  - Merge branch 'master' of https://github.com/openjdk/jdk into feature/new-generic-info
>  - 8333377: Migrate Generic Signature parsing to ClassFile API

After a revisit to this PR, I think I might split the work of improving BytecodeDescriptor error message and tests covering failure-case behaviors into a prerequisite PR to this one, to ensure this PR preserves the failure behavior present on mainline.

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

PR Comment: https://git.openjdk.org/jdk/pull/19281#issuecomment-2683429016


More information about the core-libs-dev mailing list