This is the mail archive of the
gdb-cvs@sourceware.org
mailing list for the GDB project.
[binutils-gdb] Hoist assertion in target_stack::unpush
- From: Tom Tromey <tromey at sourceware dot org>
- To: gdb-cvs at sourceware dot org
- Date: 5 Feb 2019 13:46:22 -0000
- Subject: [binutils-gdb] Hoist assertion in target_stack::unpush
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=1688cb2916e7bc46c92dd6f5ac2ba0da6c832274
commit 1688cb2916e7bc46c92dd6f5ac2ba0da6c832274
Author: Tom Tromey <tom@tromey.com>
Date: Tue Feb 5 04:59:11 2019 -0700
Hoist assertion in target_stack::unpush
I noticed that target_stack::unpush first uses the target "t", then
later asserts that it is non-NULL:
strata stratum = t->stratum ();
[...]
gdb_assert (t != NULL);
This is backwards, though, as the assertion must come first.
gdb/ChangeLog
2019-02-05 Tom Tromey <tom@tromey.com>
* target.c (target_stack::unpush): Move assertion earlier.
Diff:
---
gdb/ChangeLog | 4 ++++
gdb/target.c | 4 ++--
2 files changed, 6 insertions(+), 2 deletions(-)
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index b06398a..0ce33f2 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,7 @@
+2019-02-05 Tom Tromey <tom@tromey.com>
+
+ * target.c (target_stack::unpush): Move assertion earlier.
+
2019-01-30 Tom Tromey <tom@tromey.com>
PR python/23615:
diff --git a/gdb/target.c b/gdb/target.c
index c5502ce..c1ab07f 100644
--- a/gdb/target.c
+++ b/gdb/target.c
@@ -598,14 +598,14 @@ unpush_target (struct target_ops *t)
bool
target_stack::unpush (target_ops *t)
{
+ gdb_assert (t != NULL);
+
strata stratum = t->stratum ();
if (stratum == dummy_stratum)
internal_error (__FILE__, __LINE__,
_("Attempt to unpush the dummy target"));
- gdb_assert (t != NULL);
-
/* Look for the specified target. Note that a target can only occur
once in the target stack. */