public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
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


  reply	other threads:[~2008-01-10 21:04 UTC|newest]

Thread overview: 32+ 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:42                   ` Paul Mundt
2008-01-11  3:46                     ` Peter Stuge
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:23                           ` Paul Mundt
2008-01-11 12:27                             ` Roel Kluin
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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox