[lworld] RFR: 8326597: [lworld] Verifier must enforce new JEP 401 rules related to strict fields

David Holmes dholmes at openjdk.org
Fri Jun 14 02:57:46 UTC 2024


There are a number of commits here relating to different changes. To keep things more simple you can look at them individually.

Changes:
- removed the old Q-type support from the verifier (verifierType.hpp/cpp)
- added the necessary checks for strict fields to the verifier and added some tests
- added missing class modifier checks for value classes in the classfile parse
- brought the field modifier checks in classfile parser into line with JEP 401, simplified logic and provided more informative exception messages.
- updated existing tests to  support the above

There is still a lot of inline-type terminology remaining, at least some of which should be cleaned up in future RFE's

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

Commit messages:
 - Fred's suggestion
 - Merge
 - Refine field modifier checks to reflect current value type rules.
 - Add check that value types are final or else abstract
 - Expand tests and ensure value classes are defined with required class modifiers
 - Ensure value types are enabled before doing strict checks.
 - Merge
 - Provide more details on class format errors in relation to value types and strict fields. Update test to match.
 - Implement verification rules for strict fields and add test
 - Remove Q-type related logic from verifier.cpp
 - ... and 2 more: https://git.openjdk.org/valhalla/compare/ddacf2c5...69855fa0

Changes: https://git.openjdk.org/valhalla/pull/1109/files
  Webrev: https://webrevs.openjdk.org/?repo=valhalla&pr=1109&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8326597
  Stats: 355 lines in 9 files changed: 202 ins; 126 del; 27 mod
  Patch: https://git.openjdk.org/valhalla/pull/1109.diff
  Fetch: git fetch https://git.openjdk.org/valhalla.git pull/1109/head:pull/1109

PR: https://git.openjdk.org/valhalla/pull/1109



More information about the valhalla-dev mailing list