aboutsummaryrefslogtreecommitdiff
path: root/lldb/source/Commands/CommandObjectWatchpoint.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'lldb/source/Commands/CommandObjectWatchpoint.cpp')
-rw-r--r--lldb/source/Commands/CommandObjectWatchpoint.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/lldb/source/Commands/CommandObjectWatchpoint.cpp b/lldb/source/Commands/CommandObjectWatchpoint.cpp
index 8b8c196..14180f9 100644
--- a/lldb/source/Commands/CommandObjectWatchpoint.cpp
+++ b/lldb/source/Commands/CommandObjectWatchpoint.cpp
@@ -835,8 +835,7 @@ corresponding to the byte size of the data type.");
m_arguments.push_back(arg);
// Absorb the '-w' and '-s' options into our option group.
- m_option_group.Append(&m_option_watchpoint, LLDB_OPT_SET_ALL,
- LLDB_OPT_SET_1);
+ m_option_group.Append(&m_option_watchpoint, LLDB_OPT_SET_1, LLDB_OPT_SET_1);
m_option_group.Finalize();
}
@@ -990,6 +989,7 @@ public:
: CommandObjectRaw(
interpreter, "watchpoint set expression",
"Set a watchpoint on an address by supplying an expression. "
+ "Use the '-l' option to specify the language of the expression. "
"Use the '-w' option to specify the type of watchpoint and "
"the '-s' option to specify the byte size to watch for. "
"If no '-w' option is specified, it defaults to write. "
@@ -1083,6 +1083,8 @@ protected:
options.SetKeepInMemory(false);
options.SetTryAllThreads(true);
options.SetTimeout(std::nullopt);
+ if (m_option_watchpoint.language_type != eLanguageTypeUnknown)
+ options.SetLanguage(m_option_watchpoint.language_type);
ExpressionResults expr_result =
target->EvaluateExpression(expr, frame, valobj_sp, options);