[lworld] RFR: 8374115: [lworld] test_classPrinter.cpp fails with Valhalla

Paul Hübner phubner at openjdk.org
Wed Jan 28 14:46:44 UTC 2026


On Wed, 28 Jan 2026 14:03:58 GMT, Casper Norrbin <cnorrbin at openjdk.org> 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

Can you verify locally that this works with and without `--enable-preview`?

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

Changes requested by phubner (Committer).

PR Review: https://git.openjdk.org/valhalla/pull/1989#pullrequestreview-3717100160


More information about the valhalla-dev mailing list