Package: gdb
Version: 7.0.1-2+b1
Severity: normal

Hello Daniel,

This example below works with gdb from lenny but not squeeze nor gdb 7.2 in 
squeeze.
It seems the issue is related to the existence of two files with the same name
'mp.c' (one in src/kernel/none/mp.c, the second generated in 
Olinux-x86_64.dbg/mp.c),
the first being the 2210 first lines of the second). They both start by 
#line 2 "../src/kernel/none/mp.c"
Only the second one is compiled in the binary.

The issue is that squeeze gdb cannot find the line numbers for functions 
defined in the second
mp.c after the line 2210, probably because it is looking at the first one.
This works flawlessly with lenny gdb.

Step to reproduce:

wget http://pari.math.u-bordeaux.fr/pub/pari/testing/pari-2.4.3.alpha.tar.gz
tar xf pari-2.4.3.alpha.tar.gz
cd pari-2.4.3.alpha/
./Configure --without-gmp -g
make gp.dbg
gdb ./gp.dbg
list addii_sign

Good result:
57      }
58
59      /* return gen_0 when the sign is 0 */
60      GEN
61      addii_sign(GEN x, long sx, GEN y, long sy)
62      {
63        long lx,ly;
64        GEN z;
65
66        if (!sx) return sy? icopy_sign(y, sy): gen_0;

Wrong result:
No line number known for addii_sign.

Work-around:
Rename one of the file so that have different name.

If you would like I do some kind of experiment to narrow the problem, please 
tell me.

Cheers,
-- 
Bill. <ballo...@debian.org>

Imagine a large red swirl here. 



-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org

Reply via email to