This is the mail archive of the gdb-patches@sourceware.org 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]

[commit] Remove DEPRECATED_SYMBOL_NAME


Here's something I've been meaning to do for ages: remove
DEPRECATED_SYMBOL_NAME.  This "just" consisted of auditing every
occurance, and changing most of them to SYMBOL_LINKAGE_NAME or
the new SYMBOL_SET_LINKAGE_NAME for assignments.

A few were used for messages; I changed those to SYMBOL_PRINT_NAME, as
the name implies.

One was used as an argument to cplus_demangle.  I replaced that with a
call to cp_remove_params, which does not rely on the demangler.

Also, msymbols are supposed to be hashed, looked up, and searched for
according to SYMBOL_SEARCH_NAME.

Tested on x86_64-linux and arm-eabi, then committed.  One more
deprecated macro down, and one fewer way to check the name of a
symbol.

-- 
Daniel Jacobowitz
CodeSourcery

2008-08-21  Daniel Jacobowitz  <dan@codesourcery.com>

	* ax-gdb.c (gen_var_ref): Use SYMBOL_LINKAGE_NAME.
	* blockframe.c (find_pc_partial_function): Likewise.
	* buildsym.c (find_symbol_in_list): Likewise.
	* c-valprint.c (c_val_print): Likewise.
	* coffread.c (patch_opaque_types, process_coff_symbol): Likewise.
	(coff_read_enum_type): Likewise.  Use SYMBOL_SET_LINKAGE_NAME.
	* cp-support.c (cp_remove_params): Renamed from remove_params and
	made global.
	(overload_list_add_symbol): Update call to remove_params.
	* cp-support.h (cp_remove_params): Declare.
	* dwarf2read.c (process_enumeration_scope): Use SYMBOL_LINKAGE_NAME.
	(dwarf2_const_value): Use SYMBOL_PRINT_NAME.
	* expprint.c (dump_subexp_body_standard): Likewise.
	* f-valprint.c (info_common_command, there_is_a_visible_common_named):
	Use SYMBOL_LINKAGE_NAME to find symbols and SYMBOL_PRINT_NAME
	for messages.
	* findvar.c (read_var_value): Use SYMBOL_LINKAGE_NAME.
	* gnu-v2-abi.c (gnuv2_value_rtti_type): Likewise.
	* hppa-hpux-tdep.c (hppa32_hpux_in_solib_call_trampoline)
	(hppa_hpux_skip_trampoline_code): Use SYMBOL_LINKAGE_NAME to find
	symbols and SYMBOL_PRINT_NAME for messages.
	* jv-lang.c (add_class_symbol): Use SYMBOL_SET_LINKAGE_NAME.
	* linespec.c (decode_line_2): Use SYMBOL_LINKAGE_NAME.
	* mdebugread.c (parse_symbol): Use SYMBOL_LINKAGE_NAME and
	SYMBOL_SET_LINKAGE_NAME.
	(mylookup_symbol): Use SYMBOL_LINKAGE_NAME.
	* minsyms.c (add_minsym_to_demangled_hash_table): Use
	SYMBOL_SEARCH_NAME.
	(lookup_minimal_symbol): Use SYMBOL_LINKAGE_NAME or
	SYMBOL_MATCHES_SEARCH_NAME, depending on the pass.
	* objfiles.h (ALL_OBJFILE_MSYMBOLS): Use SYMBOL_LINKAGE_NAME.
	* printcmd.c (build_address_symbolic): Use SYMBOL_LINKAGE_NAME.
	(address_info): Use SYMBOL_PRINT_NAME for messages and
	SYMBOL_LINKAGE_NAME for lookups.
	* sol-thread.c (info_cb): Use SYMBOL_PRINT_NAME for messages.
	* stabsread.c (patch_block_stabs, define_symbol)
	(read_type, read_enum_type, common_block_end)
	(cleanup_undefined_types_1, scan_file_globals): Use
	SYMBOL_LINKAGE_NAME, SYMBOL_SET_LINKAGE_NAME, ALL_OBJFILE_MSYMBOLS,
	and SYMBOL_PRINT_NAME.
	* stack.c (print_frame_args): Use SYMBOL_LINKAGE_NAME.
	(print_frame, frame_info): Use SYMBOL_PRINT_NAME for output.  Use
	cp_remove_params instead of cplus_demangle.
	(print_block_frame_labels, print_frame_arg_vars): Use
	SYMBOL_LINKAGE_NAME.
	* symmisc.c (dump_msymbols): Use ALL_OBJFILE_MSYMBOLS and
	SYMBOL_LINKAGE_NAME.
	(dump_symtab_1, print_symbol, print_partial_symbols)
	(maintenance_check_symtabs): Use SYMBOL_LINKAGE_NAME.
	* symtab.h (DEPRECATED_SYMBOL_NAME): Delete.
	(SYMBOL_SET_LINKAGE_NAME): New.
	(SYMBOL_SET_NAMES): Add a comment.
	* tracepoint.c (set_traceframe_context, validate_actionline)
	(collect_symbol, scope_info): Use SYMBOL_LINKAGE_NAME for
	lookups and SYMBOL_PRINT_NAME for output.
	* typeprint.c (typedef_print): Use SYMBOL_LINKAGE_NAME.
	* xcoffread.c (process_xcoff_symbol): Use SYMBOL_SET_LINKAGE_NAME.

---
 ax-gdb.c         |    2 -
 blockframe.c     |   10 +++---
 buildsym.c       |    2 -
 c-valprint.c     |    2 -
 coffread.c       |   25 ++++++++-------
 cp-support.c     |    6 +--
 cp-support.h     |    2 +
 dwarf2read.c     |    6 +--
 expprint.c       |    2 -
 f-valprint.c     |   14 ++++----
 findvar.c        |    2 -
 gnu-v2-abi.c     |    2 -
 hppa-hpux-tdep.c |   10 +++---
 jv-lang.c        |    2 -
 linespec.c       |    4 +-
 mdebugread.c     |   14 ++++----
 minsyms.c        |   19 +++++-------
 objfiles.h       |    2 -
 printcmd.c       |    8 ++---
 sol-thread.c     |    4 +-
 stabsread.c      |   86 ++++++++++++++++++++++++++++---------------------------
 stack.c          |   76 +++++++++++++++++++-----------------------------
 symmisc.c        |   22 +++++++-------
 symtab.h         |   21 +++++++------
 tracepoint.c     |   34 ++++++++++-----------
 typeprint.c      |    4 +-
 xcoffread.c      |    2 -
 27 files changed, 188 insertions(+), 195 deletions(-)

