public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: "J . A . Magallon" <jamagallon@able.es>
To: Keith Owens <kaos@ocs.com.au>
Cc: Hugh Dickins <hugh@veritas.com>,
	Paul Gortmaker <p_gortmaker@yahoo.com>,
	linux-kernel list <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH] a more efficient BUG() macro
Date: Sun, 18 Feb 2001 01:33:53 +0100	[thread overview]
Message-ID: <20010218013353.A1331@werewolf.able.es> (raw)
In-Reply-To: <Pine.LNX.4.21.0102171200530.2029-100000@localhost.localdomain> <18856.982454476@ocs3.ocs-net>
In-Reply-To: <18856.982454476@ocs3.ocs-net>; from kaos@ocs.com.au on Sun, Feb 18, 2001 at 01:01:16 +0100


On 02.18 Keith Owens wrote:
> 
> __C_FILE__ and __C_LINE__ refer to the .c or .s file that included the
> header, so you get the exact location of the failing code instead of
> the name and line number of a common header which is used all over the
> place.  __C_FILE__ would be replaced with the minimum string required

Are you sure about that ?
Try this:
a.h:
#define hello printf("%d at %s\n",__LINE__,__FILE__)

a.c:
#include <stdio.h>
#include "a.h"

int main()
{
    hello;
    hello;
    return 0;
}

werewolf:~/ko> gcc a.c -o a
werewolf:~/ko> a
6 at a.c
7 at a.c

(line changes, and name is .c)
because __FILE__ and __LINE__ are expanded with respect to the current
SOURCE file (see info cpp), not header file.

As I said before, my choose would be the __func__ + __LINE__ predefined macros.
I would prefer to see 'bug in my_buggy_device_init(), line 42'. And you can
even drop the __LINE__ part.

-- 
J.A. Magallon                                                      $> cd pub
mailto:jamagallon@able.es                                          $> more beer

Linux werewolf 2.4.1-ac17 #1 SMP Sat Feb 17 01:47:56 CET 2001 i686


  reply	other threads:[~2001-02-18  0:34 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2001-02-17  8:51 [PATCH] a more efficient BUG() macro Paul Gortmaker
2001-02-17 12:26 ` Manfred Spraul
2001-02-17 12:57   ` Pauline Middelink
2001-02-17 13:15 ` Hugh Dickins
2001-02-17 14:22   ` J . A . Magallon
2001-02-17 15:14     ` J . A . Magallon
2001-02-17 17:04       ` [PATCH] conditionalize __io_virt_debug Jeff Garzik
2001-02-18  0:01   ` [PATCH] a more efficient BUG() macro Keith Owens
2001-02-18  0:33     ` J . A . Magallon [this message]
2001-02-18  0:48       ` Keith Owens
2001-02-18  1:33         ` Andrew Morton
2001-02-18  1:37           ` J . A . Magallon
2001-02-18  1:50             ` Andrew Morton
2001-02-18  1:47           ` Keith Owens
2001-02-18 14:27     ` Andi Kleen
2001-02-17 16:37 ` J . A . Magallon

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=20010218013353.A1331@werewolf.able.es \
    --to=jamagallon@able.es \
    --cc=hugh@veritas.com \
    --cc=kaos@ocs.com.au \
    --cc=linux-kernel@vger.kernel.org \
    --cc=p_gortmaker@yahoo.com \
    /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