Request for review (S): JDK-8011009: Use do-while(0) instead of while(0) in EC_TRACE and RC_TRACE* macros

Mikael Vidstedt mikael.vidstedt at oracle.com
Thu Mar 28 16:12:15 PDT 2013


I'm curious: Are there any fundamental reasons for not turning these 
into real functions instead of using macros to avoid the problem all 
together? The only downside I can see is that the functions would to do 
a va_start/va_end and use the va_list version of print instead, but that 
doesn't seem all to bad?

Cheers,
Mikael

On 2013-03-28 15:11, Krystal Mo wrote:
> Hi all,
>
> Could I have a review for this small patch, please?
>
> Webrev: http://cr.openjdk.java.net/~kmo/8011009/webrev.00
> CR: http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=8011009
>
> This patch improves the EC_TRACE and RC_TRACE* family of macros to be 
> less error prone.
> They used to end with while(0) to make the macros statement-like, but 
> a better way to do this is do {...} while(0).
>
> Testing with JPRT, will send an update email when it's done.
>
> P.S. I'm not sure where I should send this email for review, should it 
> be hotspot-runtime or serviceability?
>
> Thanks,
> Kris



More information about the hotspot-dev mailing list