This is the mail archive of the binutils@sources.redhat.com mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Misleading linker message


> Date: Fri, 30 Nov 2001 13:20:43 -0800
> From: "H . J . Lu" <hjl@lucon.org>

> # cat foo.c
> extern void bar ();
> 
> void (*func) () = bar;
> 
> _start ()
> {
> }
> # gcc -g foo.c -c
> # ld -o static foo.o
> foo.o: In function `_start':
> /home/hjl/bugs/gas/discard3/foo.c:6: undefined reference to `bar'
> 
> The line number is totally wrong. In the case of the Linux kernel, ld
> reports the undefined reference in a totally unrelated source file.

Try it with DWARF2; there are long-standing bugs with stabs and
changing sections.  I think GCC already has a testcase, perhaps
g++.law/instantiate2.C?

-- 
- Geoffrey Keating <geoffk@geoffk.org> <geoffk@redhat.com>


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]