From owner-freebsd-hackers@FreeBSD.ORG  Sun Nov 18 08:21:34 2012
Return-Path: <owner-freebsd-hackers@FreeBSD.ORG>
Delivered-To: freebsd-hackers@freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52])
 by hub.freebsd.org (Postfix) with ESMTP id 23520F86;
 Sun, 18 Nov 2012 08:21:34 +0000 (UTC)
 (envelope-from rpaulo@felyko.com)
Received: from felyko.com (felyko.com [174.136.100.2])
 by mx1.freebsd.org (Postfix) with ESMTP id F2F098FC12;
 Sun, 18 Nov 2012 08:21:33 +0000 (UTC)
Received: from [IPv6:2601:9:4d00:85:29ff:bbc4:fa98:46d2] (unknown
 [IPv6:2601:9:4d00:85:29ff:bbc4:fa98:46d2])
 (using TLSv1 with cipher AES128-SHA (128/128 bits))
 (No client certificate requested)
 by felyko.com (Postfix) with ESMTPSA id 0FE4D39828;
 Sun, 18 Nov 2012 00:21:32 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=felyko.com; s=mail;
 t=1353226893; bh=hFmeFP1ra3uyuUUNlrBrGZHdAZh3mVbpd1B9GQiNWvY=;
 h=Subject:From:In-Reply-To:Date:Cc:References:To;
 b=RneZDGjJf82VvqkGiH0lgECJfc9f2QbGHOKBh5lAvGX3KzWYMtTa1tT1Qih5ONkkc
 BUtEeCiovBZu8ZyGjtPxE9e2/tGowlru1PPXUccf9q6k9yXytEvCJsdJAjBUKEvFcP
 tOR1yRBfhsNy4PD1xgaJyQ4TWm+oPsLJCSS/Ryaw=
Content-Type: text/plain; charset=us-ascii
Mime-Version: 1.0 (Mac OS X Mail 6.2 \(1499\))
Subject: Re: clang mangling some static struct names?
From: Rui Paulo <rpaulo@felyko.com>
In-Reply-To: <50A6B85F.6090707@gmail.com>
Date: Sun, 18 Nov 2012 00:21:32 -0800
Content-Transfer-Encoding: quoted-printable
Message-Id: <8E25C29E-D751-444B-8E16-4625A50BC165@felyko.com>
References: <50A6A3BD.5000901@gmail.com> <20121116214919.GA41725@freebsd.org>
 <50A6B85F.6090707@gmail.com>
To: Navdeep Parhar <nparhar@gmail.com>
X-Mailer: Apple Mail (2.1499)
X-Mailman-Approved-At: Sun, 18 Nov 2012 13:14:35 +0000
Cc: freebsd-hackers@freebsd.org, Roman Divacky <rdivacky@freebsd.org>
X-BeenThere: freebsd-hackers@freebsd.org
X-Mailman-Version: 2.1.14
Precedence: list
List-Id: Technical Discussions relating to FreeBSD
 <freebsd-hackers.freebsd.org>
List-Unsubscribe: <http://lists.freebsd.org/mailman/options/freebsd-hackers>, 
 <mailto:freebsd-hackers-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/freebsd-hackers>
List-Post: <mailto:freebsd-hackers@freebsd.org>
List-Help: <mailto:freebsd-hackers-request@freebsd.org?subject=help>
List-Subscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-hackers>,
 <mailto:freebsd-hackers-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Sun, 18 Nov 2012 08:21:34 -0000

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