All of lore.kernel.org
 help / color / mirror / Atom feed
From: "J. Mayer" <l_indien@magic.fr>
To: blp@cs.stanford.edu, qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] Re: RFC: fix for random Qemu crashes
Date: Sat, 17 Nov 2007 09:22:06 +0100	[thread overview]
Message-ID: <1195287727.5335.24.camel@rapid> (raw)
In-Reply-To: <87bq9tk26y.fsf@blp.benpfaff.org>


On Fri, 2007-11-16 at 18:58 -0800, Ben Pfaff wrote:
> "J. Mayer" <l_indien@magic.fr> writes:
> 
> > On Fri, 2007-11-16 at 21:32 +0100, andrzej zaborowski wrote:
> >> I think a line like
> >> 
> >> #define inline __attribute__ (( always_inline )) inline
> >> 
> >> in dyngen-exec.h should be 
> >
> > As I already pointed it in the first message of the thread, this kind of
> > define would expand recursivelly, [...]
> 
> No.  A macro is not expanded within its own expansion.  See ISO
> C99:

I just take a look of what happens in *real life* while compiling the
linux kernel which uses such a definition.... As I reported, I had
compilation problems due to this behavior and did inspect the
preprocessor output and saw this result. I did not check if it happens
only with some versions of gcc or if this behavior has been changed with
newer releases, I have to admit.

> 
>      6.10.3.4  Rescanning and further replacement
> [...]
> 2    If the name of the macro being replaced is found during this
>      scan of the replacement list (not including the rest of the
>      source file's preprocessing tokens), it is not replaced.
> 
> If it still bothers you, you could write it as
>         #define inline __attribute__ (( always_inline )) __inline__
> since GCC accepts __inline__ as a synonym for inline.

You're right, this would be a good solution to avoid many changes in the
code.

-- 
J. Mayer <l_indien@magic.fr>
Never organized

  reply	other threads:[~2007-11-17  8:22 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-11-15 23:18 [Qemu-devel] RFC: fix for random Qemu crashes J. Mayer
2007-11-15 23:49 ` andrzej zaborowski
2007-11-16  0:09   ` J. Mayer
2007-11-16 15:06 ` Heikki Lindholm
2007-11-16 15:35   ` Jocelyn Mayer
2007-11-16 15:42     ` Heikki Lindholm
2007-11-16 16:34       ` Jocelyn Mayer
2007-11-16 15:59   ` Jamie Lokier
2007-11-16 20:13     ` Jocelyn Mayer
2007-11-16 15:52 ` Paul Brook
2007-11-16 16:05   ` Jocelyn Mayer
2007-11-16 20:32     ` andrzej zaborowski
2007-11-17  0:04       ` J. Mayer
2007-11-17  2:58         ` [Qemu-devel] " Ben Pfaff
2007-11-17  8:22           ` J. Mayer [this message]
2007-11-17 10:57         ` [Qemu-devel] " andrzej zaborowski
2007-11-17 11:13           ` J. Mayer

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=1195287727.5335.24.camel@rapid \
    --to=l_indien@magic.fr \
    --cc=blp@cs.stanford.edu \
    --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.