RFR: 8356022: Migrate descriptor parsing from generics to BytecodeDescriptor [v2]

Alan Bateman alanb at openjdk.org
Tue Sep 30 06:38:10 UTC 2025


On Wed, 27 Aug 2025 19:18:17 GMT, Chen Liang <liach at openjdk.org> wrote:

>> As another step toward the removal of the old generics infrastructure, I propose to remove the usages of generic parsing utilities and use the facilities provided by BytecodeDescriptor, already used by MethodType.fromDescriptorString. This also prevents extra validation cost in use sites to defend against generic types.
>> 
>> In this patch, BytecodeDescriptor and Wrapper see minor updates, mainly for better exception messages - previously, an unparseable char in the descriptor string just reports that char, and now the whole descriptor string is reported.
>> 
>> These behaviors are already covered by the tests added in JDK-8350704 #23788.
>> 
>> Testing: reflect/annotation/Class, running tier 1+2
>
> 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:
> 
>  - Merge branch 'master' of https://github.com/openjdk/jdk into fix/generic-desc-parse
>  - Roll back wrapper, test for BytecodeDescriptor
>  - Merge branch 'master' of https://github.com/openjdk/jdk into fix/generic-desc-parse
>  - 8356022: Migrate descriptor parsing from generics to BytecodeDescriptor

Does this mean GenericSignatureFormatError will be throw for cases where it wasn't previously thrown? If so, can you create a CSR with a summary of the compatibility impact.

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

PR Comment: https://git.openjdk.org/jdk/pull/24978#issuecomment-3350176740


More information about the core-libs-dev mailing list