This is the mail archive of the
gdb-prs@sources.redhat.com
mailing list for the GDB project.
pending/992: [rfa] delete macro SYMBOL_LINKAGE_NAME
- From: David Carlton <carlton at math dot stanford dot edu>
- To: gdb-gnats at sources dot redhat dot com
- Cc: Elena Zannoni <ezannoni at redhat dot com>, Jim Blandy <jimb at redhat dot com>
- Date: 20 Jan 2003 16:58:00 -0800
- Subject: pending/992: [rfa] delete macro SYMBOL_LINKAGE_NAME
>Number: 992
>Category: pending
>Synopsis: [rfa] delete macro SYMBOL_LINKAGE_NAME
>Confidential: yes
>Severity: serious
>Priority: medium
>Responsible: unassigned
>State: open
>Class: change-request
>Submitter-Id: unknown
>Arrival-Date: Fri Jan 31 05:28:00 UTC 2003
>Closed-Date:
>Last-Modified:
>Originator:
>Release:
>Organization:
>Environment:
>Description:
This is the first part of my plan to clean up symbol accessors. It
deletes the macro SYMBOL_LINKAGE_NAME: that macro is only used in two
places in one function, and is easy to replace by an equivalent use of
asm_demangle, SYMBOL_SOURCE_NAME, and SYMBOL_NAME. Given that I'd
like to use the name SYMBOL_LINKAGE_NAME for something else, I'd like
to get rid of its current use.
Tested on i686-pc-linux-gnu/GCC3.1/DWARF-2 (and seems obviously
correct by inspection, assuming that you agree that its goal is
valid). OK to commit?
David Carlton
carlton@math.stanford.edu
2003-01-20 David Carlton <carlton@math.stanford.edu>
* symtab.h (SYMBOL_LINKAGE_NAME): Delete.
* printcmd.c (build_address_symbolic): Replace uses of
SYMBOL_LINKAGE_NAME by equivalent uses of SYMBOL_SOURCE_NAME,
SYMBOL_NAME, and asm_demangle.
Update copyright.
Index: symtab.h
===================================================================
RCS file: /cvs/src/src/gdb/symtab.h,v
retrieving revision 1.55
diff -u -p -r1.55 symtab.h
--- symtab.h 19 Jan 2003 04:06:46 -0000 1.55
+++ symtab.h 21 Jan 2003 00:18:36 -0000
@@ -172,17 +172,6 @@ extern char *symbol_demangled_name (stru
? SYMBOL_DEMANGLED_NAME (symbol) \
: SYMBOL_NAME (symbol))
-/* Macro that returns the "natural assembly name" of a symbol. In C++ this is
- the "mangled" form of the name if demangle is off, or if demangle is on and
- asm_demangle is off. Otherwise if asm_demangle is on it is the "demangled"
- form. In other languages this is just the symbol name. The result should
- never be NULL. */
-
-#define SYMBOL_LINKAGE_NAME(symbol) \
- (demangle && asm_demangle && SYMBOL_DEMANGLED_NAME (symbol) != NULL \
- ? SYMBOL_DEMANGLED_NAME (symbol) \
- : SYMBOL_NAME (symbol))
-
/* Macro that tests a symbol for a match against a specified name string.
First test the unencoded name, then looks for and test a C++ encoded
name if it exists. Note that whitespace is ignored while attempting to
Index: printcmd.c
===================================================================
RCS file: /cvs/src/src/gdb/printcmd.c,v
retrieving revision 1.50
diff -u -p -r1.50 printcmd.c
--- printcmd.c 21 Nov 2002 18:54:44 -0000 1.50
+++ printcmd.c 21 Jan 2003 00:56:47 -0000
@@ -1,7 +1,7 @@
/* Print values for GNU debugger GDB.
Copyright 1986, 1987, 1988, 1989, 1990, 1991, 1992, 1993, 1994,
- 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002 Free Software
+ 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003 Free Software
Foundation, Inc.
This file is part of GDB.
@@ -639,10 +639,10 @@ build_address_symbolic (CORE_ADDR addr,
if (symbol)
{
name_location = BLOCK_START (SYMBOL_BLOCK_VALUE (symbol));
- if (do_demangle)
+ if (do_demangle || asm_demangle)
name_temp = SYMBOL_SOURCE_NAME (symbol);
else
- name_temp = SYMBOL_LINKAGE_NAME (symbol);
+ name_temp = SYMBOL_NAME (symbol);
}
if (msymbol != NULL)
@@ -654,10 +654,10 @@ build_address_symbolic (CORE_ADDR addr,
symbol = 0;
symtab = 0;
name_location = SYMBOL_VALUE_ADDRESS (msymbol);
- if (do_demangle)
+ if (do_demangle || asm_demangle)
name_temp = SYMBOL_SOURCE_NAME (msymbol);
else
- name_temp = SYMBOL_LINKAGE_NAME (msymbol);
+ name_temp = SYMBOL_NAME (msymbol);
}
}
if (symbol == NULL && msymbol == NULL)
>How-To-Repeat:
>Fix:
>Release-Note:
>Audit-Trail:
>Unformatted: