From: xscript Date: Fri, 29 Apr 2011 00:32:56 +0000 (+0200) Subject: Move tests in cedet/semantic X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=9ec7a1b8d19ef05583d48dee4e63d850aa3412cf;p=emacs.git Move tests in cedet/semantic --- diff --git a/test/manual/cedet/cedet/semantic/tests/testtemplates.cpp b/test/manual/cedet/cedet/semantic/tests/testtemplates.cpp new file mode 100644 index 00000000000..fde8de55cc4 --- /dev/null +++ b/test/manual/cedet/cedet/semantic/tests/testtemplates.cpp @@ -0,0 +1,90 @@ +// Templates Test file: +// Written by 'Raf' + +template +class read_ref { +public: + const T* read_ref_member_one( T); + const V* read_ref_member_two(); +}; + +namespace NS { + template + class ref { + public: + read_ref operator->() { + m_// -1- + ; + // #1# ( "m_datas" ) + } + + private: + T m_datas[U]; + }; + +} + +class FooOne { +public: + int fooOneMember(); +}; + +class FooTwo { +public: + int fooTwoMember(); +}; + +class FooThree { +public: + int fooThreeMember(); + + FooOne * operator->(); +}; + +typedef ref Test; + +using NS; + +void +main(void) { + ref v; + + v->read_ref_member_one()-> // -2- + ; + // #2# ( "fooOneMember" ) + + v->read_ref_member_two()-> // -3- + ; + // #3# ( "fooTwoMember" ) + + v-> // -4- + ; + // #4# ( "read_ref_member_one" "read_ref_member_two" ) + + Test t; + + t->read_ref_member_two()-> // -5- + ; + // #5# ( "fooTwoMember" ) + + ref v2; + + v2->read_ref_member_two()-> // -6- + ; + // #6# ( "fooOneMember" ) + + /* Try all these things by also specifying the namespace in the name. */ + NS::ref v3; + + v3->read_ref_member_one()-> // -7- + ; + // #7# ( "fooOneMember" ) + + v3->read_ref_member_two()-> // -8- + ; + // #8# ( "fooTwoMember" ) + + v3->read_ref_member_two// @1@ 5 + ; + +}