JDK-8281266 : [JVMCI] MetaUtil.toInternalName() doesn't handle hidden classes correctly
  • Type: Bug
  • Component: hotspot
  • Sub-Component: compiler
  • Affected Version: 17.0.2,18,19
  • Priority: P3
  • Status: Resolved
  • Resolution: Fixed
  • OS: generic
  • CPU: generic
  • Submitted: 2022-02-04
  • Updated: 2022-04-04
  • Resolved: 2022-03-08
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
JDK 17 JDK 18 JDK 19
17.0.4-oracleFixed 18.0.2Fixed 19 b13Fixed
Related Reports
Relates :  
Description
JDK-8238358 introduced hidden classes with internal names like com/example/Foo.1234 that get changed to com.example.Foo/1234 by Class.getName() which are not properly handled by MetaUtil's toInternalName and internalNameToJava

This used to work on the assumption that the internal class names didn't contain the . character and that java class names didn't contain the / character except for lambdas (which are now treated as hidden classes as well), an assumption that no longer holds.
Comments
A pull request was submitted for review. URL: https://git.openjdk.java.net/jdk18u/pull/87 Date: 2022-03-31 06:29:52 +0000
31-03-2022

Fix Request (JDK 18u) Fixes an issue with incorrect file names being reported for lambda methods in debug info. The fix is low risk and applied cleanly. Already tested and backported to JDK 17u. Tier 1-3 testing is running for JDK 18u.
31-03-2022

Fix Request (OpenJDK 17u): Backporting to fix Mandrel/GraalVM issue with incorrect file names being reported for lambda method in debug info https://github.com/graalvm/mandrel/issues/355. Small and trivial fix, low risk. Clean backport. Testing: tier1 and jvmci tests passing (including the newly added ones that where failing before the patch)
22-03-2022

A pull request was submitted for review. URL: https://git.openjdk.java.net/jdk17u-dev/pull/274 Date: 2022-03-21 14:46:10 +0000
21-03-2022

Changeset: 0cbc4b85 Author: Foivos Zakkak <fzakkak@redhat.com> Committer: Severin Gehwolf <sgehwolf@openjdk.org> Date: 2022-03-08 15:35:55 +0000 URL: https://git.openjdk.java.net/jdk/commit/0cbc4b85bf8ab2ccfb8762322098c4cc7996df7d
08-03-2022

A pull request was submitted for review. URL: https://git.openjdk.java.net/jdk/pull/7346 Date: 2022-02-04 12:01:46 +0000
18-02-2022

ILW = unknown impact, unknown likelihood, no workaround = MMH = P3
05-02-2022

Assigning to myself on behalf of Foivos Zakkak who is working on a fix for this.
04-02-2022