summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNick Roberts <nickrob@snap.net.nz>2007-01-04 23:08:56 +0000
committerNick Roberts <nickrob@snap.net.nz>2007-01-04 23:08:56 +0000
commit1af9bb567357cb75b161ef39cab2eb2eca7bf114 (patch)
tree7f5cfce6b3be9f2f9cd6a83179899b5c0a0801a3
parentbbe4643acba4ecff267ff8d8bb92bcf8a650dff1 (diff)
downloadgdb-1af9bb567357cb75b161ef39cab2eb2eca7bf114.tar.gz
mi-var-cp.exp: New test for references to pointers.
mi-var-cp.cc: (reference_to_pointer): New procedure for above test.
-rw-r--r--gdb/testsuite/gdb.mi/mi-var-cp.cc24
-rw-r--r--gdb/testsuite/gdb.mi/mi-var-cp.exp1
2 files changed, 25 insertions, 0 deletions
diff --git a/gdb/testsuite/gdb.mi/mi-var-cp.cc b/gdb/testsuite/gdb.mi/mi-var-cp.cc
index 8489b551d21..1fa52b95a8b 100644
--- a/gdb/testsuite/gdb.mi/mi-var-cp.cc
+++ b/gdb/testsuite/gdb.mi/mi-var-cp.cc
@@ -70,10 +70,34 @@ void base_in_reference_test_main ()
base_in_reference_test (s);
}
+int reference_to_pointer ()
+{
+ S s, *ptr_s, *& rptr_s = ptr_s;
+ s.i = 67;
+ s.j = 89;
+ ptr_s = &s;
+ /*: BEGIN: reference_to_pointer :*/
+ return 99;
+ /*:
+ mi_create_varobj RPTR rptr_s "create varobj for rptr_s"
+
+ mi_list_varobj_children RPTR {{RPTR.public public 2}} \
+ "list public child of RPTR"
+
+ mi_list_varobj_children RPTR.public \
+ {{RPTR.public.i i 0 int}
+ {RPTR.public.j j 0 int}} "list children of reference to pointer"
+
+ mi_check_varobj_value RPTR.public.i 67 "check i member"
+ mi_check_varobj_value RPTR.public.j 89 "check j member"
+ :*/
+ /*: END: reference_to_pointer :*/
+}
int main ()
{
reference_update_tests ();
base_in_reference_test_main ();
+ reference_to_pointer ();
return 0;
}
diff --git a/gdb/testsuite/gdb.mi/mi-var-cp.exp b/gdb/testsuite/gdb.mi/mi-var-cp.exp
index 758230114b9..e3efdd18064 100644
--- a/gdb/testsuite/gdb.mi/mi-var-cp.exp
+++ b/gdb/testsuite/gdb.mi/mi-var-cp.exp
@@ -43,6 +43,7 @@ mi_prepare_inline_tests $srcfile
mi_run_inline_test reference_update
mi_run_inline_test base_in_reference
+mi_run_inline_test reference_to_pointer
mi_gdb_exit
return 0