> A previous cleanup #14642 accidentally omitted the fact that an 
> `Array.newInstance` call in `BytecodeDescriptor::parseSig` is intended to 
> propagate `IllegalArgumentException` to 
> `MethodType::fromMethodDescriptorString`. This bug is discovered in a recent 
> cleanup for `BytecodeDescriptor` in #24978.
> 
> Instead of restoring the original `newInstance` call, this patch catches the 
> `UnsupportedOperationException` thrown by `Class::arrayType` to because the 
> cause IAE thrown by `newInstance` has no message at all. The existing 
> reporting system in `BytecodeDescriptor::parseMethod` includes the whole 
> malformed descriptor string in the error message, which can be triggered by 
> returning `null` in `parseSig`.

Chen Liang has updated the pull request incrementally with one additional 
commit since the last revision:

  A case for malformed return type

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

Changes:
  - all: https://git.openjdk.org/jdk/pull/26909/files
  - new: https://git.openjdk.org/jdk/pull/26909/files/2a81b9d2..758ed7c5

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=jdk&pr=26909&range=01
 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=26909&range=00-01

  Stats: 1 line in 1 file changed: 1 ins; 0 del; 0 mod
  Patch: https://git.openjdk.org/jdk/pull/26909.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/26909/head:pull/26909

PR: https://git.openjdk.org/jdk/pull/26909

Reply via email to