[Lldb-commits] [PATCH] D131850: [LLDB][NFC] Reliability Fixes for FormatEntity
Slava Gurevich via Phabricator via lldb-commits
lldb-commits at lists.llvm.org
Mon Aug 15 08:35:00 PDT 2022
fixathon created this revision.
fixathon added reviewers: clayborg, JDevlieghere, DavidSpickett, jasonmolenda.
Herald added a project: All.
fixathon published this revision for review.
fixathon added inline comments.
Herald added a project: LLDB.
Herald added a subscriber: lldb-commits.
================
Comment at: lldb/source/Core/FormatEntity.cpp:714-715
- if (valobj == nullptr)
- return false;
-
----------------
This null-check is unreachable and redundant. valobj is already completely null-checked at lines 675 and 705.
================
Comment at: lldb/source/Core/FormatEntity.cpp:1695
if (var_value_sp->GetCompilerType().IsValid()) {
- if (var_value_sp && exe_scope->CalculateTarget())
+ if (exe_scope && exe_scope->CalculateTarget())
var_value_sp =
----------------
Checking var_value_sp for null here is moot; it's already dereferenced in the preceding line. However, exe_scope does require a null-check here, and from the context, it appears that was the original intent thwarted by a typo.
- Remove dead code
- Fix incorrect null-reference check
Repository:
rG LLVM Github Monorepo
https://reviews.llvm.org/D131850
Files:
lldb/source/Core/FormatEntity.cpp
Index: lldb/source/Core/FormatEntity.cpp
===================================================================
--- lldb/source/Core/FormatEntity.cpp
+++ lldb/source/Core/FormatEntity.cpp
@@ -711,9 +711,6 @@
return false;
}
- if (valobj == nullptr)
- return false;
-
ValueObject::ExpressionPathAftermath what_next =
(do_deref_pointer ? ValueObject::eExpressionPathAftermathDereference
: ValueObject::eExpressionPathAftermathNothing);
@@ -1695,7 +1692,7 @@
llvm::StringRef var_representation;
const char *var_name = var_value_sp->GetName().GetCString();
if (var_value_sp->GetCompilerType().IsValid()) {
- if (var_value_sp && exe_scope->CalculateTarget())
+ if (exe_scope && exe_scope->CalculateTarget())
var_value_sp =
var_value_sp->GetQualifiedRepresentationIfAvailable(
exe_scope->CalculateTarget()
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D131850.452490.patch
Type: text/x-patch
Size: 990 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/lldb-commits/attachments/20220815/cd13ef67/attachment.bin>
More information about the lldb-commits
mailing list