[Lldb-commits] [lldb] r287315 - Remove an out param from ValueObject::GetValueForExpressionPath.
Zachary Turner via lldb-commits
lldb-commits at lists.llvm.org
Thu Nov 17 21:45:41 PST 2016
Author: zturner
Date: Thu Nov 17 23:45:41 2016
New Revision: 287315
URL: http://llvm.org/viewvc/llvm-project?rev=287315&view=rev
Log:
Remove an out param from ValueObject::GetValueForExpressionPath.
This argument was only used in one place in the codebase, and
it was in a non-critical log statement and can be easily
substituted for an equally meaningful field instead. The
payoff of computing this value is not worth the added
complexity.
Modified:
lldb/trunk/include/lldb/Core/ValueObject.h
lldb/trunk/source/Core/FormatEntity.cpp
lldb/trunk/source/Core/ValueObject.cpp
lldb/trunk/source/Plugins/Language/CPlusPlus/LibCxx.cpp
lldb/trunk/source/Symbol/Variable.cpp
Modified: lldb/trunk/include/lldb/Core/ValueObject.h
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/include/lldb/Core/ValueObject.h?rev=287315&r1=287314&r2=287315&view=diff
==============================================================================
--- lldb/trunk/include/lldb/Core/ValueObject.h (original)
+++ lldb/trunk/include/lldb/Core/ValueObject.h Thu Nov 17 23:45:41 2016
@@ -394,7 +394,7 @@ public:
GetExpressionPathFormat = eGetExpressionPathFormatDereferencePointers);
lldb::ValueObjectSP GetValueForExpressionPath(
- const char *expression, const char **first_unparsed = nullptr,
+ const char *expression,
ExpressionPathScanEndReason *reason_to_stop = nullptr,
ExpressionPathEndResultType *final_value_type = nullptr,
const GetValueForExpressionPathOptions &options =
@@ -1002,8 +1002,7 @@ private:
virtual CompilerType MaybeCalculateCompleteType();
lldb::ValueObjectSP GetValueForExpressionPath_Impl(
- const char *expression_cstr, const char **first_unparsed,
- ExpressionPathScanEndReason *reason_to_stop,
+ const char *expression_cstr, ExpressionPathScanEndReason *reason_to_stop,
ExpressionPathEndResultType *final_value_type,
const GetValueForExpressionPathOptions &options,
ExpressionPathAftermath *final_task_on_target);
Modified: lldb/trunk/source/Core/FormatEntity.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Core/FormatEntity.cpp?rev=287315&r1=287314&r2=287315&view=diff
==============================================================================
--- lldb/trunk/source/Core/FormatEntity.cpp (original)
+++ lldb/trunk/source/Core/FormatEntity.cpp Thu Nov 17 23:45:41 2016
@@ -614,7 +614,6 @@ static ValueObjectSP ExpandIndexedExpres
if (log)
log->Printf("[ExpandIndexedExpression] name to deref: %s",
ptr_deref_buffer.c_str());
- const char *first_unparsed;
ValueObject::GetValueForExpressionPathOptions options;
ValueObject::ExpressionPathEndResultType final_value_type;
ValueObject::ExpressionPathScanEndReason reason_to_stop;
@@ -622,20 +621,18 @@ static ValueObjectSP ExpandIndexedExpres
(deref_pointer ? ValueObject::eExpressionPathAftermathDereference
: ValueObject::eExpressionPathAftermathNothing);
ValueObjectSP item = valobj->GetValueForExpressionPath(
- ptr_deref_buffer.c_str(), &first_unparsed, &reason_to_stop,
- &final_value_type, options, &what_next);
+ ptr_deref_buffer.c_str(), &reason_to_stop, &final_value_type, options,
+ &what_next);
if (!item) {
if (log)
- log->Printf("[ExpandIndexedExpression] ERROR: unparsed portion = %s, why "
- "stopping = %d,"
+ log->Printf("[ExpandIndexedExpression] ERROR: why stopping = %d,"
" final_value_type %d",
- first_unparsed, reason_to_stop, final_value_type);
+ reason_to_stop, final_value_type);
} else {
if (log)
- log->Printf("[ExpandIndexedExpression] ALL RIGHT: unparsed portion = %s, "
- "why stopping = %d,"
- " final_value_type %d",
- first_unparsed, reason_to_stop, final_value_type);
+ log->Printf("[ExpandIndexedExpression] ALL RIGHT: why stopping = %d, "
+ "final_value_type %d",
+ reason_to_stop, final_value_type);
}
return item;
}
@@ -724,7 +721,6 @@ static bool DumpValue(Stream &s, const S
int64_t index_lower = -1;
int64_t index_higher = -1;
bool is_array_range = false;
- const char *first_unparsed;
bool was_plain_var = false;
bool was_var_format = false;
bool was_var_indexed = false;
@@ -762,25 +758,23 @@ static bool DumpValue(Stream &s, const S
log->Printf("[Debugger::FormatPrompt] symbol to expand: %s",
expr_path.c_str());
- target = valobj
- ->GetValueForExpressionPath(expr_path.c_str(), &first_unparsed,
- &reason_to_stop, &final_value_type,
- options, &what_next)
- .get();
+ target =
+ valobj
+ ->GetValueForExpressionPath(expr_path.c_str(), &reason_to_stop,
+ &final_value_type, options, &what_next)
+ .get();
if (!target) {
if (log)
- log->Printf("[Debugger::FormatPrompt] ERROR: unparsed portion = %s, "
- "why stopping = %d,"
- " final_value_type %d",
- first_unparsed, reason_to_stop, final_value_type);
+ log->Printf("[Debugger::FormatPrompt] ERROR: expr = %s, "
+ "why stopping = %d, final_value_type %d",
+ expr_path.c_str(), reason_to_stop, final_value_type);
return false;
} else {
if (log)
- log->Printf("[Debugger::FormatPrompt] ALL RIGHT: unparsed portion = "
- "%s, why stopping = %d,"
- " final_value_type %d",
- first_unparsed, reason_to_stop, final_value_type);
+ log->Printf("[Debugger::FormatPrompt] ALL RIGHT: expr = %s, "
+ "why stopping = %d, final_value_type %d",
+ expr_path.c_str(), reason_to_stop, final_value_type);
target = target
->GetQualifiedRepresentationIfAvailable(
target->GetDynamicValueType(), true)
Modified: lldb/trunk/source/Core/ValueObject.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Core/ValueObject.cpp?rev=287315&r1=287314&r2=287315&view=diff
==============================================================================
--- lldb/trunk/source/Core/ValueObject.cpp (original)
+++ lldb/trunk/source/Core/ValueObject.cpp Thu Nov 17 23:45:41 2016
@@ -1922,7 +1922,7 @@ ValueObject::GetSyntheticExpressionPathC
// We haven't made a synthetic array member for expression yet, so
// lets make one and cache it for any future reference.
synthetic_child_sp = GetValueForExpressionPath(
- expression, NULL, NULL, NULL,
+ expression, nullptr, nullptr,
GetValueForExpressionPathOptions().SetSyntheticChildrenTraversal(
GetValueForExpressionPathOptions::SyntheticChildrenTraversal::
None));
@@ -2166,13 +2166,11 @@ void ValueObject::GetExpressionPath(Stre
}
ValueObjectSP ValueObject::GetValueForExpressionPath(
- const char *expression, const char **first_unparsed,
- ExpressionPathScanEndReason *reason_to_stop,
+ const char *expression, ExpressionPathScanEndReason *reason_to_stop,
ExpressionPathEndResultType *final_value_type,
const GetValueForExpressionPathOptions &options,
ExpressionPathAftermath *final_task_on_target) {
- const char *dummy_first_unparsed;
ExpressionPathScanEndReason dummy_reason_to_stop =
ValueObject::eExpressionPathScanEndReasonUnknown;
ExpressionPathEndResultType dummy_final_value_type =
@@ -2181,8 +2179,7 @@ ValueObjectSP ValueObject::GetValueForEx
ValueObject::eExpressionPathAftermathNothing;
ValueObjectSP ret_val = GetValueForExpressionPath_Impl(
- expression, first_unparsed ? first_unparsed : &dummy_first_unparsed,
- reason_to_stop ? reason_to_stop : &dummy_reason_to_stop,
+ expression, reason_to_stop ? reason_to_stop : &dummy_reason_to_stop,
final_value_type ? final_value_type : &dummy_final_value_type, options,
final_task_on_target ? final_task_on_target
: &dummy_final_task_on_target);
@@ -2237,8 +2234,7 @@ ValueObjectSP ValueObject::GetValueForEx
}
ValueObjectSP ValueObject::GetValueForExpressionPath_Impl(
- const char *expression_cstr, const char **first_unparsed,
- ExpressionPathScanEndReason *reason_to_stop,
+ const char *expression_cstr, ExpressionPathScanEndReason *reason_to_stop,
ExpressionPathEndResultType *final_result,
const GetValueForExpressionPathOptions &options,
ExpressionPathAftermath *what_next) {
@@ -2247,13 +2243,8 @@ ValueObjectSP ValueObject::GetValueForEx
if (!root.get())
return ValueObjectSP();
- *first_unparsed = expression_cstr;
-
while (true) {
- const char *expression_cstr =
- *first_unparsed; // hide the top level expression_cstr
-
CompilerType root_compiler_type = root->GetCompilerType();
CompilerType pointee_compiler_type;
Flags pointee_compiler_type_info;
@@ -2276,7 +2267,6 @@ ValueObjectSP ValueObject::GetValueForEx
// non-pointer and I
// must catch the error
{
- *first_unparsed = expression_cstr;
*reason_to_stop =
ValueObject::eExpressionPathScanEndReasonArrowInsteadOfDot;
*final_result = ValueObject::eExpressionPathEndResultTypeInvalid;
@@ -2287,14 +2277,12 @@ ValueObjectSP ValueObject::GetValueForEx
// when this is forbidden
root_compiler_type_info.Test(eTypeIsPointer) &&
options.m_no_fragile_ivar) {
- *first_unparsed = expression_cstr;
*reason_to_stop =
ValueObject::eExpressionPathScanEndReasonFragileIVarNotAllowed;
*final_result = ValueObject::eExpressionPathEndResultTypeInvalid;
return ValueObjectSP();
}
if (expression_cstr[1] != '>') {
- *first_unparsed = expression_cstr;
*reason_to_stop =
ValueObject::eExpressionPathScanEndReasonUnexpectedSymbol;
*final_result = ValueObject::eExpressionPathEndResultTypeInvalid;
@@ -2311,7 +2299,6 @@ ValueObjectSP ValueObject::GetValueForEx
// and I must catch the
// error
{
- *first_unparsed = expression_cstr;
*reason_to_stop =
ValueObject::eExpressionPathScanEndReasonDotInsteadOfArrow;
*final_result = ValueObject::eExpressionPathEndResultTypeInvalid;
@@ -2328,7 +2315,6 @@ ValueObjectSP ValueObject::GetValueForEx
if (child_valobj_sp.get()) // we know we are done, so just return
{
- *first_unparsed = "";
*reason_to_stop =
ValueObject::eExpressionPathScanEndReasonEndOfString;
*final_result = ValueObject::eExpressionPathEndResultTypePlain;
@@ -2378,13 +2364,11 @@ ValueObjectSP ValueObject::GetValueForEx
// so we hit the "else" branch, and return an error
if (child_valobj_sp.get()) // if it worked, just return
{
- *first_unparsed = "";
*reason_to_stop =
ValueObject::eExpressionPathScanEndReasonEndOfString;
*final_result = ValueObject::eExpressionPathEndResultTypePlain;
return child_valobj_sp;
} else {
- *first_unparsed = expression_cstr;
*reason_to_stop =
ValueObject::eExpressionPathScanEndReasonNoSuchChild;
*final_result = ValueObject::eExpressionPathEndResultTypeInvalid;
@@ -2399,7 +2383,6 @@ ValueObjectSP ValueObject::GetValueForEx
if (child_valobj_sp.get()) // store the new root and move on
{
root = child_valobj_sp;
- *first_unparsed = next_separator;
*final_result = ValueObject::eExpressionPathEndResultTypePlain;
continue;
} else {
@@ -2448,11 +2431,9 @@ ValueObjectSP ValueObject::GetValueForEx
if (child_valobj_sp.get()) // if it worked, move on
{
root = child_valobj_sp;
- *first_unparsed = next_separator;
*final_result = ValueObject::eExpressionPathEndResultTypePlain;
continue;
} else {
- *first_unparsed = expression_cstr;
*reason_to_stop =
ValueObject::eExpressionPathScanEndReasonNoSuchChild;
*final_result = ValueObject::eExpressionPathEndResultTypeInvalid;
@@ -2474,7 +2455,6 @@ ValueObjectSP ValueObject::GetValueForEx
GetValueForExpressionPathOptions::SyntheticChildrenTraversal::
None) // ...only chance left is synthetic
{
- *first_unparsed = expression_cstr;
*reason_to_stop =
ValueObject::eExpressionPathScanEndReasonRangeOperatorInvalid;
*final_result = ValueObject::eExpressionPathEndResultTypeInvalid;
@@ -2484,7 +2464,6 @@ ValueObjectSP ValueObject::GetValueForEx
// check that we can
// expand bitfields
{
- *first_unparsed = expression_cstr;
*reason_to_stop =
ValueObject::eExpressionPathScanEndReasonRangeOperatorNotAllowed;
*final_result = ValueObject::eExpressionPathEndResultTypeInvalid;
@@ -2495,7 +2474,6 @@ ValueObjectSP ValueObject::GetValueForEx
']') // if this is an unbounded range it only works for arrays
{
if (!root_compiler_type_info.Test(eTypeIsArray)) {
- *first_unparsed = expression_cstr;
*reason_to_stop =
ValueObject::eExpressionPathScanEndReasonEmptyRangeNotAllowed;
*final_result = ValueObject::eExpressionPathEndResultTypeInvalid;
@@ -2503,7 +2481,6 @@ ValueObjectSP ValueObject::GetValueForEx
} else // even if something follows, we cannot expand unbounded ranges,
// just let the caller do it
{
- *first_unparsed = expression_cstr + 2;
*reason_to_stop =
ValueObject::eExpressionPathScanEndReasonArrayRangeOperatorMet;
*final_result =
@@ -2515,7 +2492,6 @@ ValueObjectSP ValueObject::GetValueForEx
const char *close_bracket_position = ::strchr(expression_cstr + 1, ']');
if (!close_bracket_position) // if there is no ], this is a syntax error
{
- *first_unparsed = expression_cstr;
*reason_to_stop =
ValueObject::eExpressionPathScanEndReasonUnexpectedSymbol;
*final_result = ValueObject::eExpressionPathEndResultTypeInvalid;
@@ -2531,7 +2507,6 @@ ValueObjectSP ValueObject::GetValueForEx
if (end != close_bracket_position) // if something weird is in
// our way return an error
{
- *first_unparsed = expression_cstr;
*reason_to_stop =
ValueObject::eExpressionPathScanEndReasonUnexpectedSymbol;
*final_result = ValueObject::eExpressionPathEndResultTypeInvalid;
@@ -2549,11 +2524,9 @@ ValueObjectSP ValueObject::GetValueForEx
root->GetSyntheticValue()->GetChildAtIndex(index, true);
if (child_valobj_sp) {
root = child_valobj_sp;
- *first_unparsed = end + 1; // skip ]
*final_result = ValueObject::eExpressionPathEndResultTypePlain;
continue;
} else {
- *first_unparsed = expression_cstr;
*reason_to_stop =
ValueObject::eExpressionPathScanEndReasonNoSuchChild;
*final_result = ValueObject::eExpressionPathEndResultTypeInvalid;
@@ -2575,7 +2548,6 @@ ValueObjectSP ValueObject::GetValueForEx
Error error;
root = root->Dereference(error);
if (error.Fail() || !root.get()) {
- *first_unparsed = expression_cstr;
*reason_to_stop =
ValueObject::eExpressionPathScanEndReasonDereferencingFailed;
*final_result = ValueObject::eExpressionPathEndResultTypeInvalid;
@@ -2599,13 +2571,11 @@ ValueObjectSP ValueObject::GetValueForEx
} else
root = root->GetSyntheticArrayMember(index, true);
if (!root.get()) {
- *first_unparsed = expression_cstr;
*reason_to_stop =
ValueObject::eExpressionPathScanEndReasonNoSuchChild;
*final_result = ValueObject::eExpressionPathEndResultTypeInvalid;
return ValueObjectSP();
} else {
- *first_unparsed = end + 1; // skip ]
*final_result = ValueObject::eExpressionPathEndResultTypePlain;
continue;
}
@@ -2613,7 +2583,6 @@ ValueObjectSP ValueObject::GetValueForEx
} else if (root_compiler_type_info.Test(eTypeIsScalar)) {
root = root->GetSyntheticBitFieldChild(index, index, true);
if (!root.get()) {
- *first_unparsed = expression_cstr;
*reason_to_stop =
ValueObject::eExpressionPathScanEndReasonNoSuchChild;
*final_result = ValueObject::eExpressionPathEndResultTypeInvalid;
@@ -2621,7 +2590,6 @@ ValueObjectSP ValueObject::GetValueForEx
} else // we do not know how to expand members of bitfields, so we
// just return and let the caller do any further processing
{
- *first_unparsed = end + 1; // skip ]
*reason_to_stop = ValueObject::
eExpressionPathScanEndReasonBitfieldRangeOperatorMet;
*final_result = ValueObject::eExpressionPathEndResultTypeBitfield;
@@ -2630,13 +2598,11 @@ ValueObjectSP ValueObject::GetValueForEx
} else if (root_compiler_type_info.Test(eTypeIsVector)) {
root = root->GetChildAtIndex(index, true);
if (!root.get()) {
- *first_unparsed = expression_cstr;
*reason_to_stop =
ValueObject::eExpressionPathScanEndReasonNoSuchChild;
*final_result = ValueObject::eExpressionPathEndResultTypeInvalid;
return ValueObjectSP();
} else {
- *first_unparsed = end + 1; // skip ]
*final_result = ValueObject::eExpressionPathEndResultTypePlain;
continue;
}
@@ -2649,7 +2615,6 @@ ValueObjectSP ValueObject::GetValueForEx
if (root->HasSyntheticValue())
root = root->GetSyntheticValue();
else if (!root->IsSynthetic()) {
- *first_unparsed = expression_cstr;
*reason_to_stop =
ValueObject::eExpressionPathScanEndReasonSyntheticValueMissing;
*final_result = ValueObject::eExpressionPathEndResultTypeInvalid;
@@ -2659,7 +2624,6 @@ ValueObjectSP ValueObject::GetValueForEx
// to go
if (!root.get()) {
- *first_unparsed = expression_cstr;
*reason_to_stop =
ValueObject::eExpressionPathScanEndReasonSyntheticValueMissing;
*final_result = ValueObject::eExpressionPathEndResultTypeInvalid;
@@ -2667,18 +2631,15 @@ ValueObjectSP ValueObject::GetValueForEx
}
root = root->GetChildAtIndex(index, true);
if (!root.get()) {
- *first_unparsed = expression_cstr;
*reason_to_stop =
ValueObject::eExpressionPathScanEndReasonNoSuchChild;
*final_result = ValueObject::eExpressionPathEndResultTypeInvalid;
return ValueObjectSP();
} else {
- *first_unparsed = end + 1; // skip ]
*final_result = ValueObject::eExpressionPathEndResultTypePlain;
continue;
}
} else {
- *first_unparsed = expression_cstr;
*reason_to_stop =
ValueObject::eExpressionPathScanEndReasonNoSuchChild;
*final_result = ValueObject::eExpressionPathEndResultTypeInvalid;
@@ -2691,7 +2652,6 @@ ValueObjectSP ValueObject::GetValueForEx
if (end != separator_position) // if something weird is in our
// way return an error
{
- *first_unparsed = expression_cstr;
*reason_to_stop =
ValueObject::eExpressionPathScanEndReasonUnexpectedSymbol;
*final_result = ValueObject::eExpressionPathEndResultTypeInvalid;
@@ -2701,7 +2661,6 @@ ValueObjectSP ValueObject::GetValueForEx
if (end != close_bracket_position) // if something weird is in
// our way return an error
{
- *first_unparsed = expression_cstr;
*reason_to_stop =
ValueObject::eExpressionPathScanEndReasonUnexpectedSymbol;
*final_result = ValueObject::eExpressionPathEndResultTypeInvalid;
@@ -2716,13 +2675,11 @@ ValueObjectSP ValueObject::GetValueForEx
root =
root->GetSyntheticBitFieldChild(index_lower, index_higher, true);
if (!root.get()) {
- *first_unparsed = expression_cstr;
*reason_to_stop =
ValueObject::eExpressionPathScanEndReasonNoSuchChild;
*final_result = ValueObject::eExpressionPathEndResultTypeInvalid;
return ValueObjectSP();
} else {
- *first_unparsed = end + 1; // skip ]
*reason_to_stop = ValueObject::
eExpressionPathScanEndReasonBitfieldRangeOperatorMet;
*final_result = ValueObject::eExpressionPathEndResultTypeBitfield;
@@ -2739,7 +2696,6 @@ ValueObjectSP ValueObject::GetValueForEx
Error error;
root = root->Dereference(error);
if (error.Fail() || !root.get()) {
- *first_unparsed = expression_cstr;
*reason_to_stop =
ValueObject::eExpressionPathScanEndReasonDereferencingFailed;
*final_result = ValueObject::eExpressionPathEndResultTypeInvalid;
@@ -2749,7 +2705,6 @@ ValueObjectSP ValueObject::GetValueForEx
continue;
}
} else {
- *first_unparsed = expression_cstr;
*reason_to_stop =
ValueObject::eExpressionPathScanEndReasonArrayRangeOperatorMet;
*final_result = ValueObject::eExpressionPathEndResultTypeBoundedRange;
@@ -2760,7 +2715,6 @@ ValueObjectSP ValueObject::GetValueForEx
}
default: // some non-separator is in the way
{
- *first_unparsed = expression_cstr;
*reason_to_stop =
ValueObject::eExpressionPathScanEndReasonUnexpectedSymbol;
*final_result = ValueObject::eExpressionPathEndResultTypeInvalid;
Modified: lldb/trunk/source/Plugins/Language/CPlusPlus/LibCxx.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/Language/CPlusPlus/LibCxx.cpp?rev=287315&r1=287314&r2=287315&view=diff
==============================================================================
--- lldb/trunk/source/Plugins/Language/CPlusPlus/LibCxx.cpp (original)
+++ lldb/trunk/source/Plugins/Language/CPlusPlus/LibCxx.cpp Thu Nov 17 23:45:41 2016
@@ -280,7 +280,7 @@ bool lldb_private::formatters::LibCxxMap
// die and free their memory
m_pair_ptr = valobj_sp
->GetValueForExpressionPath(
- ".__i_.__ptr_->__value_", nullptr, nullptr, nullptr,
+ ".__i_.__ptr_->__value_", nullptr, nullptr,
ValueObject::GetValueForExpressionPathOptions()
.DontCheckDotVsArrowSyntax()
.SetSyntheticChildrenTraversal(
@@ -288,16 +288,18 @@ bool lldb_private::formatters::LibCxxMap
SyntheticChildrenTraversal::None),
nullptr)
.get();
-
+
if (!m_pair_ptr) {
- m_pair_ptr = valobj_sp->GetValueForExpressionPath(".__i_.__ptr_", nullptr, nullptr, nullptr,
- ValueObject::GetValueForExpressionPathOptions()
- .DontCheckDotVsArrowSyntax()
- .SetSyntheticChildrenTraversal(
- ValueObject::GetValueForExpressionPathOptions::
- SyntheticChildrenTraversal::None),
- nullptr)
- .get();
+ m_pair_ptr = valobj_sp
+ ->GetValueForExpressionPath(
+ ".__i_.__ptr_", nullptr, nullptr,
+ ValueObject::GetValueForExpressionPathOptions()
+ .DontCheckDotVsArrowSyntax()
+ .SetSyntheticChildrenTraversal(
+ ValueObject::GetValueForExpressionPathOptions::
+ SyntheticChildrenTraversal::None),
+ nullptr)
+ .get();
if (m_pair_ptr) {
auto __i_(valobj_sp->GetChildMemberWithName(g___i_, true));
lldb::TemplateArgumentKind kind;
Modified: lldb/trunk/source/Symbol/Variable.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Symbol/Variable.cpp?rev=287315&r1=287314&r2=287315&view=diff
==============================================================================
--- lldb/trunk/source/Symbol/Variable.cpp (original)
+++ lldb/trunk/source/Symbol/Variable.cpp Thu Nov 17 23:45:41 2016
@@ -404,16 +404,8 @@ Error Variable::GetValuesForVariableExpr
const char *variable_sub_expr_path =
variable_expr_path + variable_name.size();
if (*variable_sub_expr_path) {
- const char *first_unparsed = nullptr;
- ValueObject::ExpressionPathScanEndReason reason_to_stop;
- ValueObject::ExpressionPathEndResultType final_value_type;
- ValueObject::GetValueForExpressionPathOptions options;
- ValueObject::ExpressionPathAftermath final_task_on_target;
-
valobj_sp = variable_valobj_sp->GetValueForExpressionPath(
- variable_sub_expr_path, &first_unparsed,
- &reason_to_stop, &final_value_type, options,
- &final_task_on_target);
+ variable_sub_expr_path);
if (!valobj_sp) {
error.SetErrorStringWithFormat(
"invalid expression path '%s' for variable '%s'",
More information about the lldb-commits
mailing list