diff --git a/lldb/source/Commands/CommandObjectCommands.cpp b/lldb/source/Commands/CommandObjectCommands.cpp --- a/lldb/source/Commands/CommandObjectCommands.cpp +++ b/lldb/source/Commands/CommandObjectCommands.cpp @@ -485,8 +485,9 @@ OptionArgVectorSP option_arg_vector_sp = OptionArgVectorSP(new OptionArgVector); - if (CommandObjectSP cmd_obj_sp = - m_interpreter.GetCommandSPExact(cmd_obj.GetCommandName())) { + const bool include_aliases = true; + if (CommandObjectSP cmd_obj_sp = m_interpreter.GetCommandSPExact( + cmd_obj.GetCommandName(), include_aliases)) { if (m_interpreter.AliasExists(alias_command) || m_interpreter.UserCommandExists(alias_command)) { result.AppendWarningWithFormat( diff --git a/lldb/test/API/commands/command/nested_alias/TestNestedAlias.py b/lldb/test/API/commands/command/nested_alias/TestNestedAlias.py --- a/lldb/test/API/commands/command/nested_alias/TestNestedAlias.py +++ b/lldb/test/API/commands/command/nested_alias/TestNestedAlias.py @@ -46,6 +46,8 @@ self.runCmd('command unalias rd', check=False) self.runCmd('command unalias fo', check=False) self.runCmd('command unalias foself', check=False) + self.runCmd('command unalias add_two', check=False) + self.runCmd('command unalias two', check=False) # Execute the cleanup function during test case tear down. self.addTearDownHook(cleanup) @@ -96,3 +98,8 @@ 'Show variables for the current', 'stack frame.'], matching=True) + + # Check that aliases can be created for raw input commands. + self.expect('command alias two expr -- 2') + self.expect('command alias add_two two +') + self.expect('add_two 3', patterns=[' = 5$'])