]> oss.titaniummirror.com Git - msp430-gcc.git/blobdiff - gcc/testsuite/g++.old-deja/g++.bugs/900215_02.C
Imported gcc-4.4.3
[msp430-gcc.git] / gcc / testsuite / g++.old-deja / g++.bugs / 900215_02.C
diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900215_02.C b/gcc/testsuite/g++.old-deja/g++.bugs/900215_02.C
deleted file mode 100644 (file)
index 269849e..0000000
+++ /dev/null
@@ -1,47 +0,0 @@
-// g++ 1.36.1 bug 900215_02
-
-// g++ allows global objects (which happen to be pointers to members of some
-// class X)  to be dereferenced without prefix object specifications within
-// member functions of class X.
-
-// In effect, g++ treats any dereference of a pointer-to-member which appears
-// within the context of a member function (and which is not preceeded by
-// either ->* or .*) as if it had been implicitly prefixed with this->*.
-
-// The 2.0 Reference Manual only provides that such implicit prefixing
-// takes place for *members* of the containing class, and *not* for
-// global objects that happen to have certain types (i.e. pointer-to-member
-// of the containing class).
-
-// Also, cfront 2.0 provides implicit this-> prefixes *only* for *members*
-// of the containing class.
-
-// Cfront 2.0 passes this test.
-
-// keywords: member pointers, this, dereference, members
-
-struct struct0 {
-  int data_member;
-  void function_member ();
-};
-
-int struct0::*dmp;
-int (struct0::*fmp) ();
-int i;
-
-struct struct1 {
-  int data_member;
-
-  void function_member ();
-};
-
-void struct0::function_member ()
-{
-  i = (this->*fmp) ();         // perfectly legal - for both cfront and g++
-  i = this->*dmp;              // perfectly legal - for both cfront and g++
-
-  i = (*fmp) ();               // ERROR - 
-  i = *dmp;                    // ERROR - 
-}
-
-int main () { return 0; }