diff options
author | Pedro Alves <pedro@palves.net> | 2020-09-17 23:33:40 +0100 |
---|---|---|
committer | Pedro Alves <pedro@palves.net> | 2020-09-18 00:04:47 +0100 |
commit | 11fac33796f43a177c1836bf8fb1f7cc60e3875e (patch) | |
tree | da989c8ffb85e2f0cf2a3506747e25e54285252e /gdb | |
parent | 52626c58267233b0e6a9807a80945467a019013b (diff) | |
download | gdb-11fac33796f43a177c1836bf8fb1f7cc60e3875e.zip gdb-11fac33796f43a177c1836bf8fb1f7cc60e3875e.tar.gz gdb-11fac33796f43a177c1836bf8fb1f7cc60e3875e.tar.bz2 |
gdb.base/examine-backward.exp C++ify and Clang
Adjust gdb.base/examine-backward.exp to let the testcase build and run
as a C++ program, built with either G++ or Clang++.
The change to use unsigned char instead of plain char is to avoid
narrowing warnings:
gdb compile failed, src/gdb/testsuite/gdb.base/examine-backward.c:55:1: error: narrowing conversion of '227' from 'int' to 'char' [-Wnarrowing]
55 | };
| ^
gdb/testsuite/ChangeLog:
* gdb.base/examine-backward.c (Barrier, TestStrings): Now unsigned
char array.
(main): Add references to Barrier, TestStrings, TestStringsH and
TestStringsW.
* gdb.base/examine-backward.exp: Issue "set print asm-demangle on"
and expect a full prototype in C++.
Diffstat (limited to 'gdb')
-rw-r--r-- | gdb/testsuite/ChangeLog | 9 | ||||
-rw-r--r-- | gdb/testsuite/gdb.base/examine-backward.c | 7 | ||||
-rw-r--r-- | gdb/testsuite/gdb.base/examine-backward.exp | 7 |
3 files changed, 19 insertions, 4 deletions
diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog index 2dbaab7..aee673f 100644 --- a/gdb/testsuite/ChangeLog +++ b/gdb/testsuite/ChangeLog @@ -1,5 +1,14 @@ 2020-09-17 Pedro Alves <pedro@palves.net> + * gdb.base/examine-backward.c (Barrier, TestStrings): Now unsigned + char array. + (main): Add references to Barrier, TestStrings, TestStringsH and + TestStringsW. + * gdb.base/examine-backward.exp: Issue "set print asm-demangle on" + and expect a full prototype in C++. + +2020-09-17 Pedro Alves <pedro@palves.net> + * gdb.base/nested-addr.c (main): Add cast. * gdb.base/nested-addr.exp: Use "print /d". diff --git a/gdb/testsuite/gdb.base/examine-backward.c b/gdb/testsuite/gdb.base/examine-backward.c index cf61df8..4db4095 100644 --- a/gdb/testsuite/gdb.base/examine-backward.c +++ b/gdb/testsuite/gdb.base/examine-backward.c @@ -36,11 +36,11 @@ literals. The content of each array is the same as followings: TestStrings, to avoid showing garbage when we look for strings backwards from TestStrings. */ -const char Barrier[] = { +const unsigned char Barrier[] = { 0x00, }; -const char TestStrings[] = { +const unsigned char TestStrings[] = { 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f, 0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57, 0x58, @@ -92,6 +92,9 @@ const int TestStringsW[] = { int main (void) { + /* Clang++ eliminates the variables if nothing references them. */ + int dummy = Barrier[0] + TestStrings[0] + TestStringsH[0] + TestStringsW[0]; + /* Backward disassemble test requires at least 20 instructions in this function. Adding a simple bubble sort. */ int i, j; diff --git a/gdb/testsuite/gdb.base/examine-backward.exp b/gdb/testsuite/gdb.base/examine-backward.exp index c1ab4d1..b2d9fc1 100644 --- a/gdb/testsuite/gdb.base/examine-backward.exp +++ b/gdb/testsuite/gdb.base/examine-backward.exp @@ -345,9 +345,12 @@ with_test_prefix "backward disassemble general" { set length_to_examine {1 2 3 4 10} set disassmbly {} - gdb_test "x/i main" "0x\[0-9a-fA-F\]+ <main>:\t.*" \ + gdb_test_no_output "set print asm-demangle on" + set main_re "main(\\(\\))?" + + gdb_test "x/i main" "0x\[0-9a-fA-F\]+ <$main_re>:\t.*" \ "move the current position to main (x/i)" - gdb_test "x/-i" "0x\[0-9a-fA-F\]+ <main>:\t.*" \ + gdb_test "x/-i" "0x\[0-9a-fA-F\]+ <$main_re>:\t.*" \ "move the current position to main (x/-i)" for {set i 0} {$i < [llength $length_to_examine]} {incr i} { set len [lindex $length_to_examine $i] |