diff options
author | Tom Tromey <tom@tromey.com> | 2023-01-19 17:20:09 -0700 |
---|---|---|
committer | Tom Tromey <tom@tromey.com> | 2023-02-19 12:51:05 -0700 |
commit | 780040961370cb7a9849b83553f03bf7d2f0f9df (patch) | |
tree | b6f01f996c68daa6c0d2f6f5c55c760d2d1a880b /gdb/cp-support.c | |
parent | 392c1cbd745a575c5894ea33876f255b66a14d89 (diff) | |
download | fsf-binutils-gdb-780040961370cb7a9849b83553f03bf7d2f0f9df.zip fsf-binutils-gdb-780040961370cb7a9849b83553f03bf7d2f0f9df.tar.gz fsf-binutils-gdb-780040961370cb7a9849b83553f03bf7d2f0f9df.tar.bz2 |
Don't allow NULL as an argument to block_static_block
block_static_block has special behavior when the block is NULL.
Remove this and patch up the callers instead.
Diffstat (limited to 'gdb/cp-support.c')
-rw-r--r-- | gdb/cp-support.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/gdb/cp-support.c b/gdb/cp-support.c index 6a96f9f..f7767c9 100644 --- a/gdb/cp-support.c +++ b/gdb/cp-support.c @@ -1307,7 +1307,8 @@ add_symbol_overload_list_namespace (const char *func_name, } /* Look in the static block. */ - block = block_static_block (get_selected_block (0)); + block = get_selected_block (0); + block = block == nullptr ? nullptr : block_static_block (block); if (block) add_symbol_overload_list_block (name, block, overload_list); @@ -1457,6 +1458,9 @@ add_symbol_overload_list_qualified (const char *func_name, add_symbol_overload_list_block (func_name, b, overload_list); surrounding_static_block = block_static_block (get_selected_block (0)); + surrounding_static_block = (surrounding_static_block == nullptr + ? nullptr + : block_static_block (surrounding_static_block)); /* Go through the symtabs and check the externs and statics for symbols which match. */ |