diff --git a/lldb/source/Commands/CommandObjectExpression.cpp b/lldb/source/Commands/CommandObjectExpression.cpp index ee053608e7c5..a93d4e65fa08 100644 --- a/lldb/source/Commands/CommandObjectExpression.cpp +++ b/lldb/source/Commands/CommandObjectExpression.cpp @@ -164,7 +164,7 @@ CommandObjectExpression::CommandOptions::GetDefinitions () CommandObjectExpression::CommandObjectExpression (CommandInterpreter &interpreter) : CommandObjectRaw (interpreter, "expression", - "Evaluate a C/ObjC/C++ expression in the current program context, using variables currently in scope.", + "Evaluate a C/ObjC/C++ expression in the current program context, using user defined variables and variables currently in scope.", NULL, eFlagProcessMustBePaused), m_option_group (interpreter), @@ -180,10 +180,18 @@ CommandObjectExpression::CommandObjectExpression (CommandInterpreter &interprete currently .25 seconds. If it doesn't return in that time, the evaluation will be interrupted\n\ and resumed with all threads running. You can use the -a option to disable retrying on all\n\ threads. You can use the -t option to set a shorter timeout.\n\ +\n\ +User defined variables:\n\ + You can define your own variables for convenience or to be used in subsequent expressions.\n\ + You define them the same way you would define variables in C. If the first character of \n\ + your user defined variable is a $, then the variable's value will be available in future\n\ + expressions, otherwise it will just be available in the current expression.\n\ +\n\ Examples: \n\ \n\ expr my_struct->a = my_array[3] \n\ expr -f bin -- (index * 8) + 5 \n\ + expr unsigned int $foo = 5\n\ expr char c[] = \"foo\"; c[0]\n"); CommandArgumentEntry arg;