From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 1307 invoked by alias); 4 Apr 2005 20:44:58 -0000 Mailing-List: contact gdb-patches-help@sources.redhat.com; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sources.redhat.com Received: (qmail 1283 invoked from network); 4 Apr 2005 20:44:55 -0000 Received: from unknown (HELO md0.mail.umd.edu) (128.8.31.162) by sourceware.org with SMTP; 4 Apr 2005 20:44:55 -0000 Received: from teqdruid.student.umd.edu (teqdruid.student.umd.edu [129.2.222.235]) by md0.mail.umd.edu (MOS 3.5.6-GR) with ESMTP id ASU06649 (AUTH teqdruid); Mon, 4 Apr 2005 16:44:52 -0400 (EDT) Subject: Re: D Symbol Demangling From: John Demme To: Michael Snyder Cc: gdb-patches@sources.redhat.com In-Reply-To: <425185A9.8090104@redhat.com> References: <1112582221.14153.32.camel@localhost.localdomain> <425185A9.8090104@redhat.com> Content-Type: text/plain Date: Mon, 04 Apr 2005 20:44:00 -0000 Message-Id: <1112647505.14153.46.camel@localhost.localdomain> Mime-Version: 1.0 Content-Transfer-Encoding: 7bit X-SW-Source: 2005-04/txt/msg00045.txt.bz2 By link compatible, I mean that I'll compile a D file with a D compiler to a .o file, then I can link it with another .o file compiled with, say, gcc. So a source file can be either C or D, but not both (barring some sort of bizarre scripting situations.) An important note here, however, is that because D can call C functions, some of the symbols in a D object file won't be mangled. I've been having trouble figuring out what differentiates the functions. On the surface, the more complex ones don't work, but in my test, there's only simple one. Do I appear to be interfacing with GDB correctly? If so, I'll triple check my code. Thanks John Demme On Mon, 2005-04-04 at 11:21 -0700, Michael Snyder wrote: > John Demme wrote: > > Thus far, I've had partial success. In fairly simple D programs, my > > demangling works, but in more complex programs with mixed C and D code > > (D is link-compatible with C) it only calls the D demangler for some of > > the functions. > > What's the granularity of mixed code? Is it mixed within a source > file, or just between source files? If a source file contains only > one language, I think gdb ought to be able to discern it reliably. > > When you say "for some of the functions", what differentiates > the ones where it successfully discerns the D language from those > where it doesn't? >