I noticed that if you hack some clean_restart calls into
paramless.exp, the test will fail. That is, the test currently relies
on the desired CUs already being expanded when trying to set a
breakpoint -- which is clearly a bug, the CU expansion state should
not affect "break".
I tracked this down to incorrect construction of a lookup_name_info in
cooked_index_functions::expand_symtabs_matching.
Bug: https://sourceware.org/bugzilla/show_bug.cgi?id=32510
Approved-By: Simon Marchi <simon.marchi@efficios.com>
std::vector<lookup_name_info> segment_lookup_names;
segment_lookup_names.reserve (name_vec.size ());
for (auto &segment_name : name_str_vec)
- {
- segment_lookup_names.emplace_back (segment_name,
- symbol_name_match_type::FULL, completing, true);
- }
+ segment_lookup_names.emplace_back (segment_name, match_type,
+ completing, true);
for (const cooked_index_entry *entry : table->find (name_str_vec.back (),
completing))
return -1
}
-gdb_breakpoint "outer<int>::fn" message
-delete_breakpoints
-
-gdb_breakpoint "outer<char>::fn<short>" message
-delete_breakpoints
+foreach ordinary {"outer<int>::fn" "outer<char>::fn<short>" "toplev<char>"} {
+ gdb_breakpoint $ordinary message
+ clean_restart $testfile
+}
gdb_test "break outer::fn" "Breakpoint $decimal at .*2 locations."
-delete_breakpoints
+clean_restart $testfile
gdb_test "break toplev" "Breakpoint $decimal at .*2 locations."
-delete_breakpoints
-
-gdb_breakpoint "toplev<char>" message
-delete_breakpoints