Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 18 Nov 2012 00:21:32 -0800
From:      Rui Paulo <rpaulo@felyko.com>
To:        Navdeep Parhar <nparhar@gmail.com>
Cc:        freebsd-hackers@freebsd.org, Roman Divacky <rdivacky@freebsd.org>
Subject:   Re: clang mangling some static struct names?
Message-ID:  <8E25C29E-D751-444B-8E16-4625A50BC165@felyko.com>
In-Reply-To: <50A6B85F.6090707@gmail.com>
References:  <50A6A3BD.5000901@gmail.com> <20121116214919.GA41725@freebsd.org> <50A6B85F.6090707@gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On 16 Nov 2012, at 14:04, Navdeep Parhar <nparhar@gmail.com> wrote:

> On 11/16/12 13:49, Roman Divacky wrote:
>> Yes, it does that. iirc so that you can have things like
>>=20
>> void foo(int cond) {
>>  if (cond) {
>>    static int i =3D 7;
>>  } else {
>>    static int i =3D 8;
>>  }
>> }
>>=20
>> working correctly.
>=20
> It's not appending the .n everywhere.  And when it does, I don't see =
any
> potential collision that it prevented by doing so.  Instead, it looks
> like the .n symbol corresponds to the nth element in the structure (so
> this is not name mangling in the true sense).  I just don't see the
> point in doing things this way.  It is only making things harder for
> debuggers.


It's likely that FreeBSD's gdb has to grow support for this new symbol =
format. Have you tried using the newest gdb available from ports?=20

Regards,
--
Rui Paulo




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?8E25C29E-D751-444B-8E16-4625A50BC165>