NetBSD-Bugs archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: toolchain/59549: gdb is not ctype(3) safe
> #7 0x00000000006d15f9 in symbol_find_demangled_name () at /usr/src/external/gpl3/gdb/lib/libgdb/../../dist/gdb/symtab.c:961
948 if (gsymbol->language () != language_unknown)
949 {
950 const struct language_defn *lang = language_def (gsymbol->language ());
951
952 lang->sniff_from_mangled_name (mangled, &demangled);
953 return demangled;
954 }
955
956 for (i = language_unknown; i < nr_languages; ++i)
957 {
958 enum language l = (enum language) i;
959 const struct language_defn *lang = language_def (l);
960
=> 961 if (lang->sniff_from_mangled_name (mangled, &demangled))
If gdb doesn't know the language _of this symbol_ for demangling, it
will try all the languages' demangling methods, whether or not there's
any specific reason for Ada to be involved in this.
We should just patch gdb locally and file an upstream bug, basic case
of clear undefined behaviour that is triggered in real-world use.
Christos's patch looks fine to me (but I did not check whether there
are any missing cases).
I suggest filing a separate PR for the wip/Guitar issue.
Home |
Main Index |
Thread Index |
Old Index