[cfe-commits] [Patch] Teach format string analysis that "%zu" means size_t.
hans at chromium.org
Wed Oct 26 09:07:11 PDT 2011
The attached patch teaches format string analysis that "%zu" means size_t.
The code had it backwards, thinking size_t was signed, and using that for "%zd".
Also let the analysis get the types for (u)intmax_t while we are at it.
Please take a look and let me know if this is ok to land.
Any ideas for the remaining FIXMEs in PrintfFormatString.cpp, i.e. how
to get a hold of a type that's the same width as size_t, but signed
would be appreciated. (And the same for unsigned version of ptrdiff_t,
though I suppose that is less common.)
It would also be cool if the warning could say "conversion specifies
type 'size_t' (a.k.a. 'unsigned long')", rather than just using the
underlying type, but that's probably for another patch.
More information about the cfe-commits