aboutsummaryrefslogtreecommitdiff
path: root/gdb/testsuite/gdb.cp
diff options
context:
space:
mode:
authorTom Tromey <tromey@redhat.com>2009-02-02 21:50:13 +0000
committerTom Tromey <tromey@redhat.com>2009-02-02 21:50:13 +0000
commita42952252f6cfaf3b84072997bd187c39b2088bb (patch)
tree9840ada8cc7928d2d48160f6ffb437564cfcff47 /gdb/testsuite/gdb.cp
parent72a80a16c635aeea4fc0e13364de95cc9b265170 (diff)
downloadgdb-a42952252f6cfaf3b84072997bd187c39b2088bb.zip
gdb-a42952252f6cfaf3b84072997bd187c39b2088bb.tar.gz
gdb-a42952252f6cfaf3b84072997bd187c39b2088bb.tar.bz2
gdb
PR exp/9059: * valops.c (find_overload_match): Follow typedefs before taking address of object argument. gdb/testsuite PR exp/9059: * gdb.cp/call-c.exp: Add regression test. * gdb.cp/call-c.cc (FooHandle): New typedef. (main): New variable 'handle'.
Diffstat (limited to 'gdb/testsuite/gdb.cp')
-rw-r--r--gdb/testsuite/gdb.cp/call-c.cc3
-rw-r--r--gdb/testsuite/gdb.cp/call-c.exp3
2 files changed, 6 insertions, 0 deletions
diff --git a/gdb/testsuite/gdb.cp/call-c.cc b/gdb/testsuite/gdb.cp/call-c.cc
index 1c54b89..cc90993 100644
--- a/gdb/testsuite/gdb.cp/call-c.cc
+++ b/gdb/testsuite/gdb.cp/call-c.cc
@@ -28,11 +28,14 @@ struct Foo {
int x_;
};
+typedef Foo *FooHandle;
+
int main()
{
Foo f;
Foo *pf = &f;
Foo* &rf = pf;
+ FooHandle handle = 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 cb3b945..a80f4dd 100644
--- a/gdb/testsuite/gdb.cp/call-c.exp
+++ b/gdb/testsuite/gdb.cp/call-c.exp
@@ -49,3 +49,6 @@ gdb_test "b [gdb_get_line_number {breakpoint here} ${testfile}.cc ]" \
gdb_test "print foo(1)" "\\\$$decimal = 1"
gdb_test "continue" ".*breakpoint here.*" "continue to bp"
gdb_test "print rf->func()" "\\\$$decimal = 1"
+
+# Regression test for method call via a typedef.
+gdb_test "print handle->func()" "\\\$$decimal = 1"