Fix the problem that 'help breakpoint set' is printing a lot of redundant lines.

Correctly specify the LLDB_OPT_SET's that the 'shlib' command option belongs to by using a newly added macro like this:

    #define LLDB_OPT_NOT_10 ( LLDB_OPT_SET_FROM(1, 10) & ~LLDB_OPT_SET_10 )

rdar://problem/11393864

llvm-svn: 156337
This commit is contained in:
Johnny Chen 2012-05-07 23:04:49 +00:00
parent ddb149069e
commit 5ec8fcbf0c
3 changed files with 9 additions and 2 deletions

View File

@ -103,6 +103,7 @@
#define LLDB_OPT_SET_8 (1U << 7)
#define LLDB_OPT_SET_9 (1U << 8)
#define LLDB_OPT_SET_10 (1U << 9)
#define LLDB_OPT_SET_FROM(A, B) (((1U << (B)) - 1) ^ (1U << ((A)-1) - 1))
#if defined(__cplusplus)

View File

@ -74,8 +74,8 @@ CommandObjectBreakpointSet::CommandOptions::~CommandOptions ()
{
}
#define LLDB_OPT_FILE ( LLDB_OPT_SET_1 | LLDB_OPT_SET_3 | LLDB_OPT_SET_4 | LLDB_OPT_SET_5 | LLDB_OPT_SET_6 | LLDB_OPT_SET_7 | LLDB_OPT_SET_8 | LLDB_OPT_SET_9 )
#define LLDB_OPT_NOT_10 ( LLDB_OPT_SET_ALL & ~LLDB_OPT_SET_10 )
#define LLDB_OPT_FILE ( LLDB_OPT_SET_FROM(1, 9) & ~LLDB_OPT_SET_2 )
#define LLDB_OPT_NOT_10 ( LLDB_OPT_SET_FROM(1, 10) & ~LLDB_OPT_SET_10 )
OptionDefinition
CommandObjectBreakpointSet::CommandOptions::g_option_table[] =

View File

@ -86,6 +86,12 @@ class HelpCommandTestCase(TestBase):
self.expect("help",
startstr = 'The following is a list of built-in, permanent debugger commands')
def test_help_breakpoint_set(self):
"""Test that 'help breakpoint set' does not print out redundant lines of:
'breakpoint set [-s <shlib-name>] ...'."""
self.expect("help breakpoint set", matching=False,
substrs = ['breakpoint set [-s <shlib-name>]'])
def test_help_image_dump_symtab_should_not_crash(self):
"""Command 'help image dump symtab' should not crash lldb."""
# 'image' is an alias for 'target modules'.