From: Roel Kluin <12o3l@tiscali.nl>
To: Al Viro <viro@ZenIV.linux.org.uk>
Cc: Richard Knutsson <ricknu-0@student.ltu.se>,
Mathieu Segaud <mathieu.segaud@regala.cx>,
akpm@linux-foundation.org, linux-ext4@vger.kernel.org,
linux-kernel@vger.kernel.org, linux-pcmcia@lists.infradead.org
Subject: Re: [PATCH] [Coding Style]: fs/ext{3,4}/ext{3,4}_jbd{,2}.c
Date: Thu, 10 Jan 2008 22:03:58 +0100 [thread overview]
Message-ID: <4786883E.30604@tiscali.nl> (raw)
In-Reply-To: <20080105051817.GD27894@ZenIV.linux.org.uk>
Al Viro wrote:
> __func__ is C99, but it's not what __FUNCTION__ used to be - it's not a
> string literal. 6.4.2.2(1):
>
> The identifier __func__ shall be implicitly declared by the translator
> as if, immediately following the opening brace of each function definition,
> the declaration
> static const char __func__[] = "function-name";
> appeared, where function-name is the name of the lexically-enclosing function.
>
> IOW, it's a phase 7 (parsing and translation of translation units) and not
> phase 4 (preprocessor). Practical implications are:
> * _way_ fewer kludges
> * it happens after phase 6 (string literal concatenation)
> So __FUNCION__ " is called" within body of foo() would result in
> "foo is called" while __func__ "is called" is a syntax error.
>
> These days old gcc __FUNCTION__ is gone; it's a macro expanding to __func__,
> so behaviour does *not* match the original (see above).
so if I understand correctly, this requires a fix:
--
__FUNCTION__ is a macro expanding to __func__ and translated as if previously
in that function was declared:
static const char __func__[] = "function-name";
As is DEBUG() - when active - will produce a syntax error.
Signed-off-by: Roel Kluin <12o3l@tiscali.nl>
---
diff --git a/drivers/pcmcia/au1000_xxs1500.c b/drivers/pcmcia/au1000_xxs1500.c
index ce9d5c4..855e1d6 100644
--- a/drivers/pcmcia/au1000_xxs1500.c
+++ b/drivers/pcmcia/au1000_xxs1500.c
@@ -56,7 +56,7 @@
#define PCMCIA_IRQ AU1000_GPIO_4
#if 0
-#define DEBUG(x,args...) printk(__FUNCTION__ ": " x,##args)
+#define DEBUG(x, args...) printk("%s: ", __func__, x, ##args)
#else
#define DEBUG(x,args...)
#endif
next prev parent reply other threads:[~2008-01-10 21:03 UTC|newest]
Thread overview: 38+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-01-04 13:21 [PATCH] [Coding Style]: misc fixes for fs/ext{3,4}/acl.{c,h} from checkpatch.pl Mathieu Segaud
2008-01-04 13:21 ` [PATCH] [Coding Style]: fs/ext{3,4}/balloc.c Mathieu Segaud
2008-01-04 13:21 ` [PATCH] [Coding Style]: fs/ext{3,4}/bitmap.c Mathieu Segaud
2008-01-04 13:21 ` [PATCH] [Coding Style]: fs/ext{3,4}/dir.c Mathieu Segaud
2008-01-04 13:21 ` [PATCH] [Coding Style]: fs/ext{3,4}/ext{3,4}_jbd{,2}.c Mathieu Segaud
2008-01-04 13:41 ` Richard Knutsson
2008-01-04 13:47 ` Mathieu SEGAUD
2008-01-05 4:12 ` Andreas Dilger
2008-01-05 4:47 ` Dmitri Vorobiev
2008-01-05 4:48 ` Dmitri Vorobiev
2008-01-05 5:18 ` Al Viro
2008-01-10 21:03 ` Roel Kluin [this message]
2008-01-11 3:09 ` Peter Stuge
2008-01-11 3:09 ` Peter Stuge
2008-01-11 3:42 ` Paul Mundt
2008-01-11 3:46 ` Peter Stuge
2008-01-11 3:46 ` Peter Stuge
2008-01-11 9:45 ` Roel Kluin
2008-01-11 9:45 ` Roel Kluin
2008-01-11 10:29 ` Paul Mundt
2008-01-11 11:04 ` Roel Kluin
2008-01-11 11:04 ` Roel Kluin
2008-01-11 11:23 ` Paul Mundt
2008-01-11 12:27 ` Roel Kluin
2008-01-11 12:27 ` Roel Kluin
2008-01-11 3:42 ` Paul Mundt
2008-01-04 13:44 ` [PATCH] [Coding Style]: misc fixes for fs/ext{3,4}/acl.{c,h} from checkpatch.pl Theodore Tso
2008-01-04 13:49 ` Mathieu SEGAUD
2008-01-04 13:56 ` Theodore Tso
2008-01-04 16:30 ` Andi Kleen
2008-01-04 19:01 ` Theodore Tso
2008-01-04 19:41 ` Andi Kleen
2008-01-04 20:01 ` Cyrill Gorcunov
2008-01-04 20:03 ` Paolo Ciarrocchi
2008-01-04 22:33 ` Andi Kleen
2008-01-05 0:12 ` Paolo Ciarrocchi
2008-01-05 0:39 ` Theodore Tso
2008-01-05 21:24 ` Jan Engelhardt
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=4786883E.30604@tiscali.nl \
--to=12o3l@tiscali.nl \
--cc=akpm@linux-foundation.org \
--cc=linux-ext4@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pcmcia@lists.infradead.org \
--cc=mathieu.segaud@regala.cx \
--cc=ricknu-0@student.ltu.se \
--cc=viro@ZenIV.linux.org.uk \
/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.