From e6b2f5efa97c7f3de8a3947c6782c40ec6172686 Mon Sep 17 00:00:00 2001 From: Pedro Alves Date: Tue, 21 Nov 2017 00:02:46 +0000 Subject: Fix mapped_index::find_name_components_bounds upper bound computation Here we want to find where we'd insert "after", so we want std::lower_bound, not std::upper_bound. gdb/ChangeLog: 2017-11-21 Pedro Alves * dwarf2read.c (mapped_index::find_name_components_bounds) : Use std::lower_bound instead of std::upper_bound. (test_mapped_index_find_name_component_bounds): Remove incorrect "t1_fund" from expected symbols. --- gdb/dwarf2read.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) (limited to 'gdb/dwarf2read.c') diff --git a/gdb/dwarf2read.c b/gdb/dwarf2read.c index 865e929..334d8c2 100644 --- a/gdb/dwarf2read.c +++ b/gdb/dwarf2read.c @@ -4339,8 +4339,8 @@ mapped_index::find_name_components_bounds std::string after = make_sort_after_prefix_name (cplus); if (after.empty ()) return end; - return std::upper_bound (lower, end, after.c_str (), - lookup_compare_upper); + return std::lower_bound (lower, end, after.c_str (), + lookup_compare_lower); } else return std::upper_bound (lower, end, cplus, lookup_compare_upper); @@ -4680,7 +4680,6 @@ test_mapped_index_find_name_component_bounds () static const char *expected_syms[] = { "t1_func", "t1_func1", - "t1_fund", /* This one's incorrect. */ }; SELF_CHECK (check_find_bounds_finds (mock_index.index (), -- cgit v1.1