view gcc/testsuite/g++.dg/ipa/pr68851.C @ 111:04ced10e8804

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

// { dg-do compile }
// { dg-options "-O3" }

class A;
class B {
public:
  operator A *() const;
};
class A {
public:
  virtual bool isFormControlElement() const {}
};
class C {
  struct D {
    B element;
  };
  bool checkPseudoClass(const D &, int &) const;
};
class F {
  virtual bool isFormControlElement() const;
};
class G : A, F {
  bool isFormControlElement() const {}
};
bool C::checkPseudoClass(const D &p1, int &) const {
  A &a = *p1.element;
  a.isFormControlElement();
  a.isFormControlElement() || a.isFormControlElement();
}