aboutsummaryrefslogtreecommitdiff
path: root/gdbsupport
diff options
context:
space:
mode:
authorSimon Marchi <simon.marchi@efficios.com>2023-01-31 10:57:20 -0500
committerSimon Marchi <simon.marchi@efficios.com>2023-01-31 12:36:46 -0500
commitd7789889b1839c3c0f64c6738b0d8517ccead049 (patch)
tree8b3f227cfb4a51ad30a8480c958c826ebf0d0a27 /gdbsupport
parent95cbab2bebf7e810eded3e16ae7e82b13f4d2493 (diff)
downloadgdb-d7789889b1839c3c0f64c6738b0d8517ccead049.zip
gdb-d7789889b1839c3c0f64c6738b0d8517ccead049.tar.gz
gdb-d7789889b1839c3c0f64c6738b0d8517ccead049.tar.bz2
gdbsupport: allow passing nullptr to checked_static_cast
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
Diffstat (limited to 'gdbsupport')
-rw-r--r--gdbsupport/gdb-checked-static-cast.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/gdbsupport/gdb-checked-static-cast.h b/gdbsupport/gdb-checked-static-cast.h
index cc29873..bc75244 100644
--- a/gdbsupport/gdb-checked-static-cast.h
+++ b/gdbsupport/gdb-checked-static-cast.h
@@ -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