2006-11-09 Vladimir Prus <vladimir@codesourcery.com>

* gdb.base/help.exp (help_test_raw): New.
        (test_class_help): New.
        (test_prefix_command_help): New.
        Adjust testcases.
This commit is contained in:
Vladimir Prus 2006-11-09 19:22:11 +00:00
parent b5bf31df5b
commit a38cd18094
2 changed files with 196 additions and 36 deletions

View File

@ -1,3 +1,10 @@
2006-11-09 Vladimir Prus <vladimir@codesourcery.com>
* gdb.base/help.exp (help_test_raw): New.
(test_class_help): New.
(test_prefix_command_help): New.
Adjust testcases.
2006-11-09 Joel Brobecker <brobecker@adacore.com> 2006-11-09 Joel Brobecker <brobecker@adacore.com>
* sparc-tdep.c (sparc_fetch_instruction): Read instruction * sparc-tdep.c (sparc_fetch_instruction): Read instruction

View File

@ -30,6 +30,65 @@ set bug_id 0
gdb_start gdb_start
# Test the output of GDB_COMMAND matches the pattern obtained
# by concatenating all elements of EXPECTED_LINES. This makes
# it possible to split otherwise very long string into pieces.
# If third argument is not empty, it's used as the name of the
# test to be printed on pass/fail.
proc help_test_raw { gdb_command expected_lines args } {
set message $gdb_command
if [llength $args]>0 then {
set message [lindex $args 0]
}
set expected_output [join $expected_lines ""]
gdb_test "${gdb_command}" "${expected_output}" $message
}
# Test the output of "help COMMNAD_CLASS". EXPECTED_INITIAL_LINES
# are regular expressions that should match the beginning of output,
# before the list of commands in that class. The presence of
# command list and standard epilogue will be tested automatically.
proc test_class_help { command_class expected_initial_lines } {
set l_stock_body {
"List of commands\:.*\[\r\n\]+"
"Type \"help\" followed by command name for full documentation\.\[\r\n\]+"
"Type \"apropos word\" to search for commands related to \"word\"\.[\r\n\]+"
"Command name abbreviations are allowed if unambiguous\."
}
set l_entire_body [concat $expected_initial_lines $l_stock_body]
help_test_raw "help ${command_class}" $l_entire_body
}
# COMMAND_LIST should have either one element -- command to test, or
# two elements -- abbreviated command to test, and full command the first
# element is abbreviation of.
# The command must be a prefix command. EXPECTED_INITIAL_LINES
# are regular expressions that should match the beginning of output,
# before the list of subcommands. The presence of
# subcommand list and standard epilogue will be tested automatically.
proc test_prefix_command_help { command_list expected_initial_lines args } {
set command [lindex $command_list 0]
if {[llength $command_list]>1} {
set full_command [lindex $command_list 1]
} else {
set full_command $command
}
# Use 'list' and not just {} because we want variables to
# be expanded in this list.
set l_stock_body [list\
"List of $full_command subcommands\:.*\[\r\n\]+"\
"Type \"help $full_command\" followed by $full_command subcommand name for full documentation\.\[\r\n\]+"\
"Type \"apropos word\" to search for commands related to \"word\"\.\[\r\n\]+"\
"Command name abbreviations are allowed if unambiguous\."]
set l_entire_body [concat $expected_initial_lines $l_stock_body]
if {[llength $args]>0} {
help_test_raw "help ${command}" $l_entire_body [lindex $args 0]
} else {
help_test_raw "help ${command}" $l_entire_body
}
}
# force the height of the debugger to be pretty large so no pagers getused # force the height of the debugger to be pretty large so no pagers getused
gdb_test "set height 400" "" "test set height" gdb_test "set height 400" "" "test set height"
@ -39,7 +98,8 @@ gdb_test "help add-symbol-file" "Load symbols from FILE, assuming FILE has been
# test help advance # test help advance
gdb_test "help advance" "Continue the program up to the given location \\(same form as args for break command\\)\.\[\r\n]+Execution will also stop upon exit from the current stack frame\." "help advance" gdb_test "help advance" "Continue the program up to the given location \\(same form as args for break command\\)\.\[\r\n]+Execution will also stop upon exit from the current stack frame\." "help advance"
# test help aliases # test help aliases
gdb_test "help aliases" "Aliases of other commands\.\[\r\n\]+List of commands\:.*\[\r\n\]+Type \"help\" followed by command name for full documentation\.\[\r\n\]+Command name abbreviations are allowed if unambiguous\." "help aliases" test_class_help "aliases" {"Aliases of other commands\.\[\r\n\]+"}
# test help append # test help append
gdb_test "help append" "Append target code/data to a local file\.\[\r\n\]+List of append subcommands:.*" gdb_test "help append" "Append target code/data to a local file\.\[\r\n\]+List of append subcommands:.*"
gdb_test "help append binary" "Append target code/data to a raw binary file\.\[\r\n\]+List of append binary subcommands:.*" gdb_test "help append binary" "Append target code/data to a raw binary file\.\[\r\n\]+List of append binary subcommands:.*"
@ -60,7 +120,7 @@ gdb_test "help brea" "Set breakpoint at specified line or function\.\[\r\n\]+bre
# test help breakpoint "break" abbreviation # test help breakpoint "break" abbreviation
gdb_test "help break" "Set breakpoint at specified line or function\.\[\r\n\]+break \\\[LOCATION\] \\\[thread THREADNUM\] \\\[if CONDITION\]\[\r\n\]+LOCATION may be a line number, function name, or \"\[*\]\" and an address\.\[\r\n\]+If a line number is specified, break at start of code for that line\.\[\r\n\]+If a function is specified, break at start of code for that function\.\[\r\n\]+If an address is specified, break at that exact address\.\[\r\n\]+With no LOCATION, uses current execution address of selected stack frame\.\[\r\n\]+This is useful for breaking on return to a stack frame\.\[\r\n\]+THREADNUM is the number from \"info threads\"\.\[\r\n\]+CONDITION is a boolean expression\.\[\r\n\]+Multiple breakpoints at one place are permitted, and useful if conditional\.\[\r\n\]+Do \"help breakpoints\" for info on other commands dealing with breakpoints\." "help breakpoint \"break\" abbreviation" gdb_test "help break" "Set breakpoint at specified line or function\.\[\r\n\]+break \\\[LOCATION\] \\\[thread THREADNUM\] \\\[if CONDITION\]\[\r\n\]+LOCATION may be a line number, function name, or \"\[*\]\" and an address\.\[\r\n\]+If a line number is specified, break at start of code for that line\.\[\r\n\]+If a function is specified, break at start of code for that function\.\[\r\n\]+If an address is specified, break at that exact address\.\[\r\n\]+With no LOCATION, uses current execution address of selected stack frame\.\[\r\n\]+This is useful for breaking on return to a stack frame\.\[\r\n\]+THREADNUM is the number from \"info threads\"\.\[\r\n\]+CONDITION is a boolean expression\.\[\r\n\]+Multiple breakpoints at one place are permitted, and useful if conditional\.\[\r\n\]+Do \"help breakpoints\" for info on other commands dealing with breakpoints\." "help breakpoint \"break\" abbreviation"
# test help breakpoints # test help breakpoints
gdb_test "help breakpoints" "Making program stop at certain points\.\[\r\n\]+List of commands:\[\r\n\]+awatch -- Set a watchpoint for an expression\[\r\n\]+break -- Set breakpoint at specified line or function\[\r\n\]+catch -- Set catchpoints to catch events\[\r\n\]+clear -- Clear breakpoint at specified line or function\[\r\n\]+commands -- Set commands to be executed when a breakpoint is hit\[\r\n\]+condition -- Specify breakpoint number N to break only if COND is true\[\r\n\]+delete -- Delete some breakpoints or auto-display expressions\[\r\n\]+disable -- Disable some breakpoints\[\r\n\]+enable -- Enable some breakpoints\[\r\n\]+hbreak -- Set a hardware assisted breakpoint\[\r\n\]+ignore -- Set ignore-count of breakpoint number N to COUNT\[\r\n\]+rbreak -- Set a breakpoint for all functions matching REGEXP\[\r\n\]+rwatch -- Set a read watchpoint for an expression\[\r\n\]+tbreak -- Set a temporary breakpoint\[\r\n\]+tcatch -- Set temporary catchpoints to catch events\[\r\n\]+thbreak -- Set a temporary hardware assisted breakpoint\[\r\n\]+watch -- Set a watchpoint for an expression\[\r\n\]+Type \"help\" followed by command name for full documentation\.\[\r\n\]+Command name abbreviations are allowed if unambiguous\." "help breakpoints" test_class_help "breakpoints" {"Making program stop at certain points\.\[\r\n\]+"}
# test help backtrace "bt" abbreviation # test help backtrace "bt" abbreviation
gdb_test "help bt" "Print backtrace of all stack frames, or innermost COUNT frames\.\[\r\n\]+With a negative argument, print outermost -COUNT frames\.\[\r\n\]+Use of the 'full' qualifier also prints the values of the local variables\." "help backtrace \"bt\" abbreviation" gdb_test "help bt" "Print backtrace of all stack frames, or innermost COUNT frames\.\[\r\n\]+With a negative argument, print outermost -COUNT frames\.\[\r\n\]+Use of the 'full' qualifier also prints the values of the local variables\." "help backtrace \"bt\" abbreviation"
# test help backtrace # test help backtrace
@ -84,11 +144,18 @@ gdb_test "help condition" "Specify breakpoint number N to break only if COND is
# test help core-file # test help core-file
gdb_test "help core-file" "Use FILE as core dump for examining memory and registers\.\[\r\n\]+No arg means have no core file\. This command has been superseded by the\[\r\n\]+`target core' and `detach' commands\." "help core-file" gdb_test "help core-file" "Use FILE as core dump for examining memory and registers\.\[\r\n\]+No arg means have no core file\. This command has been superseded by the\[\r\n\]+`target core' and `detach' commands\." "help core-file"
# test help delete "d" abbreviation # test help delete "d" abbreviation
gdb_test "help d" "Delete some breakpoints or auto-display expressions\.\[\r\n\]+Arguments are breakpoint numbers with spaces in between\.\[\r\n\]+To delete all breakpoints, give no argument\.\[\r\n\]+Also a prefix command for deletion of other GDB objects\.\[\r\n\]+The \"unset\" command is also an alias for \"delete\"\.\[\r\n\]+List of delete subcommands:\[\r\n\]+delete breakpoints -- Delete some breakpoints or auto-display expressions\[\r\n\]+(delete checkpoint -- Delete a fork/checkpoint \\(experimental\\)\[\r\n\]+)?delete display -- Cancel some expressions to be displayed when program stops\[\r\n\]+delete mem -- Delete memory region\[\r\n\]+delete tracepoints -- Delete specified tracepoints\[\r\n\]+Type \"help delete\" followed by delete subcommand name for full documentation\.\[\r\n\]+Command name abbreviations are allowed if unambiguous\." "help delete \"d\" abbreviation" set expected_help_delete {
"Delete some breakpoints or auto-display expressions\.\[\r\n\]+"
"Arguments are breakpoint numbers with spaces in between\.\[\r\n\]+"
"To delete all breakpoints, give no argument\.\[\r\n\]+"
"Also a prefix command for deletion of other GDB objects\.\[\r\n\]+"
"The \"unset\" command is also an alias for \"delete\"\.\[\r\n\]+"
}
test_prefix_command_help {"d" "delete"} $expected_help_delete "help delete \"d\" abbreviation"
# test help delete # test help delete
gdb_test "help delete" "Delete some breakpoints or auto-display expressions\.\[\r\n\]+Arguments are breakpoint numbers with spaces in between\.\[\r\n\]+To delete all breakpoints, give no argument\.\[\r\n\]+Also a prefix command for deletion of other GDB objects\.\[\r\n\]+The \"unset\" command is also an alias for \"delete\"\.\[\r\n\]+List of delete subcommands:\[\r\n\]+delete breakpoints -- Delete some breakpoints or auto-display expressions\[\r\n\]+(delete checkpoint -- Delete a fork/checkpoint \\(experimental\\)\[\r\n\]+)?delete display -- Cancel some expressions to be displayed when program stops\[\r\n\]+delete mem -- Delete memory region\[\r\n\]+delete tracepoints -- Delete specified tracepoints\[\r\n\]+Type \"help delete\" followed by delete subcommand name for full documentation\.\[\r\n\]+Command name abbreviations are allowed if unambiguous\." "help delete" test_prefix_command_help "delete" $expected_help_delete
# test help data # test help data
gdb_test "help data" "Examining data\.\[\r\n\]+List of commands:.*\[\r\n\]+Type \"help\" followed by command name for full documentation\.\[\r\n\]+Command name abbreviations are allowed if unambiguous\." "help data" test_class_help "data" {"Examining data\.\[\r\n\]+"}
# test help define # test help define
gdb_test "help define" "Define a new command.*" "help define" gdb_test "help define" "Define a new command.*" "help define"
# test help delete breakpoints # test help delete breakpoints
@ -96,15 +163,25 @@ gdb_test "help delete breakpoints" "Delete some breakpoints or auto-display expr
# test help delete display # test help delete display
gdb_test "help delete display" "Cancel some expressions to be displayed when program stops\.\[\r\n\]+Arguments are the code numbers of the expressions to stop displaying\.\[\r\n\]+No argument means cancel all automatic-display expressions\.\[\r\n\]+Do \"info display\" to see current list of code numbers\." "help delete display" gdb_test "help delete display" "Cancel some expressions to be displayed when program stops\.\[\r\n\]+Arguments are the code numbers of the expressions to stop displaying\.\[\r\n\]+No argument means cancel all automatic-display expressions\.\[\r\n\]+Do \"info display\" to see current list of code numbers\." "help delete display"
# test help detach # test help detach
gdb_test "help detach" "Detach a process or file previously attached\.\[\r\n\]+If a process, it is no longer traced, and it continues its execution\.\[ \r\n\]+If\[ \r\n\]+you were debugging a file, the file is closed and gdb no longer accesses it\." "help detach" test_prefix_command_help "detach" {
"Detach a process or file previously attached\.\[\r\n\]+"
"If a process, it is no longer traced, and it continues its execution\.\[ \r\n\]+If\[ \r\n\]+"
"you were debugging a file, the file is closed and gdb no longer accesses it\.\[ \r\n\]+"
}
# test help directory # test help directory
gdb_test "help directory" "Add directory DIR to beginning of search path for source files\.\[\r\n\]+Forget cached info on source file locations and line positions\.\[\r\n\]+DIR can also be \\\$cwd for the current working directory, or \\\$cdir for the\[\r\n\]+directory in which the source file was compiled into object code\.\[\r\n\]+With no argument, reset the search path to \\\$cdir:\\\$cwd, the default\." "help directory" gdb_test "help directory" "Add directory DIR to beginning of search path for source files\.\[\r\n\]+Forget cached info on source file locations and line positions\.\[\r\n\]+DIR can also be \\\$cwd for the current working directory, or \\\$cdir for the\[\r\n\]+directory in which the source file was compiled into object code\.\[\r\n\]+With no argument, reset the search path to \\\$cdir:\\\$cwd, the default\." "help directory"
# test help disable "dis" abbreviation # test help disable "dis" abbreviation
gdb_test "help dis" "Disable some breakpoints\.\[\r\n\]+Arguments are breakpoint numbers with spaces in between\.\[\r\n\]+To disable all breakpoints, give no argument\.\[\r\n\]+A disabled breakpoint is not forgotten, but has no effect until reenabled\.\[\r\n\]+List of disable subcommands:\[\r\n\]+disable breakpoints -- Disable some breakpoints\[\r\n\]+disable display -- Disable some expressions to be displayed when program stops\[\r\n\]+disable mem -- Disable memory region\[\r\n\]+disable tracepoints -- Disable specified tracepoints\[\r\n\]+Type \"help disable\" followed by disable subcommand name for full documentation\.\[\r\n\]+Command name abbreviations are allowed if unambiguous\." "help disable \"dis\" abbreviation" set expected_help_disable {
"Disable some breakpoints\.\[\r\n\]+"
"Arguments are breakpoint numbers with spaces in between\.\[\r\n\]+"
"To disable all breakpoints, give no argument\.\[\r\n\]+"
"A disabled breakpoint is not forgotten, but has no effect until reenabled\.\[\r\n\]+"
}
test_prefix_command_help {"dis" "disable"} $expected_help_disable "help disable \"dis\" abbreviation"
# test help disable "disa" abbreviation # test help disable "disa" abbreviation
gdb_test "help disa" "Disable some breakpoints\.\[\r\n\]+Arguments are breakpoint numbers with spaces in between\.\[\r\n\]+To disable all breakpoints, give no argument\.\[\r\n\]+A disabled breakpoint is not forgotten, but has no effect until reenabled\.\[\r\n\]+List of disable subcommands:\[\r\n\]+disable breakpoints -- Disable some breakpoints\[\r\n\]+disable display -- Disable some expressions to be displayed when program stops\[\r\n\]+disable mem -- Disable memory region\[\r\n\]+disable tracepoints -- Disable specified tracepoints\[\r\n\]+Type \"help disable\" followed by disable subcommand name for full documentation\.\[\r\n\]+Command name abbreviations are allowed if unambiguous\." "help disable \"disa\" abbreviation" test_prefix_command_help {"disa" "disable"} $expected_help_disable "help disable \"disa\" abbreviation"
# test help disable # test help disable
gdb_test "help disable" "Disable some breakpoints\.\[\r\n\]+Arguments are breakpoint numbers with spaces in between\.\[\r\n\]+To disable all breakpoints, give no argument\.\[\r\n\]+A disabled breakpoint is not forgotten, but has no effect until reenabled\.\[\r\n\]+List of disable subcommands:\[\r\n\]+disable breakpoints -- Disable some breakpoints\[\r\n\]+disable display -- Disable some expressions to be displayed when program stops\[\r\n\]+disable mem -- Disable memory region\[\r\n\]+disable tracepoints -- Disable specified tracepoints\[\r\n\]+Type \"help disable\" followed by disable subcommand name for full documentation\.\[\r\n\]+Command name abbreviations are allowed if unambiguous\." "help disable" test_prefix_command_help "disable" $expected_help_disable
# test help disable breakpoints # test help disable breakpoints
gdb_test "help disable breakpoints" "Disable some breakpoints\.\[\r\n\]+Arguments are breakpoint numbers with spaces in between\.\[\r\n\]+To disable all breakpoints, give no argument\.\[\r\n\]+A disabled breakpoint is not forgotten, but has no effect until reenabled\.\[\r\n\]+This command may be abbreviated \"disable\"." "help disable breakpoints" gdb_test "help disable breakpoints" "Disable some breakpoints\.\[\r\n\]+Arguments are breakpoint numbers with spaces in between\.\[\r\n\]+To disable all breakpoints, give no argument\.\[\r\n\]+A disabled breakpoint is not forgotten, but has no effect until reenabled\.\[\r\n\]+This command may be abbreviated \"disable\"." "help disable breakpoints"
# test help disable display # test help disable display
@ -150,7 +227,12 @@ gdb_test "help enable breakpoints delete" "Enable breakpoints and delete when hi
# test help enable breakpoints once # test help enable breakpoints once
gdb_test "help enable breakpoints once" "Enable breakpoints for one hit.*" "help enable breakpoints once" gdb_test "help enable breakpoints once" "Enable breakpoints for one hit.*" "help enable breakpoints once"
# test help enable breakpoints # test help enable breakpoints
gdb_test "help enable breakpoints" "Enable some breakpoints\.\[\r\n\]+Give breakpoint numbers \\(separated by spaces\\) as arguments\.\[\r\n\]+This is used to cancel the effect of the \"disable\" command\.\[\r\n\]+May be abbreviated to simply \"enable\"\.\[\r\n\]+List of enable breakpoints subcommands:\[\r\n\]+enable breakpoints delete -- Enable breakpoints and delete when hit\[\r\n\]+enable breakpoints once -- Enable breakpoints for one hit\[\r\n\]+Type \"help enable breakpoints\" followed by enable breakpoints subcommand name for full documentation\.\[\r\n\]+Command name abbreviations are allowed if unambiguous\." "help enable breakpoints" test_prefix_command_help {"enable breakpoints"} {
"Enable some breakpoints\.\[\r\n\]+"
"Give breakpoint numbers \\(separated by spaces\\) as arguments\.\[\r\n\]+"
"This is used to cancel the effect of the \"disable\" command\.\[\r\n\]+"
"May be abbreviated to simply \"enable\"\.\[\r\n\]+"
}
# test help enable delete # test help enable delete
gdb_test "help enable delete" "Enable breakpoints and delete when hit\. Give breakpoint numbers\.\[\r\n\]+If a breakpoint is hit while enabled in this fashion, it is deleted\." "help enable delete" gdb_test "help enable delete" "Enable breakpoints and delete when hit\. Give breakpoint numbers\.\[\r\n\]+If a breakpoint is hit while enabled in this fashion, it is deleted\." "help enable delete"
# test help enable display # test help enable display
@ -158,7 +240,13 @@ gdb_test "help enable display" "Enable some expressions to be displayed when pro
# test help enable once # test help enable once
gdb_test "help enable once" "Enable breakpoints for one hit.*" "help enable once" gdb_test "help enable once" "Enable breakpoints for one hit.*" "help enable once"
# test help enable # test help enable
gdb_test "help enable" "Enable some breakpoints\.\[\r\n\]+Give breakpoint numbers \\(separated by spaces\\) as arguments\.\[\r\n\]+With no subcommand, breakpoints are enabled until you command otherwise\.\[\r\n\]+This is used to cancel the effect of the \"disable\" command\.\[\r\n\]+With a subcommand you can enable temporarily\.\[\r\n\]+List of enable subcommands:\[\r\n\]+enable delete -- Enable breakpoints and delete when hit\[\r\n\]+enable display -- Enable some expressions to be displayed when program stops\[\r\n\]+enable mem -- Enable memory region\[\r\n\]+enable once -- Enable breakpoints for one hit\[\r\n\]+enable tracepoints -- Enable specified tracepoints\[\r\n\]+Type \"help enable\" followed by enable subcommand name for full documentation\.\[\r\n\]+Command name abbreviations are allowed if unambiguous\." "help enable" test_prefix_command_help "enable" {
"Enable some breakpoints\.\[\r\n\]+"
"Give breakpoint numbers \\(separated by spaces\\) as arguments\.\[\r\n\]+"
"With no subcommand, breakpoints are enabled until you command otherwise.\.\[\r\n\]+"
"This is used to cancel the effect of the \"disable\" command\.\[\r\n\]+"
"With a subcommand you can enable temporarily\.\[\r\n\]+"
}
# test help exec-file # test help exec-file
gdb_test "help exec-file" "Use FILE as program for getting contents of pure memory\.\[\r\n\]+If FILE cannot be found as specified, your execution directory path\[\r\n\]+is searched for a command of that name\.\[\r\n\]+No arg means have no executable file\." "help exec-file" gdb_test "help exec-file" "Use FILE as program for getting contents of pure memory\.\[\r\n\]+If FILE cannot be found as specified, your execution directory path\[\r\n\]+is searched for a command of that name\.\[\r\n\]+No arg means have no executable file\." "help exec-file"
# test help frame "f" abbreviation # test help frame "f" abbreviation
@ -203,9 +291,13 @@ gdb_test "help help" "Print list of commands\." "help help"
# test help handle # test help handle
gdb_test "help handle" "Specify how to handle a signal\..*" "help handle" gdb_test "help handle" "Specify how to handle a signal\..*" "help handle"
# test help info "i" abbreviation # test help info "i" abbreviation
gdb_test "help i" "Generic command for showing things about the program being debugged\.\[\r\n\]+List of info subcommands:.*\[\r\n\]+Type \"help info\" followed by info subcommand name for full documentation\.\[\r\n\]+Command name abbreviations are allowed if unambiguous\." "help info \"i\" abbreviation" test_prefix_command_help {"i" "info"} {
"Generic command for showing things about the program being debugged\.\[\r\n\]+"
} "help info \"i\" abbreviation"
# test help info # test help info
gdb_test "help info" "Generic command for showing things about the program being debugged\.\[\r\n\]+List of info subcommands:.*\[\r\n\]+Type \"help info\" followed by info subcommand name for full documentation\.\[\r\n\]+Command name abbreviations are allowed if unambiguous\." "help info" test_prefix_command_help "info" {
"Generic command for showing things about the program being debugged\.\[\r\n\]+"
}
# test help ignore # test help ignore
gdb_test "help ignore" "Set ignore-count of breakpoint number N to COUNT\.\[\r\n\]+Usage is `ignore N COUNT'\." "help ignore" gdb_test "help ignore" "Set ignore-count of breakpoint number N to COUNT\.\[\r\n\]+Usage is `ignore N COUNT'\." "help ignore"
# test help info address # test help info address
@ -288,7 +380,9 @@ gdb_test "help next" "Step program, proceeding through subroutine calls\.\[\r\n\
gdb_test "help ni" "Step one instruction, but proceed through subroutine calls\.\[\r\n\]+Argument N means do this N times \\(or till program stops for another reason\\)\." "help nexti" gdb_test "help ni" "Step one instruction, but proceed through subroutine calls\.\[\r\n\]+Argument N means do this N times \\(or till program stops for another reason\\)\." "help nexti"
# all the commands that used to be here are now in "maintainance" instead # all the commands that used to be here are now in "maintainance" instead
# test help obscure # test help obscure
gdb_test "help obscure" "Obscure features\.\[\r\n\]+List of commands:.*\[\r\n\]+Type \"help\" followed by command name for full documentation\.\[\r\n\]+Command name abbreviations are allowed if unambiguous\." "help obscure" test_class_help "obscure" {
"Obscure features\.\[\r\n\]+"
}
# test help output # test help output
gdb_test "help output" "Like \"print\" but don't put in value history and don't print newline\.\[\r\n\]+This is useful in user-defined commands\." "help output" gdb_test "help output" "Like \"print\" but don't put in value history and don't print newline\.\[\r\n\]+This is useful in user-defined commands\." "help output"
# test help overlay # test help overlay
@ -331,7 +425,9 @@ gdb_test "help return" "Make selected stack frame return to its caller\.\[\r\n\]
# test help reverse-search # test help reverse-search
gdb_test "help reverse-search" "Search backward for regular expression \\(see regex\\(3\\)\\) from last line listed\..*" "help reverse-search" gdb_test "help reverse-search" "Search backward for regular expression \\(see regex\\(3\\)\\) from last line listed\..*" "help reverse-search"
# test help running # test help running
gdb_test "help running" "Running the program\.\[\r\n\]+List of commands:.*\[\r\n\]+Type \"help\" followed by command name for full documentation\.\[\r\n\]+Command name abbreviations are allowed if unambiguous\." "help running" test_class_help "running" {
"Running the program\.\[\r\n\]+"
}
# test help step "s" abbreviation # test help step "s" abbreviation
gdb_test "help s" "Step program until it reaches a different source line\.\[\r\n\]+Argument N means do this N times \\(or till program stops for another reason\\)\." "help step \"s\" abbreviation" gdb_test "help s" "Step program until it reaches a different source line\.\[\r\n\]+Argument N means do this N times \\(or till program stops for another reason\\)\." "help step \"s\" abbreviation"
# test help step # test help step
@ -345,11 +441,17 @@ gdb_test "help set annotate" "Set annotation_level\.\[\r\n\]+0 == normal; 1
# test help set args # test help set args
gdb_test "help set args" "Set argument list to give program being debugged when it is started\.\[\r\n\]+Follow this command with any number of args, to be passed to the program\." gdb_test "help set args" "Set argument list to give program being debugged when it is started\.\[\r\n\]+Follow this command with any number of args, to be passed to the program\."
# test help set check "c" abbreviation # test help set check "c" abbreviation
gdb_test "help set c" "Set the status of the type/range checker\.\[\r\n\]+List of set check subcommands:\[\r\n\]+set check range -- Set range checking\[\r\n\]+set check type -- Set type checking\[\r\n\]+Type \"help set check\" followed by set check subcommand name for full documentation\.\[\r\n\]+Command name abbreviations are allowed if unambiguous\." "help set check \"c\" abbreviation" test_prefix_command_help {"set c" "set check"} {
"Set the status of the type/range checker\.\[\r\n\]+"
} "help set check \"c\" abbreviation"
# test help set check "ch" abbreviation # test help set check "ch" abbreviation
gdb_test "help set ch" "Set the status of the type/range checker\.\[\r\n\]+List of set check subcommands:\[\r\n\]+set check range -- Set range checking\[\r\n\]+set check type -- Set type checking\[\r\n\]+Type \"help set check\" followed by set check subcommand name for full documentation\.\[\r\n\]+Command name abbreviations are allowed if unambiguous\." "help set check \"ch\" abbreviation" test_prefix_command_help {"set ch" "set check"} {
"Set the status of the type/range checker\.\[\r\n\]+"
} "help set check \"ch\" abbreviation"
# test help set check # test help set check
gdb_test "help set check" "Set the status of the type/range checker\.\[\r\n\]+List of set check subcommands:\[\r\n\]+set check range -- Set range checking\[\r\n\]+set check type -- Set type checking\[\r\n\]+Type \"help set check\" followed by set check subcommand name for full documentation\.\[\r\n\]+Command name abbreviations are allowed if unambiguous\." "help set check" test_prefix_command_help {"set check"} {
"Set the status of the type/range checker\.\[\r\n\]+"
}
# test help set check range # test help set check range
gdb_test "help set check range" "Set range checking\. \\(on/warn/off/auto\\)" "help set check range" gdb_test "help set check range" "Set range checking\. \\(on/warn/off/auto\\)" "help set check range"
# test help set check type # test help set check type
@ -373,7 +475,9 @@ gdb_test "help set history save" "Set saving of the history record on exit\.\[\r
# test help set history size # test help set history size
gdb_test "help set history size" "Set the size of the command history,\[\r\n\]+ie\. the number of previous commands to keep a record of\." "help set history size" gdb_test "help set history size" "Set the size of the command history,\[\r\n\]+ie\. the number of previous commands to keep a record of\." "help set history size"
# test help set history # test help set history
gdb_test "help set history" "Generic command for setting command history parameters\.\[\r\n\]+List of set history subcommands:\[\r\n\]+set history expansion -- Set history expansion on command input\[\r\n\]+set history filename -- Set the filename in which to record the command history\[\r\n\]+set history save -- Set saving of the history record on exit\[\r\n\]+set history size -- Set the size of the command history\[\r\n\]+Type \"help set history\" followed by set history subcommand name for full documentation\.\[\r\n\]+Command name abbreviations are allowed if unambiguous\." "help set history" test_prefix_command_help {"set history"} {
"Generic command for setting command history parameters\.\[\r\n\]+"
}
# test help set language # test help set language
gdb_test "help set language" "Set the current source language\." "help set language" gdb_test "help set language" "Set the current source language\." "help set language"
# test help set listsize # test help set listsize
@ -382,11 +486,17 @@ gdb_test "help set listsize" "Set number of source lines gdb will list by defaul
# FIXME -- Ultrix hangs randomly on this very long output from gdb and # FIXME -- Ultrix hangs randomly on this very long output from gdb and
# continues with its output only if something is sent to gdb. # continues with its output only if something is sent to gdb.
# Also, if the system is slow, it may time out because the output is large. # Also, if the system is slow, it may time out because the output is large.
gdb_test "help set p" "Generic command for setting how things print\.\[\r\n\]+List of set print subcommands:.*\[\r\n\]+Type \"help set print\" followed by set print subcommand name for full documentation\.\[\r\n\]+Command name abbreviations are allowed if unambiguous\." "help set print \"p\" abbreviation" test_prefix_command_help {"set p" "set print"} {
"Generic command for setting how things print\.\[\r\n\]+"
} "help set print \"p\" abbreviation"
# test help set print "pr" abbreviation # test help set print "pr" abbreviation
gdb_test "help set pr" "Generic command for setting how things print\.\[\r\n\]+List of set print subcommands:.*\[\r\n\]+Type \"help set print\" followed by set print subcommand name for full documentation\.\[\r\n\]+Command name abbreviations are allowed if unambiguous\." "help set print \"pr\" abbreviation" test_prefix_command_help {"set pr" "set print"} {
"Generic command for setting how things print\.\[\r\n\]+"
} "help set print \"pr\" abbreviation"
# test help set print # test help set print
gdb_test "help set print" "Generic command for setting how things print\.\[\r\n\]+List of set print subcommands:.*\[\r\n\]+Type \"help set print\" followed by set print subcommand name for full documentation\.\[\r\n\]+Command name abbreviations are allowed if unambiguous\." "help set print" test_prefix_command_help {"set print"} {
"Generic command for setting how things print\.\[\r\n\]+"
}
# test help set print address # test help set print address
gdb_test "help set print address" "Set printing of addresses\." "help set print address" gdb_test "help set print address" "Set printing of addresses\." "help set print address"
# test help set print array # test help set print array
@ -426,7 +536,16 @@ gdb_test "help set write" "Set writing into executable and core files\." "help s
# FIXME -- Ultrix hangs randomly on this very long output from gdb and # FIXME -- Ultrix hangs randomly on this very long output from gdb and
# continues with its output only if something is sent to gdb. # continues with its output only if something is sent to gdb.
# Also, if the system is slow, it may time out because the output is large. # Also, if the system is slow, it may time out because the output is large.
gdb_test "help set" "Evaluate expression EXP and assign result to variable VAR, using assignment\[\r\n\]+syntax appropriate for the current language \\(VAR = EXP or VAR := EXP for\[\r\n\]+example\\)\. VAR may be a debugger \"convenience\" variable \\(names starting\[\r\n\]+with \\\$\\), a register \\(a few standard names starting with \\\$\\), or an actual\[\r\n\]+variable in the program being debugged\. EXP is any valid expression.*\[\r\n\]+set listsize -- Set number of source lines gdb will list by default.*\[\r\n\]+Type \"help set\" followed by set subcommand name for full documentation\.\[\r\n\]+Command name abbreviations are allowed if unambiguous..*\[\r\n\]+" "help set" test_prefix_command_help "set" {
"Evaluate expression EXP and assign result to variable VAR, using assignment\[\r\n\]+"
"syntax appropriate for the current language \\(VAR = EXP or VAR := EXP for\[\r\n\]+"
"example\\)\. VAR may be a debugger \"convenience\" variable \\(names starting\[\r\n\]+"
"with \\\$\\), a register \\(a few standard names starting with \\\$\\), or an actual\[\r\n\]+"
"variable in the program being debugged\. EXP is any valid expression.*\[\r\n\]+"
"Use \"set variable\" for variables with names identical to set subcommands\.\[\r\n\]+"
"With a subcommand, this command modifies parts of the gdb environment\.\[\r\n\]+"
"You can see these environment settings with the \"show\" command\.\[\r\n\]+"
}
# test help shell # test help shell
gdb_test "help shell" "Execute the rest of the line as a shell command\.\[\r\n\]+With no arguments, run an inferior shell\." "help shell" gdb_test "help shell" "Execute the rest of the line as a shell command\.\[\r\n\]+With no arguments, run an inferior shell\." "help shell"
#test help show annotate #test help show annotate
@ -434,9 +553,13 @@ gdb_test "help show annotate" "Show annotation_level\.\[\r\n\]+0 == normal;
# test help show args # test help show args
gdb_test "help show args" "Show argument list to give program being debugged when it is started\.\[\r\n\]+Follow this command with any number of args, to be passed to the program\." gdb_test "help show args" "Show argument list to give program being debugged when it is started\.\[\r\n\]+Follow this command with any number of args, to be passed to the program\."
# test help show check "c" abbreviation # test help show check "c" abbreviation
gdb_test "help show c" "Show the status of the type/range checker\.\[\r\n\]+List of show check subcommands:\[\r\n\]+show check range -- Show range checking\[\r\n\]+show check type -- Show type checking\[\r\n\]+Type \"help show check\" followed by show check subcommand name for full documentation\.\[\r\n\]+Command name abbreviations are allowed if unambiguous\." "help show check \"c\" abbreviation" test_prefix_command_help {"show c" "show check"} {
"Show the status of the type/range checker\.\[\r\n\]+"
} "help show check \"c\" abbreviation"
# test help show check # test help show check
gdb_test "help show check" "Show the status of the type/range checker\.\[\r\n\]+List of show check subcommands:\[\r\n\]+show check range -- Show range checking\[\r\n\]+show check type -- Show type checking\[\r\n\]+Type \"help show check\" followed by show check subcommand name for full documentation\.\[\r\n\]+Command name abbreviations are allowed if unambiguous\." "help show check" test_prefix_command_help {"show check"} {
"Show the status of the type/range checker\.\[\r\n\]+"
}
# test help show check range # test help show check range
gdb_test "help show check range" "Show range checking\. \\(on/warn/off/auto\\)" "help show check range" gdb_test "help show check range" "Show range checking\. \\(on/warn/off/auto\\)" "help show check range"
# test help show check type # test help show check type
@ -466,17 +589,25 @@ gdb_test "help show history save" "Show saving of the history record on exit\.\[
# test help show history size # test help show history size
gdb_test "help show history size" "Show the size of the command history,\[\r\n\]+ie\. the number of previous commands to keep a record of\." "help show history size" gdb_test "help show history size" "Show the size of the command history,\[\r\n\]+ie\. the number of previous commands to keep a record of\." "help show history size"
# test help show history # test help show history
gdb_test "help show history" "Generic command for showing command history parameters\.\[\r\n\]+List of show history subcommands:\[\r\n\]+show history expansion -- Show history expansion on command input\[\r\n\]+show history filename -- Show the filename in which to record the command history\[\r\n\]+show history save -- Show saving of the history record on exit\[\r\n\]+show history size -- Show the size of the command history\[\r\n\]+Type \"help show history\" followed by show history subcommand name for full documentation\.\[\r\n\]+Command name abbreviations are allowed if unambiguous\." "help show history" test_prefix_command_help {"show history"} {
"Generic command for showing command history parameters\.\[\r\n\]+"
}
# test help show language # test help show language
gdb_test "help show language" "Show the current source language\." "help show language" gdb_test "help show language" "Show the current source language\." "help show language"
# test help show listsize # test help show listsize
gdb_test "help show listsize" "Show number of source lines gdb will list by default\." "help show listsize" gdb_test "help show listsize" "Show number of source lines gdb will list by default\." "help show listsize"
# test help show print "p" abbreviation # test help show print "p" abbreviation
gdb_test "help show p" "Generic command for showing print settings\.\[\r\n\]+List of show print subcommands:.*\[\r\n\]+Type \"help show print\" followed by show print subcommand name for full documentation\.\[\r\n\]+Command name abbreviations are allowed if unambiguous\." "help show print \"p\" abbreviation" test_prefix_command_help {"show p" "show print"} {
"Generic command for showing print settings\.\[\r\n\]+"
} "help show print \"p\" abbreviation"
# test help show print "pr" abbreviation # test help show print "pr" abbreviation
gdb_test "help show pr" "Generic command for showing print settings\.\[\r\n\]+List of show print subcommands:.*\[\r\n\]+Type \"help show print\" followed by show print subcommand name for full documentation\.\[\r\n\]+Command name abbreviations are allowed if unambiguous\." "help show print \"pr\" abbreviation" test_prefix_command_help {"show pr" "show print"} {
"Generic command for showing print settings\.\[\r\n\]+"
} "help show print \"pr\" abbreviation"
# test help show print # test help show print
gdb_test "help show print" "Generic command for showing print settings\.\[\r\n\]+List of show print subcommands:.*\[\r\n\]+Type \"help show print\" followed by show print subcommand name for full documentation\.\[\r\n\]+Command name abbreviations are allowed if unambiguous\." "help show print" test_prefix_command_help {"show print"} {
"Generic command for showing print settings\.\[\r\n\]+"
} "help show print \"p\" abbreviation"
# test help show paths # test help show paths
gdb_test "help show paths" "Current search path for finding object files\.\[\r\n\]+\\\$cwd in the path means the current working directory\.\[\r\n\]+This path is equivalent to the \\\$PATH shell variable\. It is a list of\[\r\n\]+directories, separated by colons\. These directories are searched to find\[\r\n\]+fully linked executable files and separately compiled object files as needed\." "help show paths" gdb_test "help show paths" "Current search path for finding object files\.\[\r\n\]+\\\$cwd in the path means the current working directory\.\[\r\n\]+This path is equivalent to the \\\$PATH shell variable\. It is a list of\[\r\n\]+directories, separated by colons\. These directories are searched to find\[\r\n\]+fully linked executable files and separately compiled object files as needed\." "help show paths"
# test help show print address # test help show print address
@ -522,7 +653,9 @@ gdb_test "help show write" "Show writing into executable and core files\." "help
# FIXME -- Ultrix hangs randomly on this very long output from gdb and # FIXME -- Ultrix hangs randomly on this very long output from gdb and
# continues with its output only if something is sent to gdb. # continues with its output only if something is sent to gdb.
# Also, if the system is slow, it may time out because the output is large. # Also, if the system is slow, it may time out because the output is large.
gdb_test "help show" "Generic command for showing things about the debugger\.\[\r\n\]+List of show subcommands:.*\[\r\n\]+show directories -- Current search path for finding source files.*\[\r\n\]+show listsize -- Show number of source lines gdb will list by default.*\[\r\n\]+Type \"help show\" followed by show subcommand name for full documentation\.\[\r\n\]+Command name abbreviations are allowed if unambiguous\." "help show" test_prefix_command_help "show" {
"Generic command for showing things about the debugger\.\[\r\n\]+"
}
# test help step # test help step
gdb_test "help step" "Step program until it reaches a different source line\.\[\r\n\]+Argument N means do this N times \\(or till program stops for another reason\\)\." "help step #2" gdb_test "help step" "Step program until it reaches a different source line\.\[\r\n\]+Argument N means do this N times \\(or till program stops for another reason\\)\." "help step #2"
# test help stepi "si" abbreviation # test help stepi "si" abbreviation
@ -535,15 +668,23 @@ gdb_test "help signal" "Continue program giving it signal.*" "help signal"
# vxgdb reads .vxgdbinit # vxgdb reads .vxgdbinit
gdb_test "help source" "Read commands from a file named FILE\.\[\r\n\]+Optional -v switch \\(before the filename\\) causes each command in\[\r\n\]+FILE to be echoed as it is executed\.\[\r\n\]+Note that the file \"\[^\"\]*\" is read automatically in this way\[\r\n\]+when GDB is started\." "help source" gdb_test "help source" "Read commands from a file named FILE\.\[\r\n\]+Optional -v switch \\(before the filename\\) causes each command in\[\r\n\]+FILE to be echoed as it is executed\.\[\r\n\]+Note that the file \"\[^\"\]*\" is read automatically in this way\[\r\n\]+when GDB is started\." "help source"
# test help stack # test help stack
gdb_test "help stack" "Examining the stack\..*\[\r\n\]+When the program being debugged stops, gdb selects the innermost frame\.\[\r\n\]+The commands below can be used to select other frames by number or address\.\[\r\n\]+List of commands:\[\r\n\]+backtrace -- Print backtrace of all stack frames\[\r\n\]+bt -- Print backtrace of all stack frames\[\r\n\]+down -- Select and print stack frame called by this one\[\r\n\]+frame -- Select and print a stack frame\[\r\n\]+return -- Make selected stack frame return to its caller\[\r\n\]+select-frame -- Select a stack frame without printing anything\[\r\n\]+up -- Select and print stack frame that called this one\[\r\n\]+Type \"help\" followed by command name for full documentation\.\[\r\n\]+Command name abbreviations are allowed if unambiguous\." "help stack" test_class_help "stack" {
"Examining the stack\..*\[\r\n\]+"
"When the program being debugged stops, gdb selects the innermost frame\.\[\r\n\]+"
"The commands below can be used to select other frames by number or address\.\[\r\n\]+"
}
# test help status # test help status
gdb_test "help status" "Status inquiries\.\[\r\n\]+List of commands:\[\r\n\]+info -- Generic command for showing things about the program being debugged.*\[\r\n\]+show -- Generic command for showing things about the debugger\[\r\n\]+Type \"help\" followed by command name for full documentation\.\[\r\n\]+Command name abbreviations are allowed if unambiguous\." "help status" test_class_help "status" {
"Status inquiries\.\[\r\n\]+"
}
# test help support # test help support
# FIXME -- Ultrix hangs randomly on this very long output from gdb and # FIXME -- Ultrix hangs randomly on this very long output from gdb and
# continues with its output only if something is sent to gdb. # continues with its output only if something is sent to gdb.
# Also, if the system is slow, it may time out because the output is large. # Also, if the system is slow, it may time out because the output is large.
gdb_test "help support" "Support facilities\.\[\r\n\]+List of commands:.*\[\r\n\]+show confirm -- Show whether to confirm potentially dangerous operations.*\[\r\n\]+show history -- Generic command for showing command history parameters.*\[\r\n\]+Type \"help\" followed by command name for full documentation\.\[\r\n\]+Command name abbreviations are allowed if unambiguous\." "help support" test_class_help "support" {
"Support facilities\.\[\r\n\]+"
}
# test help symbol-file # test help symbol-file
gdb_test "help symbol-file" "Load symbol table from executable file FILE\.\[\r\n\]+The `file' command can also load symbol tables, as well as setting the file\[\r\n\]+to execute\." "help symbol-file" gdb_test "help symbol-file" "Load symbol table from executable file FILE\.\[\r\n\]+The `file' command can also load symbol tables, as well as setting the file\[\r\n\]+to execute\." "help symbol-file"
# test help target child # test help target child
@ -558,7 +699,13 @@ gdb_test "help target exec" "Use an executable file as a target\.\[\r\n\]+Specif
gdb_test "help target remote" "Use a remote computer via a serial line, using a gdb-specific protocol\.\[\r\n\]+Specify the serial device it is connected to\[\r\n\]+\\(e.g. .*" "help target remote" gdb_test "help target remote" "Use a remote computer via a serial line, using a gdb-specific protocol\.\[\r\n\]+Specify the serial device it is connected to\[\r\n\]+\\(e.g. .*" "help target remote"
# test help target # test help target
# the child process target may be "target child" or "target procfs" # the child process target may be "target child" or "target procfs"
gdb_test "help target" "Connect to a target machine or process\.\[\r\n\]+The first argument is the type or protocol of the target machine\.\[\r\n\]+Remaining arguments are interpreted by the target protocol\. For more\[\r\n\]+information on the arguments for a particular protocol, type\[\r\n\]+`help target ' followed by the protocol name\.\[\r\n\]+List of target subcommands:.*\[\r\n\]+target exec -- Use an executable file as a target.*\[\r\n\]+Type \"help target\" followed by target subcommand name for full documentation\.\[\r\n\]+Command name abbreviations are allowed if unambiguous\." "help target" test_prefix_command_help "target" {
"Connect to a target machine or process\.\[\r\n\]+"
"The first argument is the type or protocol of the target machine\.\[\r\n\]+"
"Remaining arguments are interpreted by the target protocol\. For more\[\r\n\]+"
"information on the arguments for a particular protocol, type\[\r\n\]+"
"`help target ' followed by the protocol name\.\[\r\n\]+"
}
# test help tbreak # test help tbreak
gdb_test "help tbreak" "Set a temporary breakpoint.*" "help tbreak" gdb_test "help tbreak" "Set a temporary breakpoint.*" "help tbreak"
# test help tty # test help tty
@ -572,13 +719,19 @@ gdb_test "help undisplay" "Cancel some expressions to be displayed when program
# test help unset environment # test help unset environment
gdb_test "help unset environment" "Cancel environment variable VAR for the program\.\[\r\n\]+This does not affect the program until the next \"run\" command\." "help unset environment" gdb_test "help unset environment" "Cancel environment variable VAR for the program\.\[\r\n\]+This does not affect the program until the next \"run\" command\." "help unset environment"
# test help unset # test help unset
gdb_test "help unset" "Complement to certain \"set\" commands\.\[\r\n\]+List of unset subcommands:\[\r\n\]+.*Type \"help unset\" followed by unset subcommand name for full documentation\.\[\r\n\]+Command name abbreviations are allowed if unambiguous\." "help unset" test_prefix_command_help "unset" {
"Complement to certain \"set\" commands\.\[\r\n\]+"
}
# test help up # test help up
gdb_test "help up" "Select and print stack frame that called this one\.\[\r\n\]+An argument says how many frames up to go\." "help up" gdb_test "help up" "Select and print stack frame that called this one\.\[\r\n\]+An argument says how many frames up to go\." "help up"
# test help up-silently # test help up-silently
gdb_test "help up-silently" "Same as the `up' command, but does not print anything\.\[\r\n\]+This is useful in command scripts\." "help up-silently" gdb_test "help up-silently" "Same as the `up' command, but does not print anything\.\[\r\n\]+This is useful in command scripts\." "help up-silently"
# test help user-defined # test help user-defined
gdb_test "help user-defined" "User-defined commands\.\[\r\n\]+The commands in this class are those defined by the user\.\[\r\n\]+Use the \"define\" command to define a command\.\[\r\n\]+List of commands:.*\[\r\n\]+Type \"help\" followed by command name for full documentation\.\[\r\n\]+Command name abbreviations are allowed if unambiguous\." "help user-defined" test_class_help "user-defined" {
"User-defined commands\.\[\r\n\]+"
"The commands in this class are those defined by the user\.\[\r\n\]+"
"Use the \"define\" command to define a command\.\[\r\n\]+"
}
# test help watch # test help watch
gdb_test "help watch" "Set a watchpoint for an expression\.\[\r\n\]+A watchpoint stops execution of your program whenever the value of\[\r\n\]+an expression changes\." "help watch" gdb_test "help watch" "Set a watchpoint for an expression\.\[\r\n\]+A watchpoint stops execution of your program whenever the value of\[\r\n\]+an expression changes\." "help watch"
# test help whatis # test help whatis