aboutsummaryrefslogtreecommitdiff
path: root/gdb/dbxread.c
diff options
context:
space:
mode:
authorPedro Alves <palves@redhat.com>2013-03-13 18:38:12 +0000
committerPedro Alves <palves@redhat.com>2013-03-13 18:38:12 +0000
commit10217050c886b4aaee32e97b99c7b96ba389581d (patch)
tree5fb8f07f627f676b6c036f097937c04698acd4cb /gdb/dbxread.c
parent4fa7e2ff221c6b8c129e5e0486112c578f628ded (diff)
downloadgdb-10217050c886b4aaee32e97b99c7b96ba389581d.zip
gdb-10217050c886b4aaee32e97b99c7b96ba389581d.tar.gz
gdb-10217050c886b4aaee32e97b99c7b96ba389581d.tar.bz2
Fix completer.c FIXME, and invalid pointer to pointer conversion.
As mentioned in the previous patch, I grepped for "\*\*) &" and found one hit in completer.c. I was about to post a patch that simply made current_demangling_style_string const, and cast away constness at the xfree site. However, looking deeper, it seem to be there's a lot of dead code in the file. First, all external callers of set_demangling_style are found in the stabs reader, commented out for over 12 years: http://sourceware.org/ml/gdb-patches/2000-12/msg00214.html I don't think it's likely we'll ever make the older mangling schemes work for stabs. If we do, we can rediscuss the approach then. Then, set_demangling_command has special handling for unknown demangling styles, but "set demangle-style" is an enum command, and with those, the user can only specify a known enumeration value, by design: (gdb) set demangle-style gangnam-style Undefined item: "gangnam-style". This patch removes all that dead code, then makes current_demangling_style_string point to an element of demangling_style_names, as the FIXME suggests, and then makes current_demangling_style_string, removing the need for the 'const char **' cast. gdb/ 2013-03-13 Pedro Alves <palves@redhat.com> * dbxread.c (read_ofile_symtab, process_one_symbol): Remove commented out code. * demangle.c (current_demangling_style_string): Make it const. (set_demangling_command): Assert the demangling style is known. Remove all handling of unknown styles. Set 'current_demangling_style_string' to an element of the demangling_style_names array. (set_demangling_style): Delete. (_initialize_demangler): Set current_demangling_style_string to the element of the demangling_style_names array that corresponds to the default demangling style. Remove FIXME note. Don't call set_demangling_style. * gdb-demangle.h (set_demangling_style): Remove declaration.
Diffstat (limited to 'gdb/dbxread.c')
-rw-r--r--gdb/dbxread.c33
1 files changed, 0 insertions, 33 deletions
diff --git a/gdb/dbxread.c b/gdb/dbxread.c
index 09b46a0..435c518 100644
--- a/gdb/dbxread.c
+++ b/gdb/dbxread.c
@@ -2580,21 +2580,6 @@ read_ofile_symtab (struct objfile *objfile, struct partial_symtab *pst)
if (strncmp (tempstring, "__gnu_compiled", 14) == 0)
processing_gcc_compilation = 2;
}
-
- /* Try to select a C++ demangling based on the compilation unit
- producer. */
-
-#if 0
- /* For now, stay with AUTO_DEMANGLING for g++ output, as we don't
- know whether it will use the old style or v3 mangling. */
- if (processing_gcc_compilation)
- {
- if (AUTO_DEMANGLING)
- {
- set_demangling_style (GNU_DEMANGLING_STYLE_STRING);
- }
- }
-#endif
}
else
{
@@ -2660,15 +2645,6 @@ read_ofile_symtab (struct objfile *objfile, struct partial_symtab *pst)
processing_gcc_compilation = 1;
else if (strcmp (namestring, GCC2_COMPILED_FLAG_SYMBOL) == 0)
processing_gcc_compilation = 2;
-
-#if 0
- /* For now, stay with AUTO_DEMANGLING for g++ output, as we don't
- know whether it will use the old style or v3 mangling. */
- if (AUTO_DEMANGLING)
- {
- set_demangling_style (GNU_DEMANGLING_STYLE_STRING);
- }
-#endif
}
else if (type & N_EXT || type == (unsigned char) N_TEXT
|| type == (unsigned char) N_NBTEXT)
@@ -3270,15 +3246,6 @@ process_one_symbol (int type, int desc, CORE_ADDR valu, char *name,
if (strcmp (name, GCC2_COMPILED_FLAG_SYMBOL) == 0)
{
processing_gcc_compilation = 2;
-#if 0 /* Works, but is experimental. -fnf */
- /* For now, stay with AUTO_DEMANGLING for g++ output, as
- we don't know whether it will use the old style or v3
- mangling. */
- if (AUTO_DEMANGLING)
- {
- set_demangling_style (GNU_DEMANGLING_STYLE_STRING);
- }
-#endif
}
else
n_opt_found = 1;