As discussed with Sergeui, Chris and Fred: Update JVMTI to not send field access and modification events during construction of objects with strictly-initialized instance fields and initialization of classes with strictly-initialized static fields. The JVMTI, JDWP and JDI API docs are updated to specify the behavior.
A new test is added to exercise strict instance and static fields, constructor chaining, inheritance, value classes, and record classes. The jdwpgen tool is updated to add anchors to the the event descriptions in the JDWP spec to allow linking from EventRequest.Set. Testing: tier1-3. --------- - [x] I confirm that I make this contribution in accordance with the [OpenJDK Interim AI Policy](https://openjdk.org/legal/ai). ------------- Commit messages: - Add @bug to test - Merge branch 'master' into WatchedField - Improve wording, drop some commas - Spec/docs improvements - Merge branch 'master' into WatchedField - Add fast path - Merge branch 'master' into WatchedField - Merge branch 'master' into WatchedField - Merge branch 'master' into WatchedField - Merge branch 'master' into WatchedField - ... and 3 more: https://git.openjdk.org/jdk/compare/0cecc80f...6cd91cc0 Changes: https://git.openjdk.org/jdk/pull/33841/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=33841&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8390009 Stats: 1323 lines in 12 files changed: 1288 ins; 21 del; 14 mod Patch: https://git.openjdk.org/jdk/pull/33841.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/33841/head:pull/33841 PR: https://git.openjdk.org/jdk/pull/33841
