RFR(M): 8139116: Fixes for warning "format not a string literal"

Lindenmaier, Goetz goetz.lindenmaier at sap.com
Mon Oct 19 08:00:21 UTC 2015


Hi,

could someone please have a look at these changes?

Best regards,
  Goetz.

> -----Original Message-----
> From: hotspot-runtime-dev [mailto:hotspot-runtime-dev-
> bounces at openjdk.java.net] On Behalf Of Lindenmaier, Goetz
> Sent: Dienstag, 13. Oktober 2015 11:32
> To: hotspot-runtime-dev at openjdk.java.net
> Subject: RFR(M): 8139116: Fixes for warning "format not a string literal"
> 
> Hi,
> 
> The gcc build has -Wformat enabled.  This warns if the format string in a
> printf-like function is not a string literal, because if so it can not check that the
> types of the arguments match the format specifiers.
> 
> In a row of places this warning is suppressed by
> PRAGMA_FORMAT_NONLITERAL_IGNORED. This change fixes all but three
> occurrences of this pragma.
> 
> This especially improves heapInspection.hpp where a static buffer is used to
> print the format string, which is not multithreading safe.
> 
> I didn't understand the purpose of the original code in heapDumper.cpp.
> Was this
> just bogus code, or did I oversee something?
> 
> Also, I don't know why there was the workaround for '*' in
> heapInspection.cpp and globals.cpp.
> Is there any platform that does not understand this?
> 
> Please review this change. I please need a sponsor.
> http://cr.openjdk.java.net/~goetz/webrevs/8139116-nonliteral/webrev.00/
> 
> Best regards,
>   Goetz.


More information about the hotspot-runtime-dev mailing list