qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] Re: [PULL] More format checking


From: Stefan Weil
Subject: [Qemu-devel] Re: [PULL] More format checking
Date: Sat, 04 Dec 2010 20:24:20 +0100
User-agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.1.15) Gecko/20101030 Iceowl/1.0b1 Icedove/3.0.10

Am 04.12.2010 19:35, schrieb Blue Swirl:
On Wed, Dec 1, 2010 at 9:41 PM, Stefan Weil <address@hidden> wrote:
Am 24.11.2010 22:46, schrieb Stefan Weil:

Hello,

with these patches, hopefully all functions with printf like arguments
use gcc's format checking, so the TODO comment in HACKING can be removed.

The patch series was tested with a default build configuration on linux
and windows hosts (including some cross compilations for arm, mips and
powerpc),
so chances are good that there remain few (if any) functions without
format checking.

If there remain such functions (and maybe also some related format bugs),
the compiler will raise a warning now, so it should be easy to fix them.

All patches were published on qemu-devel. There were two replies:

* 1st patch: small typo in commit message, fixed now

* last patch: breaks build

It's normal that the last patch will break builds with warning = error
as long as the other four patches (and maybe more format related fixes)
are not applied. This is the intention of the last patch!

Regards,
Stefan Weil

The following changes since commit
f711df67d611e4762966a249742a5f7499e19f99:

 microblaze: target-ify target_ucontext (2010-11-23 10:04:30 +0100)

are available in the git repository at:
 git://git.weilnetz.de/git/qemu for-blueswirl

Stefan Weil (5):
     *-dis: Replace fprintf_ftype by fprintf_function (format checking)
     target-sparc: Use fprintf_function (format checking)
     audio: Use GCC_FMT_ATTR (format checking)
     darwin-user: Use GCC_FMT_ATTR (format checking)
     configure: Add compiler option -Wmissing-format-attribute

 HACKING                |    3 ---
 alpha-dis.c            |    3 +++
 arm-dis.c              |   14 +++++++-------
 audio/audio_pt_int.c   |    3 ++-
 configure              |    1 +
 darwin-user/machload.c |    2 +-
 darwin-user/qemu.h     |    2 +-
 dis-asm.h              |   10 ++--------
 m68k-dis.c             |    2 +-
 microblaze-dis.c       |    2 +-
 mips-dis.c             |    2 --
 sh4-dis.c              |   16 +++++-----------
 target-sparc/cpu.h     |    4 ++--
 13 files changed, 26 insertions(+), 38 deletions(-)



Is there anything missing, or can the patch series be applied finally?

The last patch is not OK yet:
CC qemu-img.o
/src/qemu/qemu-img.c: In function 'error':
/src/qemu/qemu-img.c:48:5: error: function might be possible candidate
for 'ms_printf' format attribute [-Werror=missing-format-attribute]
CC qemu-error.o
/src/qemu/qemu-error.c: In function 'error_vprintf':
/src/qemu/qemu-error.c:27:9: error: function might be possible
candidate for 'ms_printf' format attribute
[-Werror=missing-format-attribute]
CC block/blkverify.o
/src/qemu/block/blkverify.c: In function 'blkverify_err':
/src/qemu/block/blkverify.c:65:5: error: function might be possible
candidate for 'ms_printf' format attribute
[-Werror=missing-format-attribute]
CC json-parser.o
/src/qemu/json-parser.c: In function 'parse_error':
/src/qemu/json-parser.c:100:5: error: function might be possible
candidate for 'ms_printf' format attribute
[-Werror=missing-format-attribute]
CC qerror.o
/src/qemu/qerror.c: In function 'qerror_abort':
/src/qemu/qerror.c:230:5: error: function might be possible candidate
for 'ms_printf' format attribute [-Werror=missing-format-attribute]
CC blockdev.o
/src/qemu/blockdev.c: In function 'drive_add':
/src/qemu/blockdev.c:52:5: error: function might be possible candidate
for 'ms_printf' format attribute [-Werror=missing-format-attribute]
CC qemu-char.o
/src/qemu/qemu-char.c: In function 'qemu_chr_printf':
/src/qemu/qemu-char.c:182:5: error: function might be possible
candidate for 'ms_printf' format attribute
[-Werror=missing-format-attribute]
CC audio/audio.o
/src/qemu/audio/audio.c: In function 'AUD_vlog':
/src/qemu/audio/audio.c:346:9: error: function might be possible
candidate for 'ms_printf' format attribute
[-Werror=missing-format-attribute]

This is with mingw32 compiler, it should be happy with gnu_printf
instead of ms_printf in case you wonder that.

As far as I know all those warnings are false warnings.

The mingw32 includes are broken because they always
use ms format specifiers for the PRI* macros, even
when the compiler was told to use ansi/posix format.
Sending a patch to mingw32 is on my todo list.

qemu-common.h uses the same kind of wrong definitions
for PRI*64. I already have a patch for this and will send
it to qemu-devel soon.

Until mingw32 is fixed, I suggest to disable -Werror for
windows builds.

Is it possible to commit the previous patches (if you
hesitate committing the last one)? That would help a lot.

Thanks,
Stefan






reply via email to

[Prev in Thread] Current Thread [Next in Thread]