RFR: 8355904: Use variadic macros for J2dTrace [v5]

Sergey Bylokhov serb at openjdk.org
Thu May 22 20:11:53 UTC 2025


On Wed, 21 May 2025 12:33:40 GMT, Nikita Gubarkov <ngubarkov at openjdk.org> wrote:

>> J2dTrace macros have multiple overloads specifying number of arguments, making it less convent to change number of arguments. There were cases when existing macros were not enough and people had to add new variants with even more arguments. We could simply use variadic macros instead.
>> 
>> Also, currently those macros expand to a { code block }, which doesn't require a semicolon at the end, so it can sometimes be missed, leading to an inconsistent code style. We could expand it directly to the function, forcing user to insert a semicolon after that, in a function-like style.
>
> Nikita Gubarkov has updated the pull request incrementally with one additional commit since the last revision:
> 
>   fixup! 8355904: Use variadic macros for J2dTrace

src/java.desktop/windows/native/libawt/java2d/d3d/D3DShaderGen.c line 59:

> 57: // REMIND
> 58: //#define J2dTraceLn(a, b) fprintf(stderr, "%s\n", b);
> 59: //#define J2dTraceLn(a, b, c) fprintf(stderr, b, c);

It looks like the above commented J2dTraceLn for arguments 0 and 1 now conflicts?

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

PR Review Comment: https://git.openjdk.org/jdk/pull/24949#discussion_r2103321639


More information about the client-libs-dev mailing list