+2020-04-08 Tom de Vries <tdevries@suse.de>
+
+ * lib/gdb.exp (psymtabs_p): New proc.
+ * gdb.dwarf2/imported-unit.exp: Mark "no static partial symbols in
+ importing unit" unsupported if there are no partial symbols.
+
2020-04-08 Tom de Vries <tdevries@suse.de>
PR testsuite/25760
gdb_test_no_output "set language c++"
+set psymtabs_p [psymtabs_p]
+
# Verify that the partial symtab for the unit importing the partial unit does
# not contain the static partial symbol int, which is defined in the partial
# unit. Test-case for PR25646.
-gdb_test "main print psymbols" \
- [multi_line \
- " Depends on 1 other partial symtabs\." \
- "\[^\r\n\]*" \
- " Global partial symbols:" \
- " `main', function, $hex" \
- "" \
- ".*"] \
- "no static partial symbols in importing unit"
-
+set test "no static partial symbols in importing unit"
+if { $psymtabs_p } {
+ gdb_test "main print psymbols" \
+ [multi_line \
+ " Depends on 1 other partial symtabs\." \
+ "\[^\r\n\]*" \
+ " Global partial symbols:" \
+ " `main', function, $hex" \
+ "" \
+ ".*"] \
+ $test
+} else {
+ unsupported $test
+}
# Sanity check
gdb_test "ptype main" "= int \\(void\\)"
return 0
}
+# Return 1 if partial symbols are available. Otherwise, return 0.
+
+proc psymtabs_p { } {
+ global gdb_prompt
+
+ set cmd "maint info psymtab"
+ gdb_test_multiple $cmd "" {
+ -re "$cmd\r\n$gdb_prompt $" {
+ return 0
+ }
+ -re -wrap "" {
+ return 1
+ }
+ }
+
+ return 0
+}
+
# Verify that partial symtab expansion for $filename has state $readin.
proc verify_psymtab_expanded { filename readin } {