aboutsummaryrefslogtreecommitdiff
path: root/lldb/source/Commands/CommandObjectExpression.cpp
diff options
context:
space:
mode:
authorPete Lawrence <34425917+PortalPete@users.noreply.github.com>2023-10-10 10:59:58 -1000
committerGitHub <noreply@github.com>2023-10-10 13:59:58 -0700
commit606f89ab7d537ca068fb1be9fd89d96a30de38f8 (patch)
tree2a1e2dc0ac5f15694d842a979f7d26a3f334c158 /lldb/source/Commands/CommandObjectExpression.cpp
parentbfa7d10b9f1531f6bfca9d08c397347aef4a65b6 (diff)
downloadllvm-606f89ab7d537ca068fb1be9fd89d96a30de38f8.zip
llvm-606f89ab7d537ca068fb1be9fd89d96a30de38f8.tar.gz
llvm-606f89ab7d537ca068fb1be9fd89d96a30de38f8.tar.bz2
[lldb] Fix `po` alias by printing fix-its to the console. (#68452)
The `po` alias now matches the behavior of the `expression` command when the it can apply a Fix-It to an expression. Modifications - Add has `m_fixed_expression` to the `CommandObjectDWIMPrint` class a `protected` member that stores the post Fix-It expression, just like the `CommandObjectExpression` class. - Converted messages to present tense. - Add test cases that confirms a Fix-It for a C++ expression for both `po` and `expressions` rdar://115317419 Co-authored-by: Pete Lawrence <plawrence@apple.com>
Diffstat (limited to 'lldb/source/Commands/CommandObjectExpression.cpp')
-rw-r--r--lldb/source/Commands/CommandObjectExpression.cpp8
1 files changed, 4 insertions, 4 deletions
diff --git a/lldb/source/Commands/CommandObjectExpression.cpp b/lldb/source/Commands/CommandObjectExpression.cpp
index e7e6e38..2834be6 100644
--- a/lldb/source/Commands/CommandObjectExpression.cpp
+++ b/lldb/source/Commands/CommandObjectExpression.cpp
@@ -439,11 +439,11 @@ bool CommandObjectExpression::EvaluateExpression(llvm::StringRef expr,
ExpressionResults success = target.EvaluateExpression(
expr, frame, result_valobj_sp, eval_options, &m_fixed_expression);
- // We only tell you about the FixIt if we applied it. The compiler errors
- // will suggest the FixIt if it parsed.
+ // Only mention Fix-Its if the expression evaluator applied them.
+ // Compiler errors refer to the final expression after applying Fix-It(s).
if (!m_fixed_expression.empty() && target.GetEnableNotifyAboutFixIts()) {
- error_stream.Printf(" Fix-it applied, fixed expression was: \n %s\n",
- m_fixed_expression.c_str());
+ error_stream << " Evaluated this expression after applying Fix-It(s):\n";
+ error_stream << " " << m_fixed_expression << "\n";
}
if (result_valobj_sp) {