diff options
author | Doug Evans <xdje42@gmail.com> | 2014-12-05 00:53:56 -0800 |
---|---|---|
committer | Doug Evans <xdje42@gmail.com> | 2014-12-05 01:04:07 -0800 |
commit | 642a8d806780150b62e3a0381a8d995212bdf442 (patch) | |
tree | e2008c67d8eac2912bbf51d35b2d6525e8bdda64 /gdb/linespec.c | |
parent | ddb9f679fa9f54633442c46574b8e5b0ca45a786 (diff) | |
download | gdb-642a8d806780150b62e3a0381a8d995212bdf442.zip gdb-642a8d806780150b62e3a0381a8d995212bdf442.tar.gz gdb-642a8d806780150b62e3a0381a8d995212bdf442.tar.bz2 |
Revert: linespec.c (iterate_name_matcher): Fix arguments to symbol_name_cmp.
This patch causes regressions in ada's operator_bp.exp test.
That's because it uses wild_match which expects arguments in
the original order.
There is still a bug here. It's hard to see because either minsyms
save the day, or the needed symtab gets expanded before linespecs
need it because of the call to cp_canonicalize_string_no_typedefs
in linespec.c:find_linespec_symbols.
But if you disable both of those things, then the bug is visible.
bash$ ./gdb -D ./data-directory testsuite/gdb.cp/anon-ns
(gdb) b doit(void)
Function "doit(void)" not defined.
gdb/ChangeLog:
Revert:
PR symtab/17602
* linespec.c (iterate_name_matcher): Fix arguments to symbol_name_cmp.
Diffstat (limited to 'gdb/linespec.c')
-rw-r--r-- | gdb/linespec.c | 7 |
1 files changed, 1 insertions, 6 deletions
diff --git a/gdb/linespec.c b/gdb/linespec.c index af958dc..82384ca 100644 --- a/gdb/linespec.c +++ b/gdb/linespec.c @@ -982,12 +982,7 @@ iterate_name_matcher (const char *name, void *d) { const struct symbol_matcher_data *data = d; - /* The order of arguments we pass to symbol_name_cmp is important as - strcmp_iw, a typical value for symbol_name_cmp, only performs special - processing of '(' to remove overload info on the first argument and not - the second. The first argument is what the user provided, the second - argument is what came from partial syms / .gdb_index. */ - if (data->symbol_name_cmp (data->lookup_name, name) == 0) + if (data->symbol_name_cmp (name, data->lookup_name) == 0) return 1; /* Expand this symbol's symbol table. */ return 0; /* Skip this symbol. */ } |