diff options
author | Pedro Alves <palves@redhat.com> | 2019-06-13 15:22:44 +0100 |
---|---|---|
committer | Pedro Alves <palves@redhat.com> | 2019-06-13 15:22:44 +0100 |
commit | 4c04873103043dc9a1c8d6cdeea1b9b1f545f375 (patch) | |
tree | f4adcab2e6f1551d7fa9e95d1c6d9acdc8cdccae /gdb/testsuite/gdb.base/settings.exp | |
parent | 57a63d27dcc8c7620f2168b370b649c7458c687e (diff) | |
download | fsf-binutils-gdb-4c04873103043dc9a1c8d6cdeea1b9b1f545f375.zip fsf-binutils-gdb-4c04873103043dc9a1c8d6cdeea1b9b1f545f375.tar.gz fsf-binutils-gdb-4c04873103043dc9a1c8d6cdeea1b9b1f545f375.tar.bz2 |
Fix "set integer-command unlimited junk"
With integer commands that support "unlimited", we currently fail to
notice junk after "unlimited":
(gdb) show print elements
Limit on string chars or array elements to print is 200.
(gdb) set print elements unlimited foo
(gdb) show print elements
Limit on string chars or array elements to print is unlimited.
This commit fixes that. After, we get:
(gdb) set print elements unlimited foo
Junk after "unlimited": foo
gdb/ChangeLog:
2019-06-13 Pedro Alves <palves@redhat.com>
* cli/cli-setshow.c (cli/cli-setshow.c): New parameter
'expression'. When parsing an expression, error out if there's
junk after "unlimited".
(parse_cli_var_uinteger, parse_cli_var_zuinteger_unlimited)
(do_set_command): Adjust calls to is_unlimited_literal.
gdb/testsuite/ChangeLog:
2019-06-13 Pedro Alves <palves@redhat.com>
* gdb.base/settings.exp (test-integer): Test junk after
"unlimited".
Diffstat (limited to 'gdb/testsuite/gdb.base/settings.exp')
-rw-r--r-- | gdb/testsuite/gdb.base/settings.exp | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/gdb/testsuite/gdb.base/settings.exp b/gdb/testsuite/gdb.base/settings.exp index 4a7319d..aeca67c 100644 --- a/gdb/testsuite/gdb.base/settings.exp +++ b/gdb/testsuite/gdb.base/settings.exp @@ -141,8 +141,19 @@ proc test-integer {variant} { "$set_cmd unlimited" } + # Check junk after "unlimited". gdb_test "$set_cmd unlimitedu" "No symbol table is loaded.*" + if {$variant == "zinteger" || $variant == "zuinteger"} { + gdb_test "$set_cmd unlimited u" "No symbol table is loaded.*" + gdb_test "$set_cmd unlimited 1" "No symbol table is loaded.*" + gdb_test "$set_cmd unlimited -1" "No symbol table is loaded.*" + } else { + gdb_test "$set_cmd unlimited u" "Junk after \"unlimited\": u" + gdb_test "$set_cmd unlimited 1" "Junk after \"unlimited\": 1" + gdb_test "$set_cmd unlimited -1" "Junk after \"unlimited\": -1" + } + test_gdb_complete_none "$set_cmd unlimited " test_gdb_complete_none "$set_cmd unlimitedu" test_gdb_complete_none "$set_cmd unlimited u" |