gdb/testsuite: initialize "correct" variable in gdb.cp/cpexprs.exp.tcl
authorSimon Marchi <simon.marchi@efficios.com>
Thu, 26 Jan 2023 20:46:51 +0000 (15:46 -0500)
committerSimon Marchi <simon.marchi@efficios.com>
Thu, 26 Jan 2023 20:53:50 +0000 (15:53 -0500)
Due to a GDB bug (visible when building with -D_GLIBCXX_DEBUG), GDB
crashes somewhere in the middle of gdb.cp/cpexprs.exp, and thus fails to
read the string, at gdb.cp/cpexprs.exp.tcl:725.  The "correct" variable
doesn't get set, and I then see this TCL error:

  ERROR: can't read "correct": no such variable

Avoid the TCL error by initializing the "correct" variable to a dummy
value.

Change-Id: I828968d9b2d105ef47f8da2ef598aa16a518c059

gdb/testsuite/gdb.cp/cpexprs.exp.tcl

index 3df149bf6a3ee992d4ad1e163e73f2b75f287e68..462cf16dcd1c40c8ba4c14664a50c032dc27bd6b 100644 (file)
@@ -722,6 +722,8 @@ foreach name [get_functions list] {
 # Test c/v gets recognized even without quoting.
 foreach cv {{} { const} { volatile} { const volatile}} {
   set test "p 'CV::m(int)$cv'"
+  set correct dummy_value
+
   gdb_test_multiple $test $test {
       -re "( = {.*} 0x\[0-9a-f\]+ <CV::m.*>)\r\n$gdb_prompt $" {
          # = {void (CV * const, CV::t)} 0x400944 <CV::m(int)>