mirror of
https://sourceware.org/git/binutils-gdb.git
synced 2024-11-24 18:44:20 +08:00
gdb: Fix bug with dbx style func command.
The func command, available when starting gdb in dbx mode, is supposed to take a function name and locate the frame for that function in the stack. This has been broken for a while due to an invalid check of the arguments within the worker function. Fixed in this commit. gdb/ChangeLog: * stack.c (func_command): Return early when there is no ARG string. gdb/testsuite/ChangeLog: * gdb.base/dbx.exp (test_func): Remove xfails, update expected results.
This commit is contained in:
parent
fc58fa65d4
commit
9d622bda56
@ -1,3 +1,8 @@
|
||||
2015-10-12 Andrew Burgess <andrew.burgess@embecosm.com>
|
||||
|
||||
* stack.c (func_command): Return early when there is no ARG
|
||||
string.
|
||||
|
||||
2015-10-12 Andrew Burgess <andrew.burgess@embecosm.com>
|
||||
|
||||
* stack.c: Include safe-ctype.h not ctype.h.
|
||||
|
@ -2518,7 +2518,7 @@ func_command (char *arg, int from_tty)
|
||||
struct function_bounds *func_bounds = NULL;
|
||||
struct cleanup *cleanups;
|
||||
|
||||
if (arg != NULL)
|
||||
if (arg == NULL)
|
||||
return;
|
||||
|
||||
frame = parse_frame_specification ("0");
|
||||
|
@ -1,3 +1,8 @@
|
||||
2015-10-12 Andrew Burgess <andrew.burgess@embecosm.com>
|
||||
|
||||
* gdb.base/dbx.exp (test_func): Remove xfails, update expected
|
||||
results.
|
||||
|
||||
2015-10-12 Yao Qi <yao.qi@linaro.org>
|
||||
|
||||
* gdb.arch/disp-step-insn-reloc.exp: New test case.
|
||||
|
@ -293,15 +293,11 @@ proc test_func { } {
|
||||
global srcfile2
|
||||
gdb_test "cont" ".*" "cont 1"
|
||||
gdb_test "step" ".*"
|
||||
# This always fails, but it's not clear why. -sts 1999-08-17
|
||||
setup_xfail "*-*-*"
|
||||
gdb_test "func sum" "'sum' not within current stack frame\."
|
||||
set stop_line [gdb_get_line_number "stop-in-sum" $srcfile2]
|
||||
gdb_test "stop in sum" "Breakpoint.*at.*: file.*sum\.c, line $stop_line\."
|
||||
gdb_test "cont" ".*" "cont 2"
|
||||
# This always fails, but it's not clear why. -sts 1999-08-17
|
||||
setup_xfail "*-*-*"
|
||||
gdb_test "func print_average" ".*in print_average.*\\(list=.*, low=0, high=6\\).*at.*average\.c:${decimal}\r\n\${decimal}\[ \t\]+total = sum\\(list, low, high\\);"
|
||||
gdb_test "func print_average" ".*in print_average.*\\(list=.*, low=0, high=6\\).*at.*average\.c:${decimal}\r\n${decimal}\[ \t\]+total = sum\\(list, low, high\\);"
|
||||
}
|
||||
|
||||
# Start with a fresh gdb.
|
||||
|
Loading…
Reference in New Issue
Block a user