I think we are safe here: j.l.runtime.Carriers was package-private and inaccessible to class files. ________________________________ From: Brian Goetz <[email protected]> Sent: Tuesday, September 1, 2026 2:24 PM To: Daniel Jeliński <[email protected]>; [email protected] <[email protected]> Subject: Re: RFR: 8391478: Remove java.lang.runtime.Carriers
One thing to check before removing these: it is possible that an earlier version of the compiler baked references to jlr.Carriers into classfiles (such as indy bootstraps), meaning that these would need to stay around forever for those classfiles. But, I am pretty sure (please check!) that this was only the case when pattern matching was a preview feature, in which case we can garbage-collect this code. More generally: just because something in jlr is no longer used, doesn't mean it is necessarily dead. This is *the* place where we put code that compiler-generated classfiles depend on (other than java.lang itself.) On 8/31/2026 1:25 PM, Daniel Jeliński wrote: > The class was used by string templates and pattern matching. Neither of these > features is present in the codebase today. > > Tested with tier1-3, just in case. > > --------- > - [x] I confirm that I make this contribution in accordance with the [OpenJDK > Interim AI Policy](https://openjdk.org/legal/ai). > > ------------- > > Commit messages: > - Remove carriers > > Changes:https://git.openjdk.org/jdk/pull/32612/files > Webrev:https://webrevs.openjdk.org/?repo=jdk&pr=32612&range=00 > Issue:https://bugs.openjdk.org/browse/JDK-8391478 > Stats: 1171 lines in 2 files changed: 0 ins; 1171 del; 0 mod > Patch:https://git.openjdk.org/jdk/pull/32612.diff > Fetch: git fetchhttps://git.openjdk.org/jdk.git pull/32612/head:pull/32612 > > PR:https://git.openjdk.org/jdk/pull/32612
