When reverting commit
5a20fadc841 and using gdb_unload instead of runto "bar"
to trigger the internal-error in test-case
gdb.dwarf2/locexpr-data-member-location.exp, we run into:
...
ERROR: couldn't unload file in $gdb (timeout).
...
and the test-case takes about 1 minute.
Fix this by handling internal-error in gdb_unload, such that we have:
...
ERROR: Couldn't unload file in $gdb (GDB internal error).
ERROR: Could not resync from internal error (eof)
...
within 2 seconds.
Tested on x86_64-linux.
exp_continue
}
-re "$gdb_prompt $" {}
+ -re "A problem internal to GDB has been detected" {
+ perror "Couldn't unload file in $GDB (GDB internal error)."
+ gdb_internal_error_resync
+ return -1
+ }
timeout {
perror "couldn't unload file in $GDB (timeout)."
return -1