NestHost/NestMembers were carried as Attribute::Raw with constant-pool indices baked in. During writing the pool is rebuilt in a different order, so those indices pointed at the wrong entries and the JVM rejected the class: ClassFormatError: Nest member/host class_info_index N has bad constant type. Model them explicitly in the IR, convert on parse and write (resolving class names through the new pool), and remap their class names during rename. Add a NestMembers round-trip regression test. Verified on a real jar: all Nest ClassFormatErrors gone. |
||
|---|---|---|
| .. | ||
| noxis | ||
| noxis-analysis | ||
| noxis-classfile | ||
| noxis-core | ||
| noxis-jar | ||
| noxis-passes | ||
| noxis-runtime | ||
| noxis-structure-check | ||
| noxis-verify | ||