This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
[FYI] Hoist assertion in target_stack::unpush
- From: Tom Tromey <tom at tromey dot com>
- To: gdb-patches at sourceware dot org
- Cc: Tom Tromey <tom at tromey dot com>
- Date: Tue, 5 Feb 2019 06:37:38 -0700
- Subject: [FYI] 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.
---
gdb/ChangeLog | 4 ++++
gdb/target.c | 4 ++--
2 files changed, 6 insertions(+), 2 deletions(-)
diff --git a/gdb/target.c b/gdb/target.c
index c5502ce1791..c1ab07f7608 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. */
--
2.17.2