diff options
Diffstat (limited to 'gdb/testsuite/gdb.base/info-macros.exp')
-rw-r--r-- | gdb/testsuite/gdb.base/info-macros.exp | 89 |
1 files changed, 86 insertions, 3 deletions
diff --git a/gdb/testsuite/gdb.base/info-macros.exp b/gdb/testsuite/gdb.base/info-macros.exp index bd5a870..f9abd5f 100644 --- a/gdb/testsuite/gdb.base/info-macros.exp +++ b/gdb/testsuite/gdb.base/info-macros.exp @@ -34,7 +34,75 @@ if ![runto_main] { return -1 } -set test "info definitions FOO" +# Test various error messages. +gdb_test "info macro -- -all" \ + "The symbol `-all' has no definition .*\r\nat .*$srcfile:\[0-9\]+" \ + "info macro -- -all" +gdb_test "info macro -- -all" \ + "The symbol `-all' has no definition .*\r\nat .*$srcfile:\[0-9\]+" \ + "info macro -- -all" + +gdb_test "info macro -all --" \ + "You must follow.*with the name.*you want to see.*\[^\r\n\]*\[\r\n\]" \ + "info macro -all --" + +gdb_test "info macro -all --" \ + "You must follow.*with the name.*you want to see.*\[^\r\n\]*\[\r\n\]" \ + "info macro -all --" + +gdb_test "info macro -all --" \ + "You must follow.*with the name.*you want to see.*\[^\r\n\]*\[\r\n\]" \ + "info macro -all --" + +gdb_test "info macro --" \ + "You must follow.*with the name.*you want to see.*\[^\r\n\]*\[\r\n\]" \ + "info macro --" + +gdb_test "info macro -- " \ + "You must follow.*with the name.*you want to see.*\[^\r\n\]*\[\r\n\]" \ + "'info macro -- '" +gdb_test "info macro -- " \ + "You must follow.*with the name.*you want to see.*\[^\r\n\]*\[\r\n\]" \ + "'info macro -- '" + +gdb_test "info macro -invalid-option" \ + "Unrecognized option.*Try \"help info macro\"\." \ + "info macro -invalid-option 1" + +gdb_test "info macro -invalid-option" \ + "Unrecognized option.*Try \"help info macro\"\." \ + "info macro -invalid-option" + +gdb_test "info macro -invalid-option FOO" \ + "Unrecognized option.*Try \"help info macro\"\." \ + "info macro -invalid-option FOO" +gdb_test "info macro -invalid-option FOO" \ + "Unrecognized option.*Try \"help info macro\"\." \ + "info macro -invalid-option FOO" + +# Single macro lookups. +gdb_test "info macro -- FOO" \ + ".*#define FOO \"hello\"" \ + "info macro -- FOO" + +gdb_test "info macro -- FOO" \ + ".*#define FOO \"hello\"" \ + "info macro -- FOO" + +gdb_test "info macro -- FOO" \ + ".*#define FOO \"hello\"" \ + "info macro -- FOO" + +gdb_test "info macro FOO" \ + ".*#define FOO \"hello\"" \ + "info macro FOO" + +gdb_test "info macro FOO" \ + ".*#define FOO \"hello\"" \ + "info macro FOO" + +# Multiple macro lookups. +set test "info macro -a FOO" set r1 ".*#define FOO \"hello\"" set r2 ".*#define FOO \" \"" set r3 ".*#define FOO \"world\"" @@ -42,6 +110,21 @@ set r4 ".*#define FOO\\(a\\) foo = a" set testname "$test 1" gdb_test "$test" "$r1$r2$r3$r4" "$testname" +set test "info macro -a -- FOO" +set testname "$test 1" +gdb_test "$test" "$r1$r2$r3$r4" "$testname" + +set test "info macro -all -- FOO" +set testname "$test 1" +gdb_test "$test" "$r1$r2$r3$r4" "$testname" + +set test "info macro -a -- FOO" +set testname "$test" +gdb_test "$test" "$r1$r2$r3$r4" "$testname" + +set test "info macro -a -- FOO" +set testname "$test" +gdb_test "$test" "$r1$r2$r3$r4" "$testname" set test "info macros" set r1 ".*#define FOO \"hello\"" @@ -68,7 +151,7 @@ set r1 ".*#define FOO \" \"" set r2 ".*#define ONE" set r3 ".*#define TWO" set r4 ".*\r\n$gdb_prompt" -set testname "$test 4" +set testname "$test 3" gdb_test_multiple "$test" $testname { -re ".*#define THREE.*\r\n$gdb_prompt" { fail $testname @@ -113,8 +196,8 @@ set r1 ".*#define FOO \" \"" set r2 ".*#define ONE" set r3 ".*#define TWO." set r4 ".*\r\n$gdb_prompt" -set testname "$test 5" set test "info macros" +set testname "$test 5" gdb_test_multiple "$test" $test { -re ".*#define THREE.*\r\n$gdb_prompt" { fail $testname |