summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Pluzhnikov <ppluzhnikov@google.com>2008-06-06 18:29:52 +0000
committerPaul Pluzhnikov <ppluzhnikov@google.com>2008-06-06 18:29:52 +0000
commitdf876cf4bd4a2e9d24430b6609091a8bd05ebb90 (patch)
treeb7871df1baa7cc735dd05852418922352e00b28f
parent7f5cb6015e209adc2a8d1ea6a7127ef94ee15821 (diff)
downloadgdb-df876cf4bd4a2e9d24430b6609091a8bd05ebb90.tar.gz
2008-06-06 Paul Pluzhnikov <ppluzhnikov@google.com>
* gdb.cp/call-c.exp: Test for incorrect handling of reference to pointer. * gdb.cp/call-c.cc: Likewise.
-rw-r--r--gdb/testsuite/ChangeLog6
-rw-r--r--gdb/testsuite/gdb.cp/call-c.cc11
-rw-r--r--gdb/testsuite/gdb.cp/call-c.exp5
3 files changed, 22 insertions, 0 deletions
diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog
index ddfc83993b1..917d9302463 100644
--- a/gdb/testsuite/ChangeLog
+++ b/gdb/testsuite/ChangeLog
@@ -1,3 +1,9 @@
+2008-06-06 Paul Pluzhnikov <ppluzhnikov@google.com>
+
+ * gdb.cp/call-c.exp: Test for incorrect handling of reference
+ to pointer.
+ * gdb.cp/call-c.cc: Likewise.
+
2008-06-06 Nick Roberts <nickrob@snap.net.nz>
* gdb.base/annota1.exp (thread_switch): Test for thread-changed
diff --git a/gdb/testsuite/gdb.cp/call-c.cc b/gdb/testsuite/gdb.cp/call-c.cc
index a8119f93f96..8ab617eb0fd 100644
--- a/gdb/testsuite/gdb.cp/call-c.cc
+++ b/gdb/testsuite/gdb.cp/call-c.cc
@@ -21,7 +21,18 @@ int func(int x)
return x;
}
+struct Foo {
+ Foo() : x_(1) { }
+ int func() const { return x_; }
+ private:
+ int x_;
+};
+
int main()
{
+ Foo f;
+ Foo *pf = &f;
+ Foo* &rf = pf;
+ rf->func(); /* set breakpoint here */
return func(0);
}
diff --git a/gdb/testsuite/gdb.cp/call-c.exp b/gdb/testsuite/gdb.cp/call-c.exp
index 7e2d992b3f6..494d48f0313 100644
--- a/gdb/testsuite/gdb.cp/call-c.exp
+++ b/gdb/testsuite/gdb.cp/call-c.exp
@@ -43,4 +43,9 @@ gdb_load ${binfile}
runto_main
+gdb_test "b [gdb_get_line_number {breakpoint here} ${testfile}.cc ]" \
+ ".*Breakpoint .*call-c.*"
+
gdb_test "print foo(1)" "\\\$$decimal = 1"
+gdb_test "continue" ".*breakpoint here.*" "continue to bp"
+gdb_test "print rf->func()" "\\\$$decimal = 1"