[5/5] HACKING: add rules for printf-like functions

Message ID AANLkTimuCX-4iYoODhjkXKWF23pHxPciEmw7O1LHG3Qv@mail.gmail.com
State New
Headers show

Commit Message

Blue Swirl Aug. 26, 2010, 6:38 p.m.
Add rules for printf-like functions, based on libvirt HACKING.

Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
 HACKING |   13 +++++++++++++
 1 files changed, 13 insertions(+), 0 deletions(-)


diff --git a/HACKING b/HACKING
index a3d714f..5beb765 100644
@@ -107,3 +107,16 @@  so instead of e.g. isalnum you should use qemu_isalnum.

 Because of the memory management rules, you must use qemu_strdup/qemu_strndup
 instead of plain strdup/strndup.
+5. Printf-style functions
+Whenever you add a new printf-style function, i.e., one with a format
+string argument and following "..." in its prototype, be sure to use
+gcc's printf attribute directive in the prototype.
+This makes it so gcc's -Wformat and -Wformat-security options can do
+their jobs and cross-check format strings with the number and types
+of arguments.
+Currently many functions in QEMU are not following this rule but
+patches to add the attribute would be very much appreciated.