view gcc/testsuite/g++.old-deja/g++.jason/access17.C @ 131:84e7813d76e9

gcc-8.2
author mir3636
date Thu, 25 Oct 2018 07:37:49 +0900
parents 04ced10e8804
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 "" }