From 0b1505c82dc5bb593608bb72c1db0496088f2d25 Mon Sep 17 00:00:00 2001 From: Bruno Larsen Date: Tue, 7 Jun 2022 16:07:07 -0300 Subject: [PATCH] gdb/testsuite: Expand gdb.cp/mb-ctor.exp to test dynamic allocation When testing GDB's ability to stop in constructors, gdb.cp/mb-ctor.exp only tested objects allocated on the stack. This commit adds a couple of dynamic allocations and tests if GDB can stop in it as well. --- gdb/testsuite/gdb.cp/mb-ctor.cc | 6 ++++++ gdb/testsuite/gdb.cp/mb-ctor.exp | 18 ++++++++++++++++++ 2 files changed, 24 insertions(+) diff --git a/gdb/testsuite/gdb.cp/mb-ctor.cc b/gdb/testsuite/gdb.cp/mb-ctor.cc index c54b4fece48..faa59f16459 100644 --- a/gdb/testsuite/gdb.cp/mb-ctor.cc +++ b/gdb/testsuite/gdb.cp/mb-ctor.cc @@ -64,5 +64,11 @@ int main() DeeplyDerived's ctor. */ DeeplyDerived dd(15); + Derived *dyn_d = new Derived (24); + DeeplyDerived *dyn_dd = new DeeplyDerived (42); + + delete dyn_d; + delete dyn_dd; + return 0; } diff --git a/gdb/testsuite/gdb.cp/mb-ctor.exp b/gdb/testsuite/gdb.cp/mb-ctor.exp index f5f5d9143d1..5a3c0a4a90f 100644 --- a/gdb/testsuite/gdb.cp/mb-ctor.exp +++ b/gdb/testsuite/gdb.cp/mb-ctor.exp @@ -55,6 +55,24 @@ gdb_test "continue" \ gdb_continue_to_breakpoint "set breakpoint here, second time" ".* breakpoint here" +gdb_test "continue" \ + ".*Breakpoint.*Derived.*i=24.*" \ + "run to breakpoint 1 dynamic v1" + +gdb_continue_to_breakpoint "set breakpoint here, first dynamic time"\ + ".* breakpoint here" + +gdb_test "continue" \ + ".*Breakpoint.*Derived.*i=42.*" \ + "run to breakpoint 1 dynamic v2" + +gdb_continue_to_breakpoint "set breakpoint here, second dynamic time"\ + ".* breakpoint here" + +gdb_test "continue" ".*Breakpoint.*~Derived.*" "Run to dynamic destructor v1" + +gdb_test "continue" ".*Breakpoint.*~Derived.*" "Run to dynamic destructor v2" + gdb_test "continue" \ ".*Breakpoint.*~Derived.*" \ "run to breakpoint 3 v1" -- 2.30.2