summaryrefslogtreecommitdiff
path: root/gdb/testsuite/gdb.base/continue-after-aborted-step-over.c
diff options
context:
space:
mode:
authorPedro Alves <palves@redhat.com>2018-01-12 18:59:40 +0000
committerPedro Alves <palves@redhat.com>2018-01-12 18:59:40 +0000
commit1d17025506de70cb1d9d5b7a5654e40ce689bf26 (patch)
tree7abb445fe8671f8003a4c57333c49b545c159e88 /gdb/testsuite/gdb.base/continue-after-aborted-step-over.c
parenta09f837ae221977eec50cc2ded12bd765b3b634a (diff)
Add testcase for GDB hang fixed by previous commit
This adds a testcase for the previous commit. The regression was related to in-line step overs. The reason we didn't see it on native x86-64/s390 GNU/Linux testing is that native debugging uses displaced stepping by default (because native debugging defaults to "maint set target-non-stop on"), unlike remote debugging. So in order to trigger the bug with native debugging as well, the testcase disables displaced stepping explicitly. Also, instead of using watchpoints to trigger the regression, the testcase uses a breakpoint at address 0, which should be more portable. gdb/testsuite/ChangeLog: 2018-01-12 Pedro Alves <palves@redhat.com> * gdb.base/continue-after-aborted-step-over.c: New. * gdb.base/continue-after-aborted-step-over.exp: New.
Diffstat (limited to 'gdb/testsuite/gdb.base/continue-after-aborted-step-over.c')
-rw-r--r--gdb/testsuite/gdb.base/continue-after-aborted-step-over.c29
1 files changed, 29 insertions, 0 deletions
diff --git a/gdb/testsuite/gdb.base/continue-after-aborted-step-over.c b/gdb/testsuite/gdb.base/continue-after-aborted-step-over.c
new file mode 100644
index 0000000000..7252648084
--- /dev/null
+++ b/gdb/testsuite/gdb.base/continue-after-aborted-step-over.c
@@ -0,0 +1,29 @@
+/* This testcase is part of GDB, the GNU debugger.
+
+ Copyright 2018 Free Software Foundation, Inc.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 3 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program. If not, see <http://www.gnu.org/licenses/>. */
+
+void
+function (void)
+{
+}
+
+int
+main ()
+{
+ function ();
+
+ return 0;
+}