On Wed, 28 Jan 2026 14:03:58 GMT, Casper Norrbin <[email protected]> wrote:
> Hi everyone,
>
> `test_classPrinter` tests `classPrinter` using regex to verify that the
> output matches the expected format.
> The `print_classes` test includes (among other things) printing the class
> details for `java.lang.Integer`.
>
> On mainline, the static fields are printed like this:
>
> Java mirror oop for java/lang/Integer: java.lang.Class
> {0x0000000efc0427a0} - klass: 'java/lang/Class' - flags:
> - ---- fields (total size 19 words):
> ...
> - ---- static fields (2):
> - public static final 'MIN_VALUE' 'I' @136 -2147483648 (0x80000000)
> - public static final 'MAX_VALUE' 'I' @140 2147483647 (0x7fffffff)
> ...
>
>
> With the Valhalla changes, the output now includes `value`:
>
> Java mirror oop for java/lang/Integer: java.lang.Class
> {0x000000069f040728} - klass: 'java/lang/Class' - flags:
> - ---- fields (total size 19 words):
> ...
> - ---- static fields (2):
> - public static final value 'MIN_VALUE' 'I' @136 -2147483648 (0x80000000)
> - public static final value 'MAX_VALUE' 'I' @140 2147483647 (0x7fffffff)
> ...
>
>
> When printing fields' access flags, we now also print `identity`/`value`
> depending on whether a field has identity. Most fields (including
> `MIN_VALUE`) do not have identity and therefore show `value`. The existing
> regex did not account for this new print, making the test fail. I have
> updated it accordingly and the test now passes again.
>
> Testing:
> - Tier 1
This pull request has now been integrated.
Changeset: 6399b8b6
Author: Casper Norrbin <[email protected]>
Committer: Paul Hübner <[email protected]>
URL:
https://git.openjdk.org/valhalla/commit/6399b8b6c6725c8250ca31e51318162495786b4b
Stats: 14 lines in 2 files changed: 7 ins; 1 del; 6 mod
8374115: [lworld] test_classPrinter.cpp fails with Valhalla
Reviewed-by: phubner
-------------
PR: https://git.openjdk.org/valhalla/pull/1989