[1/2] gdbsupport: allow passing nullptr to checked_static_cast
Commit Message
Both static_cast and dynamic_cast handle nullptr (they return nullptr),
so I think checked_static_cast should too. This will allow doing a null
check after a checked_static_cast:
cooked_index_vector *table
= (gdb::checked_static_cast<cooked_index_vector *>
(per_bfd->index_table.get ()));
if (table != nullptr)
return;
Change-Id: If5c3134e63696f8e417c87b5f3901240c9f7ea97
---
gdbsupport/gdb-checked-static-cast.h | 3 +++
1 file changed, 3 insertions(+)
Comments
>>>>> "Simon" == Simon Marchi via Gdb-patches <gdb-patches@sourceware.org> writes:
Simon> Both static_cast and dynamic_cast handle nullptr (they return nullptr),
Simon> so I think checked_static_cast should too. This will allow doing a null
Simon> check after a checked_static_cast:
Thanks, I think this is a good idea.
Tom
@@ -54,6 +54,9 @@ checked_static_cast (V *v)
"types must be related");
#ifdef DEVELOPMENT
+ if (v == nullptr)
+ return nullptr;
+
T result = dynamic_cast<T> (v);
gdb_assert (result != nullptr);
#else