All of lore.kernel.org
 help / color / mirror / Atom feed
From: Stefan Weil <weil@mail.berlios.de>
To: Blue Swirl <blauwirbel@gmail.com>
Cc: QEMU Developers <qemu-devel@nongnu.org>
Subject: Re: [Qemu-devel] [PATCH 1/4] blockdev.h: Add GCC attribute (check format arguments)
Date: Thu, 01 Jul 2010 23:20:05 +0200	[thread overview]
Message-ID: <4C2D0685.9050403@mail.berlios.de> (raw)
In-Reply-To: <AANLkTimKQ7ZS0JbTjwFy-MCcxoreFRpxh0qi1BCEAj6t@mail.gmail.com>

Am 01.07.2010 22:10, schrieb Blue Swirl:
> On Thu, Jul 1, 2010 at 11:08 AM, Stefan Weil <weil@mail.berlios.de> wrote:
>> Signed-off-by: Stefan Weil <weil@mail.berlios.de>
>> ---
>>  blockdev.h |    3 ++-
>>  1 files changed, 2 insertions(+), 1 deletions(-)
>>
>> diff --git a/blockdev.h b/blockdev.h
>> index 23ea576..3c5c85d 100644
>> --- a/blockdev.h
>> +++ b/blockdev.h
>> @@ -42,7 +42,8 @@ extern int drive_get_max_bus(BlockInterfaceType type);
>>  extern void drive_uninit(DriveInfo *dinfo);
>>  extern const char *drive_get_serial(BlockDriverState *bdrv);
>>
>> -extern QemuOpts *drive_add(const char *file, const char *fmt, ...);
>> +extern QemuOpts *drive_add(const char *file, const char *fmt, ...)
>> +    __attribute__ ((__format__ (__printf__, 2, 3)));
>>  extern DriveInfo *drive_init(QemuOpts *arg, int default_to_scsi,
>>                              int *fatal_error);
>
> I lost the cover letter, so this applies to all patches: Wouldn't it
> make sense to make GCC_FMT_ATTR(n, m) from audio/audio_int.h available
> universally and then use that?


That's a matter of personal taste:

GCC_FMT_ATTR(n, m) is shorter, but a human reader has to
look it up once to see what it does (ok, some readers might
guess it right). The compiler has to look it up, too, so
a common header file is needed.

When I prepared the patches, I did not notice that some
functions used GCC_FMT_ATTR. I added the __attribute__
macro to these functions and got a compiler error...
This shows that at least for me GCC_FMT_ATTR was confusing
(of course it no longer is).

Some people prefer GCC_FMT_ATTR because they want to
be able to redefine it for non-gcc compilers.

__attribute__ can also be redefined for that case, so that
is not a very strong argument.

I prefer using __attribute__ without intermediate macro,
but don't mind if a different style is preferred for qemu.

Regards
Stefan

  reply	other threads:[~2010-07-01 21:20 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-07-01 11:08 [Qemu-devel] Add argument checking for a number of functions Stefan Weil
2010-07-01 11:08 ` [Qemu-devel] [PATCH 1/4] blockdev.h: Add GCC attribute (check format arguments) Stefan Weil
2010-07-01 20:10   ` Blue Swirl
2010-07-01 21:20     ` Stefan Weil [this message]
2010-07-01 22:02       ` malc
2010-07-01 11:08 ` [Qemu-devel] [PATCH 2/4] darwin-user: " Stefan Weil
2010-07-01 11:08 ` [Qemu-devel] [PATCH 3/4] qemu-char.h: " Stefan Weil
2010-07-01 11:08 ` [Qemu-devel] [PATCH 4/4] slirp.h: " Stefan Weil
2010-07-01 16:02 ` [Qemu-devel] Add argument checking for a number of functions Richard Henderson

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4C2D0685.9050403@mail.berlios.de \
    --to=weil@mail.berlios.de \
    --cc=blauwirbel@gmail.com \
    --cc=qemu-devel@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.