I ran into a new failure in gdb.base/gdb-caching-proc.exp:
FAIL: gdb.base/gdb-caching-proc.exp: supports_memtag: initial: memory-tag check
This is a failure from the `supports_memtag` proc added recently (this
new proc is in lib/gdb.exp).
The problem here is that `supports_memtag` is hitting one of the
default error cases in gdb_test_multiple, specifically it is finding a
$gdb_prompt left unmatched from an earlier call to gdb_test_multiple.
Looking back through the test output I found that the problem is the
proc `gnat_runtime_has_debug_info` in lib/ada.exp. This proc is not
matching the trailing $gdb_prompt. This leaves the prompt in the
expect buffer, then when we run `supports_memtag` it sees the prompt
and thinks that the test completed with no output.
Fixed by making use of `-wrap` in `gnat_runtime_has_debug_info` to
ensure the trailing prompt gets matched.
gdb/testsuite/ChangeLog:
* lib/ada.exp (gnat_runtime_has_debug_info): Use -wrap with
gdb_test_multiple.
+2021-03-25 Andrew Burgess <andrew.burgess@embecosm.com>
+
+ * lib/ada.exp (gnat_runtime_has_debug_info): Use -wrap with
+ gdb_test_multiple.
+
2021-03-24 Luis Machado <luis.machado@linaro.org>
* gdb.arch/aarch64-mte.c: New file.
set has_debug_info 0
gdb_test_multiple "whatis __gnat_debug_raise_exception" "" {
- -re "type = <text variable, no debug info>" { }
- -re "type = void" {
+ -re -wrap "type = <text variable, no debug info>" { }
+ -re -wrap "type = void" {
set has_debug_info 1
}
default {