From: "H . J . Lu" <hjl@lucon.org>
To: Andrew Morton <akpm@zip.com.au>
Cc: Momchil Velikov <velco@fadata.bg>,
Oliver Xymoron <oxymoron@waste.org>,
vda <vda@port.imtp.ilyichevsk.odessa.ua>,
linux-kernel@vger.kernel.org
Subject: Re: Extern variables in *.c files
Date: Wed, 2 Jan 2002 23:42:26 -0800 [thread overview]
Message-ID: <20020102234226.A23580@lucon.org> (raw)
In-Reply-To: <02010216180403.01928@manta> <Pine.LNX.4.43.0201021322120.30079-100000@waste.org> <3C337EF1.4C7C72AB@zip.com.au>, <3C337EF1.4C7C72AB@zip.com.au> <87ell8wgo9.fsf@fadata.bg> <3C340601.E9A3507F@zip.com.au>
In-Reply-To: <3C340601.E9A3507F@zip.com.au>; from akpm@zip.com.au on Wed, Jan 02, 2002 at 11:19:29PM -0800
On Wed, Jan 02, 2002 at 11:19:29PM -0800, Andrew Morton wrote:
>
> Alas, it doesn't quite work as we'd like:
>
> akpm-1:/home/akpm> cat a.c
> int a;
>
> main()
> {}
> akpm-1:/home/akpm> cat b.c
> extern char a;
>
> int b()
> {return a;}
> akpm-1:/home/akpm> gcc -fno-common -Wl,--warn-common a.c b.c
> akpm-1:/home/akpm>
>
> No warnings emitted. If b.c doesn't use `extern' it will fail
> to link because of -fno-common.
>
> What we'd *like* to happen is for the linker to determine that
> the `extern char' and the `int' declarations are a mismatch.
> Maybe the object file doesn't have the size info for `extern'
> variables. The compiler emits it though.
>
Compile doesn't emit the size info for
extern char a;
One way to fix it is to remove
extern char a;
and put
extern int a;
in a header file which is included by everyone.
H.J.
next prev parent reply other threads:[~2002-01-03 7:42 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2002-01-02 18:18 Extern variables in *.c files vda
2002-01-02 19:24 ` Oliver Xymoron
2002-01-02 21:43 ` Andrew Morton
2002-01-02 22:07 ` Momchil Velikov
2002-01-03 7:19 ` Andrew Morton
2002-01-03 7:42 ` H . J . Lu [this message]
2002-01-03 7:56 ` Andrew Morton
2002-01-03 8:24 ` Keith Owens
2002-01-03 9:57 ` Russell King
2002-01-04 0:28 ` Extern variables in *.c files (maintainers pls read this) vda
2002-01-03 23:14 ` Olaf Dietsche
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=20020102234226.A23580@lucon.org \
--to=hjl@lucon.org \
--cc=akpm@zip.com.au \
--cc=linux-kernel@vger.kernel.org \
--cc=oxymoron@waste.org \
--cc=vda@port.imtp.ilyichevsk.odessa.ua \
--cc=velco@fadata.bg \
/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