annotate gcc/testsuite/g++.dg/ipa/pr68851.C @ 131:84e7813d76e9

gcc-8.2
author mir3636
date Thu, 25 Oct 2018 07:37:49 +0900
parents 04ced10e8804
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
111
kono
parents:
diff changeset
1 // { dg-do compile }
kono
parents:
diff changeset
2 // { dg-options "-O3" }
kono
parents:
diff changeset
3
kono
parents:
diff changeset
4 class A;
kono
parents:
diff changeset
5 class B {
kono
parents:
diff changeset
6 public:
kono
parents:
diff changeset
7 operator A *() const;
kono
parents:
diff changeset
8 };
kono
parents:
diff changeset
9 class A {
kono
parents:
diff changeset
10 public:
131
84e7813d76e9 gcc-8.2
mir3636
parents: 111
diff changeset
11 virtual bool isFormControlElement() const { return false; }
111
kono
parents:
diff changeset
12 };
kono
parents:
diff changeset
13 class C {
kono
parents:
diff changeset
14 struct D {
kono
parents:
diff changeset
15 B element;
kono
parents:
diff changeset
16 };
kono
parents:
diff changeset
17 bool checkPseudoClass(const D &, int &) const;
kono
parents:
diff changeset
18 };
kono
parents:
diff changeset
19 class F {
kono
parents:
diff changeset
20 virtual bool isFormControlElement() const;
kono
parents:
diff changeset
21 };
kono
parents:
diff changeset
22 class G : A, F {
131
84e7813d76e9 gcc-8.2
mir3636
parents: 111
diff changeset
23 bool isFormControlElement() const { return true; }
111
kono
parents:
diff changeset
24 };
kono
parents:
diff changeset
25 bool C::checkPseudoClass(const D &p1, int &) const {
kono
parents:
diff changeset
26 A &a = *p1.element;
kono
parents:
diff changeset
27 a.isFormControlElement();
131
84e7813d76e9 gcc-8.2
mir3636
parents: 111
diff changeset
28 return a.isFormControlElement() || a.isFormControlElement();
111
kono
parents:
diff changeset
29 }