This is the mail archive of the gdb-prs@sources.redhat.com mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

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:


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]