view gcc/testsuite/g++.old-deja/g++.jason/access16.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  }
// Bug: g++ uses the same binfo for the a subobject of c and the a subobject
// of b, so basetype_paths get bashed improperly.

class a {
protected:
	virtual void foo() { }	// { dg-bogus "" } 
};

class b : public virtual a {};

class c : public b {
public:
	void bar() { b::foo(); } // { dg-bogus "" } 
};

int main() {
	c test;
	test.bar();
}