view gcc/testsuite/g++.old-deja/g++.jason/access17.C @ 111:04ced10e8804

gcc 7
author kono
date Fri, 27 Oct 2017 22:46:09 +0900
parents
children
line wrap: on
line source

// { dg-do assemble  }
// Make sure definitions of static members have the right access.

struct A {
protected:
  int i;                        // { dg-message "" } private
  int f ();			// { dg-message "" } 
};

struct B: public A {
  static int A::*p;
  static int (A::*fp)();
};

int A::* B::p = &A::i;         // { dg-error "" } 
int (A::* B::fp)() = &A::f;    // { dg-error "" }

struct C {
  static int A::*p;
  static int (A::*fp)();
};

int A::* C::p = &A::i;		// { dg-error "" } 
int (A::* C::fp)() = &A::f;	// { dg-error "" }