This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[PATCH 1/3] Add testcases for examine function


    use examine to display the content of main function's address
    in different formats and examine address that can not be accessed
---
 gdb/testsuite/gdb.base/testexamine.exp | 42 ++++++++++++++++++++++++++++++++++
 1 file changed, 42 insertions(+)
 create mode 100644 gdb/testsuite/gdb.base/testexamine.exp

diff --git a/gdb/testsuite/gdb.base/testexamine.exp b/gdb/testsuite/gdb.base/testexamine.exp
new file mode 100644
index 0000000..16d916d
--- /dev/null
+++ b/gdb/testsuite/gdb.base/testexamine.exp
@@ -0,0 +1,42 @@
+if {[prepare_for_testing testprint.exp testprint display.c \
+	{debug nowarnings}]} {
+	untested testprint.exp
+	return -1
+}
+
+if ![runto_main] then {
+	fail "Can not run to main."
+}
+
+#Get main address
+set main_addr ""
+gdb_test_multiple "print/x &main" "getting main's address" {
+    -re "$decimal = \($hex\)\r\n$gdb_prompt $" {
+        set main_addr $expect_out(1,string)
+    }
+}
+
+#Test x(examine)
+gdb_test "x" \
+	"Argument required.*"
+gdb_test "x/x $main_addr" \
+	".*<main>.*0xe5894855"
+gdb_test "x/d $main_addr" \
+	".*<main>.*-443987883"
+gdb_test "x/u $main_addr" \
+	".*<main>.*3850979413"
+gdb_test "x/o $main_addr" \
+	".*<main>.*034542244125"
+gdb_test "x/t $main_addr" \
+	".*<main>.*11100101100010010100100001010101"
+gdb_test "x/a $main_addr" \
+	".*<main>.*0xb8e5894855"
+gdb_test "x/c $main_addr" \
+	".*<main>.*85\ \'U\'"
+gdb_test "x/f $main_addr" \
+	".*<main>.*3.923498621684153e-312"
+gdb_test "x 0x000000000000" \
+	"Cannot access memory at address 0x0"
+
+gdb_exit
+return 0
-- 
1.8.3.1


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]