[gdb/testsuite] Fix maint-expand-symbols-header-file.exp for cc-with-gdb-index With test-case gdb.base/maint-expand-symbols-header-file.exp and target board cc-with-gdb-index, we have: ... FAIL: gdb.base/maint-expand-symbols-header-file.exp: \ verify no symtabs are expanded ... By default, with partial symbols, we find the main function in the partial symbols, and derive the initial language setting from that, without expanding any psymtab. But that doesn't work with the indices, because the indices don't store the language with the symbols. So instead, the main psymtab is expanded to get the language of main, which causes the FAIL. Fix this by manually setting the language. Tested on x86_64-linux. gdb/testsuite/ChangeLog: 2020-04-16 Tom de Vries * gdb.base/maint-expand-symbols-header-file.exp: Set language before loading exec. --- gdb/testsuite/gdb.base/maint-expand-symbols-header-file.exp | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/gdb/testsuite/gdb.base/maint-expand-symbols-header-file.exp b/gdb/testsuite/gdb.base/maint-expand-symbols-header-file.exp index f73be404c9..05802b2719 100644 --- a/gdb/testsuite/gdb.base/maint-expand-symbols-header-file.exp +++ b/gdb/testsuite/gdb.base/maint-expand-symbols-header-file.exp @@ -18,10 +18,16 @@ standard_testfile .c -if {[prepare_for_testing "failed to prepare" $testfile \ +if {[build_executable "failed to prepare" $testfile \ $srcfile {debug nowarnings}]} { return -1 } +clean_restart + +# Make sure that no symtabs are expanded, by setting language before +# loading exec. +gdb_test_no_output "set language c" +gdb_load ${binfile} set test "verify no symtabs are expanded" if { [readnow] } {