/* Support routines for decoding "stabs" debugging information format.
- Copyright (C) 1986-2019 Free Software Foundation, Inc.
+ Copyright (C) 1986-2020 Free Software Foundation, Inc.
This file is part of GDB.
SYMBOL_LINE (sym) = 0; /* unknown */
}
- SYMBOL_SET_LANGUAGE (sym, get_current_subfile ()->language,
- &objfile->objfile_obstack);
+ sym->set_language (get_current_subfile ()->language,
+ &objfile->objfile_obstack);
if (is_cplus_marker (string[0]))
{
normal:
std::string new_name;
- if (SYMBOL_LANGUAGE (sym) == language_cplus)
+ if (sym->language () == language_cplus)
{
char *name = (char *) alloca (p - string + 1);
new_name = cp_canonicalize_string (name);
}
if (!new_name.empty ())
- {
- SYMBOL_SET_NAMES (sym,
- new_name,
- 1, objfile);
- }
+ sym->compute_and_set_names (new_name, true, objfile->per_bfd);
else
- SYMBOL_SET_NAMES (sym, gdb::string_view (string, p - string), true,
- objfile);
+ sym->compute_and_set_names (gdb::string_view (string, p - string), true,
+ objfile->per_bfd);
- if (SYMBOL_LANGUAGE (sym) == language_cplus)
+ if (sym->language () == language_cplus)
cp_scan_for_anonymous_namespaces (get_buildsym_compunit (), sym,
objfile);
This is important to do, because of forward references:
The cleanup of undefined types stored in undef_types only uses
STRUCT_DOMAIN symbols to perform the replacement. */
- synonym = (SYMBOL_LANGUAGE (sym) == language_ada && p[-2] != 'T');
+ synonym = (sym->language () == language_ada && p[-2] != 'T');
/* Typedef */
SYMBOL_TYPE (sym) = read_type (&p, objfile);
break;
case 25:
/* Complex type consisting of two IEEE single precision values. */
- rettype = init_complex_type (objfile, "complex",
+ rettype = init_complex_type ("complex",
rs6000_builtin_type (12, objfile));
break;
case 26:
/* Complex type consisting of two IEEE double precision values. */
- rettype = init_complex_type (objfile, "double complex",
+ rettype = init_complex_type ("double complex",
rs6000_builtin_type (13, objfile));
break;
case 27:
sym = allocate_symbol (objfile);
sym->set_linkage_name (name);
- SYMBOL_SET_LANGUAGE (sym, get_current_subfile ()->language,
- &objfile->objfile_obstack);
+ sym->set_language (get_current_subfile ()->language,
+ &objfile->objfile_obstack);
SYMBOL_ACLASS_INDEX (sym) = LOC_CONST;
SYMBOL_DOMAIN (sym) = VAR_DOMAIN;
SYMBOL_VALUE (sym) = n;
|| details == NF_COMPLEX32)
{
rettype = dbx_init_float_type (objfile, nbits / 2);
- return init_complex_type (objfile, NULL, rettype);
+ return init_complex_type (NULL, rettype);
}
return dbx_init_float_type (objfile, nbits);
= dbx_init_float_type (objfile, n2 * TARGET_CHAR_BIT);
if (self_subrange)
- return init_complex_type (objfile, NULL, float_type);
+ return init_complex_type (NULL, float_type);
else
return float_type;
}
int
hashname (const char *name)
{
- return hash (name, strlen (name)) % HASHSIZE;
+ return fast_hash (name, strlen (name)) % HASHSIZE;
}
/* Initializer for this module. */
+void _initialize_stabsread ();
void
-_initialize_stabsread (void)
+_initialize_stabsread ()
{
undef_types_allocated = 20;
undef_types_length = 0;