[lworld] RFR: 8367698: [lworld] New lint category for code that would not be allowed in the prologue [v2]
Maurizio Cimadamore
mcimadamore at openjdk.org
Tue Sep 23 12:46:01 UTC 2025
On Tue, 23 Sep 2025 11:12:14 GMT, Vicente Romero <vromero at openjdk.org> wrote:
>> This PR introduces a new Xlint category: `initialization`. When enabled it will indicate if some code in an identity class couldn't be placed in the prologue phase. This applies to field initializers and constructors with no explicit `super` invocation. So for example for code like:
>>
>>
>> class Test {
>> int i = 0;
>>
>> Test() {
>> this.i = 1;
>> }
>> }
>>
>>
>> a warning will be issued as if there were a super invocation at the end of the constructor, the compiler would issue an error.
>>
>> PS. The new lint warning had to be disabled during the build as in other case it wouldn't finish
>
> Vicente Romero has updated the pull request incrementally with one additional commit since the last revision:
>
> addressing review comments
New test looks good -- thanks.
Using a custom attr to always move the `super` call is a clever testing approach ;-)
-------------
Marked as reviewed by mcimadamore (Committer).
PR Review: https://git.openjdk.org/valhalla/pull/1595#pullrequestreview-3257821118
More information about the valhalla-dev
mailing list