/* Ada language support routines for GDB, the GNU debugger. Copyright
- 1992, 1993, 1994, 1997, 1998, 1999, 2000 Free Software Foundation, Inc.
+ 1992, 1993, 1994, 1997, 1998, 1999, 2000, 2003
+ Free Software Foundation, Inc.
This file is part of GDB.
if (SYMBOL_NAMESPACE (sym) == STRUCT_NAMESPACE)
return 1;
else
- return is_suppressed_name (SYMBOL_NAME (sym));
+ return is_suppressed_name (DEPRECATED_SYMBOL_NAME (sym));
}
\f
case LOC_LOCAL_ARG:
case LOC_BASEREG:
case LOC_BASEREG_ARG:
+ case LOC_COMPUTED:
+ case LOC_COMPUTED_ARG:
goto FoundNonType;
default:
break;
for (j = i - 1; j >= 0; j -= 1)
{
- if (mangled_ordered_before (SYMBOL_NAME (syms[j]),
- SYMBOL_NAME (sym)))
+ if (mangled_ordered_before (DEPRECATED_SYMBOL_NAME (syms[j]),
+ DEPRECATED_SYMBOL_NAME (sym)))
break;
syms[j + 1] = syms[j];
blocks[j + 1] = blocks[j];
struct symtab_and_line sal = find_function_start_sal (syms[i], 1);
printf_unfiltered ("[%d] %s at %s:%d\n",
i + first_choice,
- SYMBOL_SOURCE_NAME (syms[i]),
+ SYMBOL_PRINT_NAME (syms[i]),
sal.symtab == NULL
? "<no source file available>"
: sal.symtab->filename, sal.line);
if (SYMBOL_LINE (syms[i]) != 0 && symtab != NULL)
printf_unfiltered ("[%d] %s at %s:%d\n",
i + first_choice,
- SYMBOL_SOURCE_NAME (syms[i]),
+ SYMBOL_PRINT_NAME (syms[i]),
symtab->filename, SYMBOL_LINE (syms[i]));
else if (is_enumeral && TYPE_NAME (SYMBOL_TYPE (syms[i])) != NULL)
{
printf_unfiltered ("[%d] ", i + first_choice);
ada_print_type (SYMBOL_TYPE (syms[i]), NULL, gdb_stdout, -1, 0);
printf_unfiltered ("'(%s) (enumeral)\n",
- SYMBOL_SOURCE_NAME (syms[i]));
+ SYMBOL_PRINT_NAME (syms[i]));
}
else if (symtab != NULL)
printf_unfiltered (is_enumeral
? "[%d] %s in %s (enumeral)\n"
: "[%d] %s at %s:?\n",
i + first_choice,
- SYMBOL_SOURCE_NAME (syms[i]),
+ SYMBOL_PRINT_NAME (syms[i]),
symtab->filename);
else
printf_unfiltered (is_enumeral
? "[%d] %s (enumeral)\n"
: "[%d] %s at ?\n",
i + first_choice,
- SYMBOL_SOURCE_NAME (syms[i]));
+ SYMBOL_PRINT_NAME (syms[i]));
}
}
{
struct type *type0 = SYMBOL_TYPE (sym0);
struct type *type1 = SYMBOL_TYPE (sym1);
- char *name0 = SYMBOL_NAME (sym0);
- char *name1 = SYMBOL_NAME (sym1);
+ char *name0 = DEPRECATED_SYMBOL_NAME (sym0);
+ char *name1 = DEPRECATED_SYMBOL_NAME (sym1);
int len0 = strlen (name0);
return
TYPE_CODE (type0) == TYPE_CODE (type1)
struct partial_symbol *psym = start[i];
if (SYMBOL_NAMESPACE (psym) == namespace &&
- wild_match (name, name_len, SYMBOL_NAME (psym)))
+ wild_match (name, name_len, DEPRECATED_SYMBOL_NAME (psym)))
return psym;
}
return NULL;
{
int M = (U + i) >> 1;
struct partial_symbol *psym = start[M];
- if (SYMBOL_NAME (psym)[0] < name[0])
+ if (DEPRECATED_SYMBOL_NAME (psym)[0] < name[0])
i = M + 1;
- else if (SYMBOL_NAME (psym)[0] > name[0])
+ else if (DEPRECATED_SYMBOL_NAME (psym)[0] > name[0])
U = M - 1;
- else if (strcmp (SYMBOL_NAME (psym), name) < 0)
+ else if (strcmp (DEPRECATED_SYMBOL_NAME (psym), name) < 0)
i = M + 1;
else
U = M;
if (SYMBOL_NAMESPACE (psym) == namespace)
{
- int cmp = strncmp (name, SYMBOL_NAME (psym), name_len);
+ int cmp = strncmp (name, DEPRECATED_SYMBOL_NAME (psym), name_len);
if (cmp < 0)
{
break;
}
else if (cmp == 0
- && is_name_suffix (SYMBOL_NAME (psym) + name_len))
+ && is_name_suffix (DEPRECATED_SYMBOL_NAME (psym) + name_len))
return psym;
}
i += 1;
{
int M = (U + i) >> 1;
struct partial_symbol *psym = start[M];
- if (SYMBOL_NAME (psym)[0] < '_')
+ if (DEPRECATED_SYMBOL_NAME (psym)[0] < '_')
i = M + 1;
- else if (SYMBOL_NAME (psym)[0] > '_')
+ else if (DEPRECATED_SYMBOL_NAME (psym)[0] > '_')
U = M - 1;
- else if (strcmp (SYMBOL_NAME (psym), "_ada_") < 0)
+ else if (strcmp (DEPRECATED_SYMBOL_NAME (psym), "_ada_") < 0)
i = M + 1;
else
U = M;
{
int cmp;
- cmp = (int) '_' - (int) SYMBOL_NAME (psym)[0];
+ cmp = (int) '_' - (int) DEPRECATED_SYMBOL_NAME (psym)[0];
if (cmp == 0)
{
- cmp = strncmp ("_ada_", SYMBOL_NAME (psym), 5);
+ cmp = strncmp ("_ada_", DEPRECATED_SYMBOL_NAME (psym), 5);
if (cmp == 0)
- cmp = strncmp (name, SYMBOL_NAME (psym) + 5, name_len);
+ cmp = strncmp (name, DEPRECATED_SYMBOL_NAME (psym) + 5, name_len);
}
if (cmp < 0)
break;
}
else if (cmp == 0
- && is_name_suffix (SYMBOL_NAME (psym) + name_len + 5))
+ && is_name_suffix (DEPRECATED_SYMBOL_NAME (psym) + name_len + 5))
return psym;
}
i += 1;
case LOC_LOCAL_ARG:
case LOC_BASEREG:
case LOC_BASEREG_ARG:
+ case LOC_COMPUTED:
+ case LOC_COMPUTED_ARG:
for (j = FIRST_LOCAL_BLOCK;
j < BLOCKVECTOR_NBLOCKS (BLOCKVECTOR (s)); j += 1)
{
ALL_MSYMBOLS (objfile, msymbol)
{
- if (ada_match_name (SYMBOL_NAME (msymbol), name, wild_match)
+ if (ada_match_name (DEPRECATED_SYMBOL_NAME (msymbol), name, wild_match)
&& MSYMBOL_TYPE (msymbol) != mst_solib_trampoline)
return msymbol;
}
/* Initialize the local variable symbol that stands for the
* static link (when it exists). */
static_link = &static_link_sym;
- SYMBOL_NAME (static_link) = "";
+ DEPRECATED_SYMBOL_NAME (static_link) = "";
SYMBOL_LANGUAGE (static_link) = language_unknown;
SYMBOL_CLASS (static_link) = LOC_LOCAL;
SYMBOL_NAMESPACE (static_link) = VAR_NAMESPACE;
i = 0;
while (i < nsyms)
{
- if (SYMBOL_NAME (syms[i]) != NULL
+ if (DEPRECATED_SYMBOL_NAME (syms[i]) != NULL
&& SYMBOL_CLASS (syms[i]) == LOC_STATIC
&& is_nondebugging_type (SYMBOL_TYPE (syms[i])))
{
for (j = 0; j < nsyms; j += 1)
{
if (i != j
- && SYMBOL_NAME (syms[j]) != NULL
- && STREQ (SYMBOL_NAME (syms[i]), SYMBOL_NAME (syms[j]))
+ && DEPRECATED_SYMBOL_NAME (syms[j]) != NULL
+ && STREQ (DEPRECATED_SYMBOL_NAME (syms[i]), DEPRECATED_SYMBOL_NAME (syms[j]))
&& SYMBOL_CLASS (syms[i]) == SYMBOL_CLASS (syms[j])
&& SYMBOL_VALUE_ADDRESS (syms[i])
== SYMBOL_VALUE_ADDRESS (syms[j]))
{
ALL_MSYMBOLS (objfile, msymbol)
{
- if (ada_match_name (SYMBOL_NAME (msymbol), name, wild_match))
+ if (ada_match_name (DEPRECATED_SYMBOL_NAME (msymbol), name, wild_match))
{
switch (MSYMBOL_TYPE (msymbol))
{
bv = BLOCKVECTOR (s);
block = BLOCKVECTOR_BLOCK (bv, GLOBAL_BLOCK);
ada_add_block_symbols (block,
- SYMBOL_NAME (msymbol),
+ DEPRECATED_SYMBOL_NAME (msymbol),
namespace, objfile, wild_match);
if (ndefns == old_ndefns)
{
block = BLOCKVECTOR_BLOCK (bv, STATIC_BLOCK);
ada_add_block_symbols (block,
- SYMBOL_NAME (msymbol),
+ DEPRECATED_SYMBOL_NAME (msymbol),
namespace, objfile,
wild_match);
}
ALL_BLOCK_SYMBOLS (block, i, sym)
{
if (SYMBOL_NAMESPACE (sym) == namespace &&
- wild_match (name, name_len, SYMBOL_NAME (sym)))
+ wild_match (name, name_len, DEPRECATED_SYMBOL_NAME (sym)))
{
switch (SYMBOL_CLASS (sym))
{
case LOC_REGPARM:
case LOC_REGPARM_ADDR:
case LOC_BASEREG_ARG:
+ case LOC_COMPUTED_ARG:
arg_sym = sym;
break;
case LOC_UNRESOLVED:
{
int M = (U + i) >> 1;
struct symbol *sym = BLOCK_SYM (block, M);
- if (SYMBOL_NAME (sym)[0] < name[0])
+ if (DEPRECATED_SYMBOL_NAME (sym)[0] < name[0])
i = M + 1;
- else if (SYMBOL_NAME (sym)[0] > name[0])
+ else if (DEPRECATED_SYMBOL_NAME (sym)[0] > name[0])
U = M - 1;
- else if (strcmp (SYMBOL_NAME (sym), name) < 0)
+ else if (strcmp (DEPRECATED_SYMBOL_NAME (sym), name) < 0)
i = M + 1;
else
U = M;
{
if (SYMBOL_NAMESPACE (sym) == namespace)
{
- int cmp = strncmp (name, SYMBOL_NAME (sym), name_len);
+ int cmp = strncmp (name, DEPRECATED_SYMBOL_NAME (sym), name_len);
if (cmp < 0)
{
}
}
else if (cmp == 0
- && is_name_suffix (SYMBOL_NAME (sym) + name_len))
+ && is_name_suffix (DEPRECATED_SYMBOL_NAME (sym) + name_len))
{
switch (SYMBOL_CLASS (sym))
{
case LOC_REGPARM:
case LOC_REGPARM_ADDR:
case LOC_BASEREG_ARG:
+ case LOC_COMPUTED_ARG:
arg_sym = sym;
break;
case LOC_UNRESOLVED:
{
int M = (U + i) >> 1;
struct symbol *sym = BLOCK_SYM (block, M);
- if (SYMBOL_NAME (sym)[0] < '_')
+ if (DEPRECATED_SYMBOL_NAME (sym)[0] < '_')
i = M + 1;
- else if (SYMBOL_NAME (sym)[0] > '_')
+ else if (DEPRECATED_SYMBOL_NAME (sym)[0] > '_')
U = M - 1;
- else if (strcmp (SYMBOL_NAME (sym), "_ada_") < 0)
+ else if (strcmp (DEPRECATED_SYMBOL_NAME (sym), "_ada_") < 0)
i = M + 1;
else
U = M;
{
int cmp;
- cmp = (int) '_' - (int) SYMBOL_NAME (sym)[0];
+ cmp = (int) '_' - (int) DEPRECATED_SYMBOL_NAME (sym)[0];
if (cmp == 0)
{
- cmp = strncmp ("_ada_", SYMBOL_NAME (sym), 5);
+ cmp = strncmp ("_ada_", DEPRECATED_SYMBOL_NAME (sym), 5);
if (cmp == 0)
- cmp = strncmp (name, SYMBOL_NAME (sym) + 5, name_len);
+ cmp = strncmp (name, DEPRECATED_SYMBOL_NAME (sym) + 5, name_len);
}
if (cmp < 0)
}
}
else if (cmp == 0
- && is_name_suffix (SYMBOL_NAME (sym) + name_len + 5))
+ && is_name_suffix (DEPRECATED_SYMBOL_NAME (sym) + name_len + 5))
{
switch (SYMBOL_CLASS (sym))
{
case LOC_REGPARM:
case LOC_REGPARM_ADDR:
case LOC_BASEREG_ARG:
+ case LOC_COMPUTED_ARG:
arg_sym = sym;
break;
case LOC_UNRESOLVED:
TYPE_FIELD_STATIC_KIND (ftype, nargs) = 0;
TYPE_FIELD_TYPE (ftype, nargs) =
lookup_pointer_type (check_typedef (SYMBOL_TYPE (sym)));
- TYPE_FIELD_NAME (ftype, nargs) = SYMBOL_NAME (sym);
+ TYPE_FIELD_NAME (ftype, nargs) = DEPRECATED_SYMBOL_NAME (sym);
nargs += 1;
break;
case LOC_REGPARM:
case LOC_LOCAL_ARG:
case LOC_BASEREG_ARG:
+ case LOC_COMPUTED_ARG:
TYPE_FIELD_BITPOS (ftype, nargs) = nargs;
TYPE_FIELD_BITSIZE (ftype, nargs) = 0;
TYPE_FIELD_STATIC_KIND (ftype, nargs) = 0;
TYPE_FIELD_TYPE (ftype, nargs) = check_typedef (SYMBOL_TYPE (sym));
- TYPE_FIELD_NAME (ftype, nargs) = SYMBOL_NAME (sym);
+ TYPE_FIELD_NAME (ftype, nargs) = DEPRECATED_SYMBOL_NAME (sym);
nargs += 1;
break;
for (i = 0; i < selected.nelts; i += 1)
(*canonical)[i] =
extended_canonical_line_spec (selected.sals[i],
- SYMBOL_SOURCE_NAME (symbols[i]));
+ SYMBOL_PRINT_NAME (symbols[i]));
}
discard_cleanups (old_chain);
fprintf (stderr, "Block: %p; [0x%lx, 0x%lx]",
b, BLOCK_START (b), BLOCK_END (b));
if (BLOCK_FUNCTION (b) != NULL)
- fprintf (stderr, " Function: %s", SYMBOL_NAME (BLOCK_FUNCTION (b)));
+ fprintf (stderr, " Function: %s", DEPRECATED_SYMBOL_NAME (BLOCK_FUNCTION (b)));
fprintf (stderr, "\n");
fprintf (stderr, "\t Superblock: %p\n", BLOCK_SUPERBLOCK (b));
fprintf (stderr, "\t Symbols:");
{
if (i > 0 && i % 4 == 0)
fprintf (stderr, "\n\t\t ");
- fprintf (stderr, " %s", SYMBOL_NAME (sym));
+ fprintf (stderr, " %s", DEPRECATED_SYMBOL_NAME (sym));
}
fprintf (stderr, "\n");
}
ada_print_type, /* Print a type using appropriate syntax */
ada_val_print, /* Print a value using appropriate syntax */
ada_value_print, /* Print a top-level value */
+ NULL, /* Language specific skip_trampoline */
+ NULL, /* Language specific symbol demangler */
{"", "", "", ""}, /* Binary format info */
#if 0
{"8#%lo#", "8#", "o", "#"}, /* Octal format info */