Delete search_symbols_equal (use compare_search_syms instead).
authorJoel Brobecker <brobecker@gnat.com>
Wed, 2 Oct 2013 09:22:32 +0000 (09:22 +0000)
committerJoel Brobecker <brobecker@gnat.com>
Wed, 2 Oct 2013 09:22:32 +0000 (09:22 +0000)
This avoids duplicating the logic comparing two symbol_search
objects (in search_symbols_equal and compare_search_syms).

gdb/ChangeLog:

        * symtab.c (search_symbols_equal): Delete.
        (sort_search_symbols_remove_dups): Replace call to
        search_symbols_equal by call to compare_search_syms,
        adjusting as necessary.

gdb/ChangeLog
gdb/symtab.c

index c3996555fa6b1035d891d93ca0d9485a59fa8e72..84e8cc55e2dbbdaa841e051d5da454be02d04a2b 100644 (file)
@@ -1,3 +1,10 @@
+2013-10-02  Joel Brobecker  <brobecker@adacore.com>
+
+       * symtab.c (search_symbols_equal): Delete.
+       (sort_search_symbols_remove_dups): Replace call to
+       search_symbols_equal by call to compare_search_syms,
+       adjusting as necessary.
+
 2013-10-02  Phil Muldoon  <pmuldoon@redhat.com>
 
        PR python/15579
index dbff042ed3754f775a899848835f9eb5a9d3c518..cf03b43c7c488db7f073005f5f36cfd54090a718 100644 (file)
@@ -3347,19 +3347,6 @@ compare_search_syms (const void *sa, const void *sb)
                 SYMBOL_PRINT_NAME (sym_b->symbol));
 }
 
-/* Helper function for sort_search_symbols_remove_dups.
-   Return TRUE if symbols A, B are equal.  */
-
-static int
-search_symbols_equal (const struct symbol_search *a,
-                     const struct symbol_search *b)
-{
-  return (strcmp (a->symtab->filename, b->symtab->filename) == 0
-         && a->block == b->block
-         && strcmp (SYMBOL_PRINT_NAME (a->symbol),
-                    SYMBOL_PRINT_NAME (b->symbol)) == 0);
-}
-
 /* Sort the NFOUND symbols in list FOUND and remove duplicates.
    The duplicates are freed, and the new list is returned in
    *NEW_HEAD, *NEW_TAIL.  */
@@ -3393,7 +3380,7 @@ sort_search_symbols_remove_dups (struct symbol_search *found, int nfound,
   /* Collapse out the dups.  */
   for (i = 1, j = 1; i < nfound; ++i)
     {
-      if (! search_symbols_equal (symbols[j - 1], symbols[i]))
+      if (compare_search_syms (&symbols[j - 1], &symbols[i]) != 0)
        symbols[j++] = symbols[i];
       else
        xfree (symbols[i]);