Index: gdb/ax-gdb.c
===================================================================
--- gdb.orig/ax-gdb.c	2008-06-03 08:53:42.000000000 -0400
+++ gdb/ax-gdb.c	2008-08-20 19:04:42.000000000 -0400
@@ -599,7 +599,7 @@ gen_var_ref (struct agent_expr *ax, stru
     case LOC_UNRESOLVED:
       {
 	struct minimal_symbol *msym
-	= lookup_minimal_symbol (DEPRECATED_SYMBOL_NAME (var), NULL, NULL);
+	  = lookup_minimal_symbol (SYMBOL_LINKAGE_NAME (var), NULL, NULL);
 	if (!msym)
 	  error (_("Couldn't resolve symbol `%s'."), SYMBOL_PRINT_NAME (var));
 
Index: gdb/blockframe.c
===================================================================
--- gdb.orig/blockframe.c	2008-08-20 10:43:10.000000000 -0400
+++ gdb/blockframe.c	2008-08-20 19:05:50.000000000 -0400
@@ -223,7 +223,7 @@ find_pc_partial_function (CORE_ADDR pc, 
 	    {
 	      cache_pc_function_low = BLOCK_START (SYMBOL_BLOCK_VALUE (f));
 	      cache_pc_function_high = BLOCK_END (SYMBOL_BLOCK_VALUE (f));
-	      cache_pc_function_name = DEPRECATED_SYMBOL_NAME (f);
+	      cache_pc_function_name = SYMBOL_LINKAGE_NAME (f);
 	      cache_pc_function_section = section;
 	      goto return_cached_value;
 	    }
@@ -244,7 +244,7 @@ find_pc_partial_function (CORE_ADDR pc, 
 	      if (address)
 		*address = SYMBOL_VALUE_ADDRESS (psb);
 	      if (name)
-		*name = DEPRECATED_SYMBOL_NAME (psb);
+		*name = SYMBOL_LINKAGE_NAME (psb);
 	      /* endaddr non-NULL can't happen here.  */
 	      return 1;
 	    }
@@ -275,7 +275,7 @@ find_pc_partial_function (CORE_ADDR pc, 
     }
 
   cache_pc_function_low = SYMBOL_VALUE_ADDRESS (msymbol);
-  cache_pc_function_name = DEPRECATED_SYMBOL_NAME (msymbol);
+  cache_pc_function_name = SYMBOL_LINKAGE_NAME (msymbol);
   cache_pc_function_section = section;
 
   /* If the minimal symbol has a size, use it for the cache.
@@ -291,14 +291,14 @@ find_pc_partial_function (CORE_ADDR pc, 
 	 other sections, to find the next symbol in this section with
 	 a different address.  */
 
-      for (i = 1; DEPRECATED_SYMBOL_NAME (msymbol + i) != NULL; i++)
+      for (i = 1; SYMBOL_LINKAGE_NAME (msymbol + i) != NULL; i++)
 	{
 	  if (SYMBOL_VALUE_ADDRESS (msymbol + i) != SYMBOL_VALUE_ADDRESS (msymbol)
 	      && SYMBOL_BFD_SECTION (msymbol + i) == SYMBOL_BFD_SECTION (msymbol))
 	    break;
 	}
 
-      if (DEPRECATED_SYMBOL_NAME (msymbol + i) != NULL
+      if (SYMBOL_LINKAGE_NAME (msymbol + i) != NULL
 	  && SYMBOL_VALUE_ADDRESS (msymbol + i) < obj_section_endaddr (osect))
 	cache_pc_function_high = SYMBOL_VALUE_ADDRESS (msymbol + i);
       else
Index: gdb/buildsym.c
===================================================================
--- gdb.orig/buildsym.c	2008-08-15 11:14:04.000000000 -0400
+++ gdb/buildsym.c	2008-08-20 19:04:42.000000000 -0400
@@ -168,7 +168,7 @@ find_symbol_in_list (struct pending *lis
     {
       for (j = list->nsyms; --j >= 0;)
 	{
-	  pp = DEPRECATED_SYMBOL_NAME (list->symbol[j]);
+	  pp = SYMBOL_LINKAGE_NAME (list->symbol[j]);
 	  if (*pp == *name && strncmp (pp, name, length) == 0 &&
 	      pp[length] == '\0')
 	    {
Index: gdb/c-valprint.c
===================================================================
--- gdb.orig/c-valprint.c	2008-06-03 08:53:42.000000000 -0400
+++ gdb/c-valprint.c	2008-08-20 19:04:42.000000000 -0400
@@ -261,7 +261,7 @@ c_val_print (struct type *type, const gd
 		  int is_this_fld;
 
 		  if (msymbol != NULL)
-		    wsym = lookup_symbol (DEPRECATED_SYMBOL_NAME (msymbol), block,
+		    wsym = lookup_symbol (SYMBOL_LINKAGE_NAME (msymbol), block,
 					  VAR_DOMAIN, &is_this_fld);
 
 		  if (wsym)
Index: gdb/coffread.c
===================================================================
--- gdb.orig/coffread.c	2008-08-04 10:33:04.000000000 -0400
+++ gdb/coffread.c	2008-08-20 19:04:42.000000000 -0400
@@ -1429,15 +1429,15 @@ patch_opaque_types (struct symtab *s)
 	  TYPE_CODE (SYMBOL_TYPE (real_sym)) == TYPE_CODE_PTR &&
 	  TYPE_LENGTH (TYPE_TARGET_TYPE (SYMBOL_TYPE (real_sym))) != 0)
 	{
-	  char *name = DEPRECATED_SYMBOL_NAME (real_sym);
+	  char *name = SYMBOL_LINKAGE_NAME (real_sym);
 	  int hash = hashname (name);
 	  struct symbol *sym, *prev;
 
 	  prev = 0;
 	  for (sym = opaque_type_chain[hash]; sym;)
 	    {
-	      if (name[0] == DEPRECATED_SYMBOL_NAME (sym)[0] &&
-		  strcmp (name + 1, DEPRECATED_SYMBOL_NAME (sym) + 1) == 0)
+	      if (name[0] == SYMBOL_LINKAGE_NAME (sym)[0] &&
+		  strcmp (name + 1, SYMBOL_LINKAGE_NAME (sym) + 1) == 0)
 		{
 		  if (prev)
 		    {
@@ -1604,7 +1604,7 @@ process_coff_symbol (struct coff_symbol 
 		}
 	      else
 		TYPE_NAME (SYMBOL_TYPE (sym)) =
-		  concat (DEPRECATED_SYMBOL_NAME (sym), (char *)NULL);
+		  concat (SYMBOL_LINKAGE_NAME (sym), (char *)NULL);
 	    }
 
 	  /* Keep track of any type which points to empty structured type,
@@ -1617,7 +1617,7 @@ process_coff_symbol (struct coff_symbol 
 	      TYPE_CODE (TYPE_TARGET_TYPE (SYMBOL_TYPE (sym))) !=
 	      TYPE_CODE_UNDEF)
 	    {
-	      int i = hashname (DEPRECATED_SYMBOL_NAME (sym));
+	      int i = hashname (SYMBOL_LINKAGE_NAME (sym));
 
 	      SYMBOL_VALUE_CHAIN (sym) = opaque_type_chain[i];
 	      opaque_type_chain[i] = sym;
@@ -1635,11 +1635,11 @@ process_coff_symbol (struct coff_symbol 
 	     names for anonymous enums, structures, and unions, like
 	     "~0fake" or ".0fake".  Thanks, but no thanks... */
 	  if (TYPE_TAG_NAME (SYMBOL_TYPE (sym)) == 0)
-	    if (DEPRECATED_SYMBOL_NAME (sym) != NULL
-		&& *DEPRECATED_SYMBOL_NAME (sym) != '~'
-		&& *DEPRECATED_SYMBOL_NAME (sym) != '.')
+	    if (SYMBOL_LINKAGE_NAME (sym) != NULL
+		&& *SYMBOL_LINKAGE_NAME (sym) != '~'
+		&& *SYMBOL_LINKAGE_NAME (sym) != '.')
 	      TYPE_TAG_NAME (SYMBOL_TYPE (sym)) =
-		concat (DEPRECATED_SYMBOL_NAME (sym), (char *)NULL);
+		concat (SYMBOL_LINKAGE_NAME (sym), (char *)NULL);
 
 	  add_symbol_to_list (sym, &file_symbols);
 	  break;
@@ -2031,8 +2031,9 @@ coff_read_enum_type (int index, int leng
 	    (&objfile->objfile_obstack, sizeof (struct symbol));
 	  memset (sym, 0, sizeof (struct symbol));
 
-	  DEPRECATED_SYMBOL_NAME (sym) =
-	    obsavestring (name, strlen (name), &objfile->objfile_obstack);
+	  SYMBOL_SET_LINKAGE_NAME (sym,
+				   obsavestring (name, strlen (name),
+						 &objfile->objfile_obstack));
 	  SYMBOL_CLASS (sym) = LOC_CONST;
 	  SYMBOL_DOMAIN (sym) = VAR_DOMAIN;
 	  SYMBOL_VALUE (sym) = ms->c_value;
@@ -2078,7 +2079,7 @@ coff_read_enum_type (int index, int leng
 	{
 	  struct symbol *xsym = syms->symbol[j];
 	  SYMBOL_TYPE (xsym) = type;
-	  TYPE_FIELD_NAME (type, n) = DEPRECATED_SYMBOL_NAME (xsym);
+	  TYPE_FIELD_NAME (type, n) = SYMBOL_LINKAGE_NAME (xsym);
 	  TYPE_FIELD_BITPOS (type, n) = SYMBOL_VALUE (xsym);
 	  if (SYMBOL_VALUE (xsym) < 0)
 	    unsigned_enum = 0;
Index: gdb/cp-support.c
===================================================================
--- gdb.orig/cp-support.c	2008-06-03 08:53:42.000000000 -0400
+++ gdb/cp-support.c	2008-08-20 19:04:42.000000000 -0400
@@ -377,8 +377,8 @@ cp_func_name (const char *full_name)
    (optionally) a return type.  Return the name of the function without
    parameters or return type, or NULL if we can not parse the name.  */
 
-static char *
-remove_params (const char *demangled_name)
+char *
+cp_remove_params (const char *demangled_name)
 {
   int done = 0;
   struct demangle_component *ret_comp;
@@ -649,7 +649,7 @@ overload_list_add_symbol (struct symbol 
       return;
 
   /* Get the demangled name without parameters */
-  sym_name = remove_params (SYMBOL_NATURAL_NAME (sym));
+  sym_name = cp_remove_params (SYMBOL_NATURAL_NAME (sym));
   if (!sym_name)
     return;
 
Index: gdb/cp-support.h
===================================================================
--- gdb.orig/cp-support.h	2008-06-03 08:53:42.000000000 -0400
+++ gdb/cp-support.h	2008-08-20 19:04:42.000000000 -0400
@@ -64,6 +64,8 @@ extern unsigned int cp_entire_prefix_len
 
 extern char *cp_func_name (const char *full_name);
 
+extern char *cp_remove_params (const char *demangled_name);
+
 extern struct symbol **make_symbol_overload_list (const char *,
 						  const char *);
 
Index: gdb/dwarf2read.c
===================================================================
--- gdb.orig/dwarf2read.c	2008-08-20 18:52:15.000000000 -0400
+++ gdb/dwarf2read.c	2008-08-20 19:04:42.000000000 -0400
@@ -4375,7 +4375,7 @@ process_enumeration_scope (struct die_in
 				  * sizeof (struct field));
 		    }
 
-		  FIELD_NAME (fields[num_fields]) = DEPRECATED_SYMBOL_NAME (sym);
+		  FIELD_NAME (fields[num_fields]) = SYMBOL_LINKAGE_NAME (sym);
 		  FIELD_TYPE (fields[num_fields]) = NULL;
 		  FIELD_BITPOS (fields[num_fields]) = SYMBOL_VALUE (sym);
 		  FIELD_BITSIZE (fields[num_fields]) = 0;
@@ -7624,7 +7624,7 @@ dwarf2_const_value (struct attribute *at
     {
     case DW_FORM_addr:
       if (TYPE_LENGTH (SYMBOL_TYPE (sym)) != cu_header->addr_size)
-	dwarf2_const_value_length_mismatch_complaint (DEPRECATED_SYMBOL_NAME (sym),
+	dwarf2_const_value_length_mismatch_complaint (SYMBOL_PRINT_NAME (sym),
 						      cu_header->addr_size,
 						      TYPE_LENGTH (SYMBOL_TYPE
 								   (sym)));
@@ -7648,7 +7648,7 @@ dwarf2_const_value (struct attribute *at
     case DW_FORM_block:
       blk = DW_BLOCK (attr);
       if (TYPE_LENGTH (SYMBOL_TYPE (sym)) != blk->size)
-	dwarf2_const_value_length_mismatch_complaint (DEPRECATED_SYMBOL_NAME (sym),
+	dwarf2_const_value_length_mismatch_complaint (SYMBOL_PRINT_NAME (sym),
 						      blk->size,
 						      TYPE_LENGTH (SYMBOL_TYPE
 								   (sym)));
Index: gdb/expprint.c
===================================================================
--- gdb.orig/expprint.c	2008-03-10 16:07:21.000000000 -0400
+++ gdb/expprint.c	2008-08-20 19:04:42.000000000 -0400
@@ -954,7 +954,7 @@ dump_subexp_body_standard (struct expres
       fprintf_filtered (stream, ", symbol @");
       gdb_print_host_address (exp->elts[elt + 1].symbol, stream);
       fprintf_filtered (stream, " (%s)",
-			DEPRECATED_SYMBOL_NAME (exp->elts[elt + 1].symbol));
+			SYMBOL_PRINT_NAME (exp->elts[elt + 1].symbol));
       elt += 3;
       break;
     case OP_LAST:
Index: gdb/f-valprint.c
===================================================================
--- gdb.orig/f-valprint.c	2008-05-07 08:40:26.000000000 -0400
+++ gdb/f-valprint.c	2008-08-20 19:04:42.000000000 -0400
@@ -677,9 +677,9 @@ info_common_command (char *comname, int 
       if (msymbol != NULL
 	  && (SYMBOL_VALUE_ADDRESS (msymbol)
 	      > BLOCK_START (SYMBOL_BLOCK_VALUE (func))))
-	funname = DEPRECATED_SYMBOL_NAME (msymbol);
+	funname = SYMBOL_LINKAGE_NAME (msymbol);
       else
-	funname = DEPRECATED_SYMBOL_NAME (func);
+	funname = SYMBOL_LINKAGE_NAME (func);
     }
   else
     {
@@ -687,7 +687,7 @@ info_common_command (char *comname, int 
       lookup_minimal_symbol_by_pc (get_frame_pc (fi));
 
       if (msymbol != NULL)
-	funname = DEPRECATED_SYMBOL_NAME (msymbol);
+	funname = SYMBOL_LINKAGE_NAME (msymbol);
       else /* Got no 'funname', code below will fail.  */
 	error (_("No function found for frame."));
     }
@@ -715,7 +715,7 @@ info_common_command (char *comname, int 
 
       while (entry != NULL)
 	{
-	  printf_filtered ("%s = ", DEPRECATED_SYMBOL_NAME (entry->symbol));
+	  printf_filtered ("%s = ", SYMBOL_PRINT_NAME (entry->symbol));
 	  print_variable_value (entry->symbol, fi, gdb_stdout);
 	  printf_filtered ("\n");
 	  entry = entry->next;
@@ -768,9 +768,9 @@ there_is_a_visible_common_named (char *c
       if (msymbol != NULL
 	  && (SYMBOL_VALUE_ADDRESS (msymbol)
 	      > BLOCK_START (SYMBOL_BLOCK_VALUE (func))))
-	funname = DEPRECATED_SYMBOL_NAME (msymbol);
+	funname = SYMBOL_LINKAGE_NAME (msymbol);
       else
-	funname = DEPRECATED_SYMBOL_NAME (func);
+	funname = SYMBOL_LINKAGE_NAME (func);
     }
   else
     {
@@ -778,7 +778,7 @@ there_is_a_visible_common_named (char *c
       lookup_minimal_symbol_by_pc (fi->pc);
 
       if (msymbol != NULL)
-	funname = DEPRECATED_SYMBOL_NAME (msymbol);
+	funname = SYMBOL_LINKAGE_NAME (msymbol);
     }
 
   the_common = find_common_for_function (comname, funname);
Index: gdb/findvar.c
===================================================================
--- gdb.orig/findvar.c	2008-07-15 13:50:35.000000000 -0400
+++ gdb/findvar.c	2008-08-20 19:04:42.000000000 -0400
@@ -537,7 +537,7 @@ read_var_value (struct symbol *var, stru
       {
 	struct minimal_symbol *msym;
 
-	msym = lookup_minimal_symbol (DEPRECATED_SYMBOL_NAME (var), NULL, NULL);
+	msym = lookup_minimal_symbol (SYMBOL_LINKAGE_NAME (var), NULL, NULL);
 	if (msym == NULL)
 	  return 0;
 	if (overlay_debugging)
Index: gdb/gnu-v2-abi.c
===================================================================
--- gdb.orig/gnu-v2-abi.c	2008-03-10 16:07:21.000000000 -0400
+++ gdb/gnu-v2-abi.c	2008-08-20 19:04:42.000000000 -0400
@@ -250,7 +250,7 @@ gnuv2_value_rtti_type (struct value *v, 
   /* Try to find a symbol that is the vtable */
   minsym=lookup_minimal_symbol_by_pc(vtbl);
   if (minsym==NULL
-      || (demangled_name=DEPRECATED_SYMBOL_NAME (minsym))==NULL
+      || (demangled_name=SYMBOL_LINKAGE_NAME (minsym))==NULL
       || !is_vtable_name (demangled_name))
     return NULL;
 
Index: gdb/hppa-hpux-tdep.c
===================================================================
--- gdb.orig/hppa-hpux-tdep.c	2008-05-08 12:06:39.000000000 -0400
+++ gdb/hppa-hpux-tdep.c	2008-08-20 19:04:42.000000000 -0400
@@ -97,7 +97,7 @@ hppa32_hpux_in_solib_call_trampoline (CO
     return 1;
 
   minsym = lookup_minimal_symbol_by_pc (pc);
-  if (minsym && strcmp (DEPRECATED_SYMBOL_NAME (minsym), ".stub") == 0)
+  if (minsym && strcmp (SYMBOL_LINKAGE_NAME (minsym), ".stub") == 0)
     return 1;
 
   /* Get the unwind descriptor corresponding to PC, return zero
@@ -376,8 +376,8 @@ hppa_hpux_skip_trampoline_code (struct f
 	  ALL_MSYMBOLS (objfile, msymbol)
 	  {
 	    if (MSYMBOL_TYPE (msymbol) == mst_text
-		&& strcmp (DEPRECATED_SYMBOL_NAME (msymbol),
-			    DEPRECATED_SYMBOL_NAME (msym)) == 0)
+		&& strcmp (SYMBOL_LINKAGE_NAME (msymbol),
+			    SYMBOL_LINKAGE_NAME (msym)) == 0)
 	      {
 		function_found = 1;
 		break;
@@ -472,11 +472,11 @@ hppa_hpux_skip_trampoline_code (struct f
 	      return orig_pc == pc ? 0 : pc & ~0x3;
 	    }
 
-	  libsym = lookup_minimal_symbol (DEPRECATED_SYMBOL_NAME (stubsym), NULL, NULL);
+	  libsym = lookup_minimal_symbol (SYMBOL_LINKAGE_NAME (stubsym), NULL, NULL);
 	  if (libsym == NULL)
 	    {
 	      warning (_("Unable to find library symbol for %s."),
-		       DEPRECATED_SYMBOL_NAME (stubsym));
+		       SYMBOL_PRINT_NAME (stubsym));
 	      return orig_pc == pc ? 0 : pc & ~0x3;
 	    }
 
Index: gdb/jv-lang.c
===================================================================
--- gdb.orig/jv-lang.c	2008-06-03 08:53:43.000000000 -0400
+++ gdb/jv-lang.c	2008-08-20 19:04:42.000000000 -0400
@@ -145,7 +145,7 @@ add_class_symbol (struct type *type, COR
     obstack_alloc (&dynamics_objfile->objfile_obstack, sizeof (struct symbol));
   memset (sym, 0, sizeof (struct symbol));
   SYMBOL_LANGUAGE (sym) = language_java;
-  DEPRECATED_SYMBOL_NAME (sym) = TYPE_TAG_NAME (type);
+  SYMBOL_SET_LINKAGE_NAME (sym, TYPE_TAG_NAME (type));
   SYMBOL_CLASS (sym) = LOC_TYPEDEF;
   /*  SYMBOL_VALUE (sym) = valu; */
   SYMBOL_TYPE (sym) = type;
Index: gdb/linespec.c
===================================================================
--- gdb.orig/linespec.c	2008-08-20 10:43:10.000000000 -0400
+++ gdb/linespec.c	2008-08-20 19:04:42.000000000 -0400
@@ -586,7 +586,7 @@ See set/show multiple-symbol."));
 		{
 		  if (canonical_arr[i] == NULL)
 		    {
-		      symname = DEPRECATED_SYMBOL_NAME (sym_arr[i]);
+		      symname = SYMBOL_LINKAGE_NAME (sym_arr[i]);
 		      canonical_arr[i] = savestring (symname, strlen (symname));
 		    }
 		}
@@ -609,7 +609,7 @@ See set/show multiple-symbol."));
 	    {
 	      if (canonical_arr)
 		{
-		  symname = DEPRECATED_SYMBOL_NAME (sym_arr[num]);
+		  symname = SYMBOL_LINKAGE_NAME (sym_arr[num]);
 		  make_cleanup (xfree, symname);
 		  canonical_arr[i] = savestring (symname, strlen (symname));
 		}
Index: gdb/mdebugread.c
===================================================================
--- gdb.orig/mdebugread.c	2008-06-03 08:53:43.000000000 -0400
+++ gdb/mdebugread.c	2008-08-20 19:04:42.000000000 -0400
@@ -626,7 +626,7 @@ parse_symbol (SYMR *sh, union aux_ext *a
 	  /* It is a FORTRAN common block.  At least for SGI Fortran the
 	     address is not in the symbol; we need to fix it later in
 	     scan_file_globals.  */
-	  int bucket = hashname (DEPRECATED_SYMBOL_NAME (s));
+	  int bucket = hashname (SYMBOL_LINKAGE_NAME (s));
 	  SYMBOL_VALUE_CHAIN (s) = global_sym_chain[bucket];
 	  global_sym_chain[bucket] = s;
 	}
@@ -1064,9 +1064,9 @@ parse_symbol (SYMR *sh, union aux_ext *a
 			    obstack_alloc (&current_objfile->objfile_obstack,
 					   sizeof (struct symbol)));
 		memset (enum_sym, 0, sizeof (struct symbol));
-		DEPRECATED_SYMBOL_NAME (enum_sym) =
-		  obsavestring (f->name, strlen (f->name),
-				&current_objfile->objfile_obstack);
+		SYMBOL_SET_LINKAGE_NAME
+		  (enum_sym, obsavestring (f->name, strlen (f->name),
+					   &current_objfile->objfile_obstack));
 		SYMBOL_CLASS (enum_sym) = LOC_CONST;
 		SYMBOL_TYPE (enum_sym) = t;
 		SYMBOL_DOMAIN (enum_sym) = VAR_DOMAIN;
@@ -1328,7 +1328,7 @@ parse_symbol (SYMR *sh, union aux_ext *a
 	         for anything except pointers or functions.  */
 	    }
 	  else
-	    TYPE_NAME (SYMBOL_TYPE (s)) = DEPRECATED_SYMBOL_NAME (s);
+	    TYPE_NAME (SYMBOL_TYPE (s)) = SYMBOL_LINKAGE_NAME (s);
 	}
       break;
 
@@ -4417,10 +4417,10 @@ mylookup_symbol (char *name, struct bloc
   inc = name[0];
   ALL_BLOCK_SYMBOLS (block, iter, sym)
     {
-      if (DEPRECATED_SYMBOL_NAME (sym)[0] == inc
+      if (SYMBOL_LINKAGE_NAME (sym)[0] == inc
 	  && SYMBOL_DOMAIN (sym) == domain
 	  && SYMBOL_CLASS (sym) == class
-	  && strcmp (DEPRECATED_SYMBOL_NAME (sym), name) == 0)
+	  && strcmp (SYMBOL_LINKAGE_NAME (sym), name) == 0)
 	return sym;
     }
 
Index: gdb/minsyms.c
===================================================================
--- gdb.orig/minsyms.c	2008-06-03 08:53:43.000000000 -0400
+++ gdb/minsyms.c	2008-08-20 19:04:42.000000000 -0400
@@ -126,7 +126,8 @@ add_minsym_to_demangled_hash_table (stru
 {
   if (sym->demangled_hash_next == NULL)
     {
-      unsigned int hash = msymbol_hash_iw (SYMBOL_DEMANGLED_NAME (sym)) % MINIMAL_SYMBOL_HASH_SIZE;
+      unsigned int hash
+	= msymbol_hash_iw (SYMBOL_SEARCH_NAME (sym)) % MINIMAL_SYMBOL_HASH_SIZE;
       sym->demangled_hash_next = table[hash];
       table[hash] = sym;
     }
@@ -214,15 +215,13 @@ lookup_minimal_symbol (const char *name,
 
             while (msymbol != NULL && found_symbol == NULL)
 		{
-		  /* FIXME: carlton/2003-02-27: This is an unholy
-		     mixture of linkage names and natural names.  If
-		     you want to test the linkage names with strcmp,
-		     do that.  If you want to test the natural names
-		     with strcmp_iw, use SYMBOL_MATCHES_NATURAL_NAME.  */
-		  if (strcmp (DEPRECATED_SYMBOL_NAME (msymbol), (name)) == 0
-		      || (SYMBOL_DEMANGLED_NAME (msymbol) != NULL
-			  && strcmp_iw (SYMBOL_DEMANGLED_NAME (msymbol),
-					(name)) == 0))
+		  int match;
+
+		  if (pass == 1)
+		    match = strcmp (SYMBOL_LINKAGE_NAME (msymbol), name) == 0;
+		  else
+		    match = SYMBOL_MATCHES_SEARCH_NAME (msymbol, name);
+		  if (match)
 		    {
                     switch (MSYMBOL_TYPE (msymbol))
                       {
Index: gdb/objfiles.h
===================================================================
--- gdb.orig/objfiles.h	2008-08-20 10:43:12.000000000 -0400
+++ gdb/objfiles.h	2008-08-20 19:04:42.000000000 -0400
@@ -540,7 +540,7 @@ extern void *objfile_data (struct objfil
 /* Traverse all minimal symbols in one objfile.  */
 
 #define	ALL_OBJFILE_MSYMBOLS(objfile, m) \
-    for ((m) = (objfile) -> msymbols; DEPRECATED_SYMBOL_NAME(m) != NULL; (m)++)
+    for ((m) = (objfile) -> msymbols; SYMBOL_LINKAGE_NAME(m) != NULL; (m)++)
 
 /* Traverse all symtabs in all objfiles.  */
 
Index: gdb/printcmd.c
===================================================================
--- gdb.orig/printcmd.c	2008-08-20 10:43:12.000000000 -0400
+++ gdb/printcmd.c	2008-08-20 19:04:42.000000000 -0400
@@ -626,7 +626,7 @@ build_address_symbolic (CORE_ADDR addr, 
       if (do_demangle || asm_demangle)
 	name_temp = SYMBOL_PRINT_NAME (symbol);
       else
-	name_temp = DEPRECATED_SYMBOL_NAME (symbol);
+	name_temp = SYMBOL_LINKAGE_NAME (symbol);
     }
 
   if (msymbol != NULL)
@@ -640,7 +640,7 @@ build_address_symbolic (CORE_ADDR addr, 
 	  if (do_demangle || asm_demangle)
 	    name_temp = SYMBOL_PRINT_NAME (msymbol);
 	  else
-	    name_temp = DEPRECATED_SYMBOL_NAME (msymbol);
+	    name_temp = SYMBOL_LINKAGE_NAME (msymbol);
 	}
     }
   if (symbol == NULL && msymbol == NULL)
@@ -1079,7 +1079,7 @@ address_info (char *exp, int from_tty)
     }
 
   printf_filtered ("Symbol \"");
-  fprintf_symbol_filtered (gdb_stdout, DEPRECATED_SYMBOL_NAME (sym),
+  fprintf_symbol_filtered (gdb_stdout, SYMBOL_PRINT_NAME (sym),
 			   current_language->la_language, DMGL_ANSI);
   printf_filtered ("\" is ");
   val = SYMBOL_VALUE (sym);
@@ -1174,7 +1174,7 @@ address_info (char *exp, int from_tty)
       {
 	struct minimal_symbol *msym;
 
-	msym = lookup_minimal_symbol (DEPRECATED_SYMBOL_NAME (sym), NULL, NULL);
+	msym = lookup_minimal_symbol (SYMBOL_LINKAGE_NAME (sym), NULL, NULL);
 	if (msym == NULL)
 	  printf_filtered ("unresolved");
 	else
Index: gdb/sol-thread.c
===================================================================
--- gdb.orig/sol-thread.c	2008-07-10 14:24:35.000000000 -0400
+++ gdb/sol-thread.c	2008-08-20 19:04:42.000000000 -0400
@@ -1469,7 +1469,7 @@ info_cb (const td_thrhandle_t *th, void 
 	  msym = lookup_minimal_symbol_by_pc (ti.ti_startfunc);
 	  if (msym)
 	    printf_filtered ("   startfunc: %s\n",
-			     DEPRECATED_SYMBOL_NAME (msym));
+			     SYMBOL_PRINT_NAME (msym));
 	  else
 	    printf_filtered ("   startfunc: 0x%s\n", paddr (ti.ti_startfunc));
 	}
@@ -1481,7 +1481,7 @@ info_cb (const td_thrhandle_t *th, void 
 	  msym = lookup_minimal_symbol_by_pc (ti.ti_pc);
 	  if (msym)
 	    printf_filtered (" - Sleep func: %s\n",
-			     DEPRECATED_SYMBOL_NAME (msym));
+			     SYMBOL_PRINT_NAME (msym));
 	  else
 	    printf_filtered (" - Sleep func: 0x%s\n", paddr (ti.ti_startfunc));
 	}
Index: gdb/stabsread.c
===================================================================
--- gdb.orig/stabsread.c	2008-06-03 08:53:45.000000000 -0400
+++ gdb/stabsread.c	2008-08-20 19:04:42.000000000 -0400
@@ -387,8 +387,9 @@ patch_block_stabs (struct pending *symbo
 	      memset (sym, 0, sizeof (struct symbol));
 	      SYMBOL_DOMAIN (sym) = VAR_DOMAIN;
 	      SYMBOL_CLASS (sym) = LOC_OPTIMIZED_OUT;
-	      DEPRECATED_SYMBOL_NAME (sym) =
-		obsavestring (name, pp - name, &objfile->objfile_obstack);
+	      SYMBOL_SET_LINKAGE_NAME
+		(sym, obsavestring (name, pp - name,
+				    &objfile->objfile_obstack));
 	      pp += 2;
 	      if (*(pp - 1) == 'F' || *(pp - 1) == 'f')
 		{
@@ -648,17 +649,18 @@ define_symbol (CORE_ADDR valu, char *str
       switch (string[1])
 	{
 	case 't':
-	  DEPRECATED_SYMBOL_NAME (sym) = obsavestring ("this", strlen ("this"),
-					    &objfile->objfile_obstack);
+	  SYMBOL_SET_LINKAGE_NAME
+	    (sym, obsavestring ("this", strlen ("this"),
+				&objfile->objfile_obstack));
 	  break;
 
 	case 'v':		/* $vtbl_ptr_type */
-	  /* Was: DEPRECATED_SYMBOL_NAME (sym) = "vptr"; */
 	  goto normal;
 
 	case 'e':
-	  DEPRECATED_SYMBOL_NAME (sym) = obsavestring ("eh_throw", strlen ("eh_throw"),
-					    &objfile->objfile_obstack);
+	  SYMBOL_SET_LINKAGE_NAME
+	    (sym, obsavestring ("eh_throw", strlen ("eh_throw"),
+				&objfile->objfile_obstack));
 	  break;
 
 	case '_':
@@ -892,9 +894,9 @@ define_symbol (CORE_ADDR valu, char *str
          Symbol references don't have valid names and wont't match up with
          minimal symbols when the global_sym_chain is relocated.
          We'll fixup symbol references when we fixup the defining symbol.  */
-      if (DEPRECATED_SYMBOL_NAME (sym) && DEPRECATED_SYMBOL_NAME (sym)[0] != '#')
+      if (SYMBOL_LINKAGE_NAME (sym) && SYMBOL_LINKAGE_NAME (sym)[0] != '#')
 	{
-	  i = hashname (DEPRECATED_SYMBOL_NAME (sym));
+	  i = hashname (SYMBOL_LINKAGE_NAME (sym));
 	  SYMBOL_VALUE_CHAIN (sym) = global_sym_chain[i];
 	  global_sym_chain[i] = sym;
 	}
@@ -1038,8 +1040,8 @@ define_symbol (CORE_ADDR valu, char *str
 	      prev_sym = local_symbols->symbol[local_symbols->nsyms - 1];
 	      if ((SYMBOL_CLASS (prev_sym) == LOC_REF_ARG
 		   || SYMBOL_CLASS (prev_sym) == LOC_ARG)
-		  && strcmp (DEPRECATED_SYMBOL_NAME (prev_sym),
-			     DEPRECATED_SYMBOL_NAME (sym)) == 0)
+		  && strcmp (SYMBOL_LINKAGE_NAME (prev_sym),
+			     SYMBOL_LINKAGE_NAME (sym)) == 0)
 		{
 		  SYMBOL_CLASS (prev_sym) = LOC_REGISTER;
 		  /* Use the type from the LOC_REGISTER; that is the type
@@ -1063,16 +1065,16 @@ define_symbol (CORE_ADDR valu, char *str
       SYMBOL_VALUE_ADDRESS (sym) = valu;
       if (gdbarch_static_transform_name_p (gdbarch)
 	  && gdbarch_static_transform_name (gdbarch,
-					    DEPRECATED_SYMBOL_NAME (sym))
-	     != DEPRECATED_SYMBOL_NAME (sym))
+					    SYMBOL_LINKAGE_NAME (sym))
+	     != SYMBOL_LINKAGE_NAME (sym))
 	{
 	  struct minimal_symbol *msym;
-	  msym = lookup_minimal_symbol (DEPRECATED_SYMBOL_NAME (sym), NULL, objfile);
+	  msym = lookup_minimal_symbol (SYMBOL_LINKAGE_NAME (sym), NULL, objfile);
 	  if (msym != NULL)
 	    {
-	      DEPRECATED_SYMBOL_NAME (sym) = gdbarch_static_transform_name
-					       (gdbarch,	
-						DEPRECATED_SYMBOL_NAME (sym));
+	      char *new_name = gdbarch_static_transform_name
+		(gdbarch, SYMBOL_LINKAGE_NAME (sym));
+	      SYMBOL_SET_LINKAGE_NAME (sym, new_name);
 	      SYMBOL_VALUE_ADDRESS (sym) = SYMBOL_VALUE_ADDRESS (msym);
 	    }
 	}
@@ -1132,7 +1134,7 @@ define_symbol (CORE_ADDR valu, char *str
 	  extern const char vtbl_ptr_name[];
 
 	  if ((TYPE_CODE (SYMBOL_TYPE (sym)) == TYPE_CODE_PTR
-	       && strcmp (DEPRECATED_SYMBOL_NAME (sym), vtbl_ptr_name))
+	       && strcmp (SYMBOL_LINKAGE_NAME (sym), vtbl_ptr_name))
 	      || TYPE_CODE (SYMBOL_TYPE (sym)) == TYPE_CODE_FUNC)
 	    {
 	      /* If we are giving a name to a type such as "pointer to
@@ -1172,11 +1174,11 @@ define_symbol (CORE_ADDR valu, char *str
 	      /* Pascal accepts names for pointer types. */
 	      if (current_subfile->language == language_pascal)
 		{
-		  TYPE_NAME (SYMBOL_TYPE (sym)) = DEPRECATED_SYMBOL_NAME (sym);
+		  TYPE_NAME (SYMBOL_TYPE (sym)) = SYMBOL_LINKAGE_NAME (sym);
           	}
 	    }
 	  else
-	    TYPE_NAME (SYMBOL_TYPE (sym)) = DEPRECATED_SYMBOL_NAME (sym);
+	    TYPE_NAME (SYMBOL_TYPE (sym)) = SYMBOL_LINKAGE_NAME (sym);
 	}
 
       add_symbol_to_list (sym, &file_symbols);
@@ -1194,7 +1196,7 @@ define_symbol (CORE_ADDR valu, char *str
           if (TYPE_NAME (SYMBOL_TYPE (sym)) == 0)
             TYPE_NAME (SYMBOL_TYPE (sym))
               = obconcat (&objfile->objfile_obstack, "", "",
-                          DEPRECATED_SYMBOL_NAME (sym));
+                          SYMBOL_LINKAGE_NAME (sym));
           add_symbol_to_list (struct_sym, &file_symbols);
         }
       
@@ -1220,7 +1222,8 @@ define_symbol (CORE_ADDR valu, char *str
       SYMBOL_DOMAIN (sym) = STRUCT_DOMAIN;
       if (TYPE_TAG_NAME (SYMBOL_TYPE (sym)) == 0)
 	TYPE_TAG_NAME (SYMBOL_TYPE (sym))
-	  = obconcat (&objfile->objfile_obstack, "", "", DEPRECATED_SYMBOL_NAME (sym));
+	  = obconcat (&objfile->objfile_obstack, "", "",
+		      SYMBOL_LINKAGE_NAME (sym));
       add_symbol_to_list (sym, &file_symbols);
 
       if (synonym)
@@ -1234,7 +1237,8 @@ define_symbol (CORE_ADDR valu, char *str
 	  SYMBOL_DOMAIN (typedef_sym) = VAR_DOMAIN;
 	  if (TYPE_NAME (SYMBOL_TYPE (sym)) == 0)
 	    TYPE_NAME (SYMBOL_TYPE (sym))
-	      = obconcat (&objfile->objfile_obstack, "", "", DEPRECATED_SYMBOL_NAME (sym));
+	      = obconcat (&objfile->objfile_obstack, "", "",
+			  SYMBOL_LINKAGE_NAME (sym));
 	  add_symbol_to_list (typedef_sym, &file_symbols);
 	}
       break;
@@ -1246,16 +1250,16 @@ define_symbol (CORE_ADDR valu, char *str
       SYMBOL_VALUE_ADDRESS (sym) = valu;
       if (gdbarch_static_transform_name_p (gdbarch)
 	  && gdbarch_static_transform_name (gdbarch,
-					    DEPRECATED_SYMBOL_NAME (sym))
-	     != DEPRECATED_SYMBOL_NAME (sym))
+					    SYMBOL_LINKAGE_NAME (sym))
+	     != SYMBOL_LINKAGE_NAME (sym))
 	{
 	  struct minimal_symbol *msym;
-	  msym = lookup_minimal_symbol (DEPRECATED_SYMBOL_NAME (sym), NULL, objfile);
+	  msym = lookup_minimal_symbol (SYMBOL_LINKAGE_NAME (sym), NULL, objfile);
 	  if (msym != NULL)
 	    {
-	      DEPRECATED_SYMBOL_NAME (sym) = gdbarch_static_transform_name
-					       (gdbarch,	
-						DEPRECATED_SYMBOL_NAME (sym));
+	      char *new_name = gdbarch_static_transform_name
+		(gdbarch, SYMBOL_LINKAGE_NAME (sym));
+	      SYMBOL_SET_LINKAGE_NAME (sym, new_name);
 	      SYMBOL_VALUE_ADDRESS (sym) = SYMBOL_VALUE_ADDRESS (msym);
 	    }
 	}
@@ -1539,7 +1543,7 @@ again:
 	      if (SYMBOL_CLASS (sym) == LOC_TYPEDEF
 		  && SYMBOL_DOMAIN (sym) == STRUCT_DOMAIN
 		  && (TYPE_CODE (SYMBOL_TYPE (sym)) == code)
-		  && strcmp (DEPRECATED_SYMBOL_NAME (sym), type_name) == 0)
+		  && strcmp (SYMBOL_LINKAGE_NAME (sym), type_name) == 0)
 		{
 		  obstack_free (&objfile->objfile_obstack, type_name);
 		  type = SYMBOL_TYPE (sym);
@@ -3488,7 +3492,7 @@ read_enum_type (char **pp, struct type *
       sym = (struct symbol *)
 	obstack_alloc (&objfile->objfile_obstack, sizeof (struct symbol));
       memset (sym, 0, sizeof (struct symbol));
-      DEPRECATED_SYMBOL_NAME (sym) = name;
+      SYMBOL_SET_LINKAGE_NAME (sym, name);
       SYMBOL_LANGUAGE (sym) = current_subfile->language;
       SYMBOL_CLASS (sym) = LOC_CONST;
       SYMBOL_DOMAIN (sym) = VAR_DOMAIN;
@@ -3530,7 +3534,7 @@ read_enum_type (char **pp, struct type *
 	{
 	  struct symbol *xsym = syms->symbol[j];
 	  SYMBOL_TYPE (xsym) = type;
-	  TYPE_FIELD_NAME (type, n) = DEPRECATED_SYMBOL_NAME (xsym);
+	  TYPE_FIELD_NAME (type, n) = SYMBOL_LINKAGE_NAME (xsym);
 	  TYPE_FIELD_BITPOS (type, n) = SYMBOL_VALUE (xsym);
 	  TYPE_FIELD_BITSIZE (type, n) = 0;
 	}
@@ -4145,7 +4149,7 @@ common_block_end (struct objfile *objfil
     obstack_alloc (&objfile->objfile_obstack, sizeof (struct symbol));
   memset (sym, 0, sizeof (struct symbol));
   /* Note: common_block_name already saved on objfile_obstack */
-  DEPRECATED_SYMBOL_NAME (sym) = common_block_name;
+  SYMBOL_SET_LINKAGE_NAME (sym, common_block_name);
   SYMBOL_CLASS (sym) = LOC_BLOCK;
 
   /* Now we copy all the symbols which have been defined since the BCOMM.  */
@@ -4172,7 +4176,7 @@ common_block_end (struct objfile *objfil
   /* Should we be putting local_symbols back to what it was?
      Does it matter?  */
 
-  i = hashname (DEPRECATED_SYMBOL_NAME (sym));
+  i = hashname (SYMBOL_LINKAGE_NAME (sym));
   SYMBOL_VALUE_CHAIN (sym) = global_sym_chain[i];
   global_sym_chain[i] = sym;
   common_block_name = NULL;
@@ -4354,7 +4358,7 @@ cleanup_undefined_types_1 (void)
 				TYPE_CODE (*type))
 			    && (TYPE_INSTANCE_FLAGS (*type) ==
 				TYPE_INSTANCE_FLAGS (SYMBOL_TYPE (sym)))
-			    && strcmp (DEPRECATED_SYMBOL_NAME (sym),
+			    && strcmp (SYMBOL_LINKAGE_NAME (sym),
 				       typename) == 0)
                           replace_type (*type, SYMBOL_TYPE (sym));
 		      }
@@ -4421,9 +4425,7 @@ scan_file_globals (struct objfile *objfi
       if (hash >= HASHSIZE)
 	return;
 
-      for (msymbol = resolve_objfile->msymbols;
-	   msymbol && DEPRECATED_SYMBOL_NAME (msymbol) != NULL;
-	   msymbol++)
+      ALL_OBJFILE_MSYMBOLS (resolve_objfile, msymbol)
 	{
 	  QUIT;
 
@@ -4443,12 +4445,12 @@ scan_file_globals (struct objfile *objfi
 	  /* Get the hash index and check all the symbols
 	     under that hash index. */
 
-	  hash = hashname (DEPRECATED_SYMBOL_NAME (msymbol));
+	  hash = hashname (SYMBOL_LINKAGE_NAME (msymbol));
 
 	  for (sym = global_sym_chain[hash]; sym;)
 	    {
-	      if (DEPRECATED_SYMBOL_NAME (msymbol)[0] == DEPRECATED_SYMBOL_NAME (sym)[0] &&
-		  strcmp (DEPRECATED_SYMBOL_NAME (msymbol) + 1, DEPRECATED_SYMBOL_NAME (sym) + 1) == 0)
+	      if (strcmp (SYMBOL_LINKAGE_NAME (msymbol),
+			  SYMBOL_LINKAGE_NAME (sym)) == 0)
 		{
 		  /* Splice this symbol out of the hash chain and
 		     assign the value we have to it. */
@@ -4520,7 +4522,7 @@ scan_file_globals (struct objfile *objfi
 	  else
 	    complaint (&symfile_complaints,
 		       _("%s: common block `%s' from global_sym_chain unresolved"),
-		       objfile->name, DEPRECATED_SYMBOL_NAME (prev));
+		       objfile->name, SYMBOL_PRINT_NAME (prev));
 	}
     }
   memset (global_sym_chain, 0, sizeof (global_sym_chain));
Index: gdb/stack.c
===================================================================
--- gdb.orig/stack.c	2008-08-18 08:31:38.000000000 -0400
+++ gdb/stack.c	2008-08-20 19:05:21.000000000 -0400
@@ -44,6 +44,7 @@
 #include "solib.h"
 #include "valprint.h"
 #include "gdbthread.h"
+#include "cp-support.h"
 
 #include "gdb_assert.h"
 #include <ctype.h>
@@ -287,10 +288,10 @@ print_frame_args (struct symbol *func, s
 	     parameter names occur on the RS/6000, for traceback
 	     tables.  FIXME, should we even print them?  */
 
-	  if (*DEPRECATED_SYMBOL_NAME (sym))
+	  if (*SYMBOL_LINKAGE_NAME (sym))
 	    {
 	      struct symbol *nsym;
-	      nsym = lookup_symbol (DEPRECATED_SYMBOL_NAME (sym),
+	      nsym = lookup_symbol (SYMBOL_LINKAGE_NAME (sym),
 				    b, VAR_DOMAIN, NULL);
 	      gdb_assert (nsym != NULL);
 	      if (SYMBOL_CLASS (nsym) == LOC_REGISTER
@@ -618,12 +619,12 @@ print_frame (struct frame_info *frame, i
 	  /* We also don't know anything about the function besides
 	     its address and name.  */
 	  func = 0;
-	  funname = DEPRECATED_SYMBOL_NAME (msymbol);
+	  funname = SYMBOL_PRINT_NAME (msymbol);
 	  funlang = SYMBOL_LANGUAGE (msymbol);
 	}
       else
 	{
-	  funname = DEPRECATED_SYMBOL_NAME (func);
+	  funname = SYMBOL_PRINT_NAME (func);
 	  funlang = SYMBOL_LANGUAGE (func);
 	  if (funlang == language_cplus)
 	    {
@@ -631,23 +632,13 @@ print_frame (struct frame_info *frame, i
 		 to display the demangled name that we already have
 		 stored in the symbol table, but we stored a version
 		 with DMGL_PARAMS turned on, and here we don't want to
-		 display parameters. So call the demangler again, with
-		 DMGL_ANSI only.
-
-		 Yes, printf_symbol_filtered() will again try to
-		 demangle the name on the fly, but the issue is that
-		 if cplus_demangle() fails here, it will fail there
-		 too. So we want to catch the failure (where DEMANGLED
-		 is NULL below) here, while we still have our hands on
-		 the function symbol.)  */
-	      char *demangled = cplus_demangle (funname, DMGL_ANSI);
-	      if (demangled == NULL)
-		/* If the demangler fails, try the demangled name from
-		   the symbol table. That'll have parameters, but
-		   that's preferable to displaying a mangled name.  */
-		funname = SYMBOL_PRINT_NAME (func);
-	      else
-		xfree (demangled);
+		 display parameters.  So remove the parameters.  */
+	      char *func_only = cp_remove_params (funname);
+	      if (func_only)
+		{
+		  funname = func_only;
+		  make_cleanup (xfree, func_only);
+		}
 	    }
 	}
     }
@@ -658,7 +649,7 @@ print_frame (struct frame_info *frame, i
 
       if (msymbol != NULL)
 	{
-	  funname = DEPRECATED_SYMBOL_NAME (msymbol);
+	  funname = SYMBOL_PRINT_NAME (msymbol);
 	  funlang = SYMBOL_LANGUAGE (msymbol);
 	}
     }
@@ -895,6 +886,7 @@ frame_info (char *addr_exp, int from_tty
   const char *pc_regname;
   int selected_frame_p;
   struct gdbarch *gdbarch;
+  struct cleanup *back_to = make_cleanup (null_cleanup, NULL);
 
   fi = parse_frame_specification_1 (addr_exp, "No stack.", &selected_frame_p);
   gdbarch = get_frame_arch (fi);
@@ -920,29 +912,21 @@ frame_info (char *addr_exp, int from_tty
   s = find_pc_symtab (get_frame_pc (fi));
   if (func)
     {
-      /* It seems appropriate to use SYMBOL_PRINT_NAME() here, to
-	 display the demangled name that we already have stored in the
-	 symbol table, but we stored a version with DMGL_PARAMS turned
-	 on, and here we don't want to display parameters. So call the
-	 demangler again, with DMGL_ANSI only.
-
-	 Yes, printf_symbol_filtered() will again try to demangle the
-	 name on the fly, but the issue is that if cplus_demangle()
-	 fails here, it will fail there too. So we want to catch the
-	 failure (where DEMANGLED is NULL below) here, while we still
-	 have our hands on the function symbol.)  */
-      funname = DEPRECATED_SYMBOL_NAME (func);
+      funname = SYMBOL_PRINT_NAME (func);
       funlang = SYMBOL_LANGUAGE (func);
       if (funlang == language_cplus)
 	{
-	  char *demangled = cplus_demangle (funname, DMGL_ANSI);
-	  /* If the demangler fails, try the demangled name from the
-	     symbol table. That'll have parameters, but that's
-	     preferable to displaying a mangled name.  */
-	  if (demangled == NULL)
-	    funname = SYMBOL_PRINT_NAME (func);
-	  else
-	    xfree (demangled);
+	  /* It seems appropriate to use SYMBOL_PRINT_NAME() here,
+	     to display the demangled name that we already have
+	     stored in the symbol table, but we stored a version
+	     with DMGL_PARAMS turned on, and here we don't want to
+	     display parameters.  So remove the parameters.  */
+	  char *func_only = cp_remove_params (funname);
+	  if (func_only)
+	    {
+	      funname = func_only;
+	      make_cleanup (xfree, func_only);
+	    }
 	}
     }
   else
@@ -952,7 +936,7 @@ frame_info (char *addr_exp, int from_tty
       msymbol = lookup_minimal_symbol_by_pc (get_frame_pc (fi));
       if (msymbol != NULL)
 	{
-	  funname = DEPRECATED_SYMBOL_NAME (msymbol);
+	  funname = SYMBOL_PRINT_NAME (msymbol);
 	  funlang = SYMBOL_LANGUAGE (msymbol);
 	}
     }
@@ -1154,6 +1138,8 @@ frame_info (char *addr_exp, int from_tty
     if (count || need_nl)
       puts_filtered ("\n");
   }
+
+  do_cleanups (back_to);
 }
 
 /* Print briefly all stack frames or just the innermost COUNT_EXP
@@ -1410,7 +1396,7 @@ print_block_frame_labels (struct block *
 
   ALL_BLOCK_SYMBOLS (b, iter, sym)
     {
-      if (strcmp (DEPRECATED_SYMBOL_NAME (sym), "default") == 0)
+      if (strcmp (SYMBOL_LINKAGE_NAME (sym), "default") == 0)
 	{
 	  if (*have_default)
 	    continue;
@@ -1594,7 +1580,7 @@ print_frame_arg_vars (struct frame_info 
 	     float).  There are also LOC_ARG/LOC_REGISTER pairs which
 	     are not combined in symbol-reading.  */
 
-	  sym2 = lookup_symbol (DEPRECATED_SYMBOL_NAME (sym),
+	  sym2 = lookup_symbol (SYMBOL_LINKAGE_NAME (sym),
 				b, VAR_DOMAIN, NULL);
 	  print_variable_value (sym2, frame, stream);
 	  fprintf_filtered (stream, "\n");
Index: gdb/symmisc.c
===================================================================
--- gdb.orig/symmisc.c	2008-06-03 08:53:45.000000000 -0400
+++ gdb/symmisc.c	2008-08-20 19:04:42.000000000 -0400
@@ -270,8 +270,8 @@ dump_msymbols (struct objfile *objfile, 
       fprintf_filtered (outfile, "No minimal symbols found.\n");
       return;
     }
-  for (index = 0, msymbol = objfile->msymbols;
-       DEPRECATED_SYMBOL_NAME (msymbol) != NULL; msymbol++, index++)
+  index = 0;
+  ALL_OBJFILE_MSYMBOLS (objfile, msymbol)
     {
       switch (msymbol->type)
 	{
@@ -308,7 +308,7 @@ dump_msymbols (struct objfile *objfile, 
 	}
       fprintf_filtered (outfile, "[%2d] %c ", index, ms_type);
       fputs_filtered (paddress (SYMBOL_VALUE_ADDRESS (msymbol)), outfile);
-      fprintf_filtered (outfile, " %s", DEPRECATED_SYMBOL_NAME (msymbol));
+      fprintf_filtered (outfile, " %s", SYMBOL_LINKAGE_NAME (msymbol));
       if (SYMBOL_BFD_SECTION (msymbol))
 	fprintf_filtered (outfile, " section %s",
 			  bfd_section_name (objfile->obfd,
@@ -320,6 +320,7 @@ dump_msymbols (struct objfile *objfile, 
       if (msymbol->filename)
 	fprintf_filtered (outfile, "  %s", msymbol->filename);
       fputs_filtered ("\n", outfile);
+      index++;
     }
   if (objfile->minimal_symbol_count != index)
     {
@@ -459,7 +460,8 @@ dump_symtab_1 (struct objfile *objfile, 
 	  fputs_filtered (paddress (BLOCK_END (b)), outfile);
 	  if (BLOCK_FUNCTION (b))
 	    {
-	      fprintf_filtered (outfile, ", function %s", DEPRECATED_SYMBOL_NAME (BLOCK_FUNCTION (b)));
+	      fprintf_filtered (outfile, ", function %s",
+				SYMBOL_LINKAGE_NAME (BLOCK_FUNCTION (b)));
 	      if (SYMBOL_DEMANGLED_NAME (BLOCK_FUNCTION (b)) != NULL)
 		{
 		  fprintf_filtered (outfile, ", %s",
@@ -591,7 +593,7 @@ print_symbol (void *args)
 			  ? "enum"
 		     : (TYPE_CODE (SYMBOL_TYPE (symbol)) == TYPE_CODE_STRUCT
 			? "struct" : "union")),
-			    DEPRECATED_SYMBOL_NAME (symbol));
+			    SYMBOL_LINKAGE_NAME (symbol));
 	  LA_PRINT_TYPE (SYMBOL_TYPE (symbol), "", outfile, 1, depth);
 	}
       fprintf_filtered (outfile, ";\n");
@@ -775,7 +777,7 @@ print_partial_symbols (struct partial_sy
   fprintf_filtered (outfile, "  %s partial symbols:\n", what);
   while (count-- > 0)
     {
-      fprintf_filtered (outfile, "    `%s'", DEPRECATED_SYMBOL_NAME (*p));
+      fprintf_filtered (outfile, "    `%s'", SYMBOL_LINKAGE_NAME (*p));
       if (SYMBOL_DEMANGLED_NAME (*p) != NULL)
 	{
 	  fprintf_filtered (outfile, "  `%s'", SYMBOL_DEMANGLED_NAME (*p));
@@ -1091,12 +1093,12 @@ maintenance_check_symtabs (char *ignore,
     length = ps->n_static_syms;
     while (length--)
       {
-	sym = lookup_block_symbol (b, DEPRECATED_SYMBOL_NAME (*psym),
+	sym = lookup_block_symbol (b, SYMBOL_LINKAGE_NAME (*psym),
 				   NULL, SYMBOL_DOMAIN (*psym));
 	if (!sym)
 	  {
 	    printf_filtered ("Static symbol `");
-	    puts_filtered (DEPRECATED_SYMBOL_NAME (*psym));
+	    puts_filtered (SYMBOL_LINKAGE_NAME (*psym));
 	    printf_filtered ("' only found in ");
 	    puts_filtered (ps->filename);
 	    printf_filtered (" psymtab\n");
@@ -1108,12 +1110,12 @@ maintenance_check_symtabs (char *ignore,
     length = ps->n_global_syms;
     while (length--)
       {
-	sym = lookup_block_symbol (b, DEPRECATED_SYMBOL_NAME (*psym),
+	sym = lookup_block_symbol (b, SYMBOL_LINKAGE_NAME (*psym),
 				   NULL, SYMBOL_DOMAIN (*psym));
 	if (!sym)
 	  {
 	    printf_filtered ("Global symbol `");
-	    puts_filtered (DEPRECATED_SYMBOL_NAME (*psym));
+	    puts_filtered (SYMBOL_LINKAGE_NAME (*psym));
 	    printf_filtered ("' only found in ");
 	    puts_filtered (ps->filename);
 	    printf_filtered (" psymtab\n");
Index: gdb/symtab.h
===================================================================
--- gdb.orig/symtab.h	2008-06-03 08:53:45.000000000 -0400
+++ gdb/symtab.h	2008-08-20 19:04:42.000000000 -0400
@@ -162,7 +162,6 @@ extern CORE_ADDR symbol_overlayed_addres
    functions, unless the callers are changed to pass in the ginfo
    field only, instead of the SYMBOL parameter.  */
 
-#define DEPRECATED_SYMBOL_NAME(symbol)	(symbol)->ginfo.name
 #define SYMBOL_VALUE(symbol)		(symbol)->ginfo.value.ivalue
 #define SYMBOL_VALUE_ADDRESS(symbol)	(symbol)->ginfo.value.address
 #define SYMBOL_VALUE_BYTES(symbol)	(symbol)->ginfo.value.bytes
@@ -182,6 +181,15 @@ extern CORE_ADDR symbol_overlayed_addres
 extern void symbol_init_language_specific (struct general_symbol_info *symbol,
 					   enum language language);
 
+/* Set just the linkage name of a symbol; do not try to demangle
+   it.  Used for constructs which do not have a mangled name,
+   e.g. struct tags.  Unlike SYMBOL_SET_NAMES, linkage_name must
+   be terminated and already on the objfile's obstack.  */
+#define SYMBOL_SET_LINKAGE_NAME(symbol,linkage_name) \
+  (symbol)->ginfo.name = (linkage_name)
+
+/* Set the linkage and natural names of a symbol, by demangling
+   the linkage name.  */
 #define SYMBOL_SET_NAMES(symbol,linkage_name,len,objfile) \
   symbol_set_names (&(symbol)->ginfo, linkage_name, len, objfile)
 extern void symbol_set_names (struct general_symbol_info *symbol,
@@ -194,10 +202,7 @@ extern void symbol_set_names (struct gen
    want to know what the linker thinks the symbol's name is.  Use
    SYMBOL_PRINT_NAME for output.  Use SYMBOL_DEMANGLED_NAME if you
    specifically need to know whether SYMBOL_NATURAL_NAME and
-   SYMBOL_LINKAGE_NAME are different.  Don't use
-   DEPRECATED_SYMBOL_NAME at all: instances of that macro should be
-   replaced by SYMBOL_NATURAL_NAME, SYMBOL_LINKAGE_NAME, or perhaps
-   SYMBOL_PRINT_NAME.  */
+   SYMBOL_LINKAGE_NAME are different.  */
 
 /* Return SYMBOL's "natural" name, i.e. the name that it was called in
    the original source code.  In languages like C++ where symbols may
@@ -211,11 +216,7 @@ extern char *symbol_natural_name (const 
 /* Return SYMBOL's name from the point of view of the linker.  In
    languages like C++ where symbols may be mangled for ease of
    manipulation by the linker, this is the mangled name; otherwise,
-   it's the same as SYMBOL_NATURAL_NAME.  This is currently identical
-   to DEPRECATED_SYMBOL_NAME, but please use SYMBOL_LINKAGE_NAME when
-   appropriate: it conveys the additional semantic information that
-   you really have thought about the issue and decided that you mean
-   SYMBOL_LINKAGE_NAME instead of SYMBOL_NATURAL_NAME.  */
+   it's the same as SYMBOL_NATURAL_NAME.  */
 
 #define SYMBOL_LINKAGE_NAME(symbol)	(symbol)->ginfo.name
 
Index: gdb/tracepoint.c
===================================================================
--- gdb.orig/tracepoint.c	2008-07-26 12:04:59.000000000 -0400
+++ gdb/tracepoint.c	2008-08-20 19:04:42.000000000 -0400
@@ -285,12 +285,12 @@ set_traceframe_context (CORE_ADDR trace_
   /* Save func name as "$trace_func", a debugger variable visible to
      users.  */
   if (traceframe_fun == NULL ||
-      DEPRECATED_SYMBOL_NAME (traceframe_fun) == NULL)
+      SYMBOL_LINKAGE_NAME (traceframe_fun) == NULL)
     set_internalvar (lookup_internalvar ("trace_func"),
 		     value_from_pointer (charstar, (LONGEST) 0));
   else
     {
-      len = strlen (DEPRECATED_SYMBOL_NAME (traceframe_fun));
+      len = strlen (SYMBOL_LINKAGE_NAME (traceframe_fun));
       func_range = create_range_type (func_range,
 				      builtin_type_int, 0, len - 1);
       func_string = create_array_type (func_string,
@@ -298,7 +298,7 @@ set_traceframe_context (CORE_ADDR trace_
       func_val = allocate_value (func_string);
       deprecated_set_value_type (func_val, func_string);
       memcpy (value_contents_raw (func_val),
-	      DEPRECATED_SYMBOL_NAME (traceframe_fun),
+	      SYMBOL_LINKAGE_NAME (traceframe_fun),
 	      len);
       deprecated_set_value_modifiable (func_val, 0);
       set_internalvar (lookup_internalvar ("trace_func"), func_val);
@@ -981,14 +981,14 @@ validate_actionline (char **line, struct
 	      if (SYMBOL_CLASS (exp->elts[2].symbol) == LOC_CONST)
 		{
 		  warning (_("constant %s (value %ld) will not be collected."),
-			   DEPRECATED_SYMBOL_NAME (exp->elts[2].symbol),
+			   SYMBOL_PRINT_NAME (exp->elts[2].symbol),
 			   SYMBOL_VALUE (exp->elts[2].symbol));
 		  return BADLINE;
 		}
 	      else if (SYMBOL_CLASS (exp->elts[2].symbol) == LOC_OPTIMIZED_OUT)
 		{
 		  warning (_("%s is optimized away and cannot be collected."),
-			   DEPRECATED_SYMBOL_NAME (exp->elts[2].symbol));
+			   SYMBOL_PRINT_NAME (exp->elts[2].symbol));
 		  return BADLINE;
 		}
 	    }
@@ -1216,12 +1216,12 @@ collect_symbol (struct collection_list *
     {
     default:
       printf_filtered ("%s: don't know symbol class %d\n",
-		       DEPRECATED_SYMBOL_NAME (sym), 
+		       SYMBOL_PRINT_NAME (sym),
 		       SYMBOL_CLASS (sym));
       break;
     case LOC_CONST:
       printf_filtered ("constant %s (value %ld) will not be collected.\n",
-		       DEPRECATED_SYMBOL_NAME (sym), SYMBOL_VALUE (sym));
+		       SYMBOL_PRINT_NAME (sym), SYMBOL_VALUE (sym));
       break;
     case LOC_STATIC:
       offset = SYMBOL_VALUE_ADDRESS (sym);
@@ -1231,7 +1231,7 @@ collect_symbol (struct collection_list *
 
 	  sprintf_vma (tmp, offset);
 	  printf_filtered ("LOC_STATIC %s: collect %ld bytes at %s.\n",
-			   DEPRECATED_SYMBOL_NAME (sym), len, 
+			   SYMBOL_PRINT_NAME (sym), len,
 			   tmp /* address */);
 	}
       add_memrange (collect, memrange_absolute, offset, len);
@@ -1240,7 +1240,7 @@ collect_symbol (struct collection_list *
       reg = SYMBOL_VALUE (sym);
       if (info_verbose)
 	printf_filtered ("LOC_REG[parm] %s: ", 
-			 DEPRECATED_SYMBOL_NAME (sym));
+			 SYMBOL_PRINT_NAME (sym));
       add_register (collect, reg);
       /* Check for doubles stored in two registers.  */
       /* FIXME: how about larger types stored in 3 or more regs?  */
@@ -1251,7 +1251,7 @@ collect_symbol (struct collection_list *
     case LOC_REF_ARG:
       printf_filtered ("Sorry, don't know how to do LOC_REF_ARG yet.\n");
       printf_filtered ("       (will not collect %s)\n",
-		       DEPRECATED_SYMBOL_NAME (sym));
+		       SYMBOL_PRINT_NAME (sym));
       break;
     case LOC_ARG:
       reg = frame_regno;
@@ -1259,7 +1259,7 @@ collect_symbol (struct collection_list *
       if (info_verbose)
 	{
 	  printf_filtered ("LOC_LOCAL %s: Collect %ld bytes at offset ",
-			   DEPRECATED_SYMBOL_NAME (sym), len);
+			   SYMBOL_PRINT_NAME (sym), len);
 	  printf_vma (offset);
 	  printf_filtered (" from frame ptr reg %d\n", reg);
 	}
@@ -1271,7 +1271,7 @@ collect_symbol (struct collection_list *
       if (info_verbose)
 	{
 	  printf_filtered ("LOC_REGPARM_ADDR %s: Collect %ld bytes at offset ",
-			   DEPRECATED_SYMBOL_NAME (sym), len);
+			   SYMBOL_PRINT_NAME (sym), len);
 	  printf_vma (offset);
 	  printf_filtered (" from reg %d\n", reg);
 	}
@@ -1283,7 +1283,7 @@ collect_symbol (struct collection_list *
       if (info_verbose)
 	{
 	  printf_filtered ("LOC_LOCAL %s: Collect %ld bytes at offset ",
-			   DEPRECATED_SYMBOL_NAME (sym), len);
+			   SYMBOL_PRINT_NAME (sym), len);
 	  printf_vma (offset);
 	  printf_filtered (" from frame ptr reg %d\n", reg);
 	}
@@ -1291,11 +1291,11 @@ collect_symbol (struct collection_list *
       break;
     case LOC_UNRESOLVED:
       printf_filtered ("Don't know LOC_UNRESOLVED %s\n", 
-		       DEPRECATED_SYMBOL_NAME (sym));
+		       SYMBOL_PRINT_NAME (sym));
       break;
     case LOC_OPTIMIZED_OUT:
       printf_filtered ("%s has been optimized out of existence.\n",
-		       DEPRECATED_SYMBOL_NAME (sym));
+		       SYMBOL_PRINT_NAME (sym));
       break;
     }
 }
@@ -2391,7 +2391,7 @@ scope_info (char *args, int from_tty)
 	    printf_filtered ("Scope for %s:\n", save_args);
 	  count++;
 
-	  symname = DEPRECATED_SYMBOL_NAME (sym);
+	  symname = SYMBOL_PRINT_NAME (sym);
 	  if (symname == NULL || *symname == '\0')
 	    continue;		/* probably botched, certainly useless */
 
@@ -2458,7 +2458,7 @@ scope_info (char *args, int from_tty)
 	      printf_filtered ("%s", paddress (BLOCK_START (SYMBOL_BLOCK_VALUE (sym))));
 	      break;
 	    case LOC_UNRESOLVED:
-	      msym = lookup_minimal_symbol (DEPRECATED_SYMBOL_NAME (sym), 
+	      msym = lookup_minimal_symbol (SYMBOL_LINKAGE_NAME (sym),
 					    NULL, NULL);
 	      if (msym == NULL)
 		printf_filtered ("Unresolved Static");
Index: gdb/typeprint.c
===================================================================
--- gdb.orig/typeprint.c	2008-03-10 16:07:23.000000000 -0400
+++ gdb/typeprint.c	2008-08-20 19:04:42.000000000 -0400
@@ -63,7 +63,7 @@ typedef_print (struct type *type, struct
       fprintf_filtered (stream, "typedef ");
       type_print (type, "", stream, 0);
       if (TYPE_NAME ((SYMBOL_TYPE (new))) == 0
-	  || strcmp (TYPE_NAME ((SYMBOL_TYPE (new))), DEPRECATED_SYMBOL_NAME (new)) != 0)
+	  || strcmp (TYPE_NAME ((SYMBOL_TYPE (new))), SYMBOL_LINKAGE_NAME (new)) != 0)
 	fprintf_filtered (stream, " %s", SYMBOL_PRINT_NAME (new));
       break;
 #endif
@@ -71,7 +71,7 @@ typedef_print (struct type *type, struct
     case language_m2:
       fprintf_filtered (stream, "TYPE ");
       if (!TYPE_NAME (SYMBOL_TYPE (new))
-	  || strcmp (TYPE_NAME ((SYMBOL_TYPE (new))), DEPRECATED_SYMBOL_NAME (new)) != 0)
+	  || strcmp (TYPE_NAME ((SYMBOL_TYPE (new))), SYMBOL_LINKAGE_NAME (new)) != 0)
 	fprintf_filtered (stream, "%s = ", SYMBOL_PRINT_NAME (new));
       else
 	fprintf_filtered (stream, "<builtin> = ");
Index: gdb/xcoffread.c
===================================================================
--- gdb.orig/xcoffread.c	2008-08-18 08:31:38.000000000 -0400
+++ gdb/xcoffread.c	2008-08-20 19:04:42.000000000 -0400
@@ -1474,7 +1474,7 @@ process_xcoff_symbol (struct coff_symbol
          will be patched with the type from its stab entry later on in
          patch_block_stabs (), unless the file was compiled without -g.  */
 
-      DEPRECATED_SYMBOL_NAME (sym) = SYMNAME_ALLOC (name, symname_alloced);
+      SYMBOL_SET_LINKAGE_NAME (sym, SYMNAME_ALLOC (name, symname_alloced));
       SYMBOL_TYPE (sym) = builtin_type (gdbarch)->nodebug_text_symbol;
 
       SYMBOL_CLASS (sym) = LOC_BLOCK;


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