Lines Matching refs:Derived

4 struct Derived : Base { }; // expected-note{{candidate constructor (the implicit copy constructor) not viable}}
7 struct Diamond : Derived, Derived2 { };
14 operator Derived&() const;
18 operator Derived&(); // expected-note{{candidate function}}
31 operator Derived() const;
35 operator Derived(); // expected-note{{candidate function}}
46 void bind_lvalue_to_lvalue(Base b, Derived d,
47 const Base bc, const Derived dc,
53 Derived &dr1 = d;
54 Derived &dr2 = b; // expected-error{{non-const lvalue reference to type 'Derived' cannot bind to a value of unrelated type 'Base'}}
62 void bind_lvalue_quals(volatile Base b, volatile Derived d,
63 volatile const Base bvc, volatile const Derived dvc,
68 volatile Base &bvr4 = dvc; // expected-error{{binding of reference to type 'volatile Base' to a value of type 'const volatile Derived' drops qualifiers}}
78 Base &br2 = Derived(); // expected-error{{non-const lvalue reference to type 'Base' cannot bind to a temporary of type 'Derived'}}
80 const volatile Base &br4 = Derived(); // expected-error{{volatile lvalue reference to type 'const volatile Base' cannot bind to a temporary of type 'Derived'}}
94 Derived &ndr1 = ConvertibleToDerivedRef();
99 Derived &dr1 = both;
115 const Base &br2 = create<Derived>();
116 const Derived &dr1 = create<Base>(); // expected-error{{no viable conversion}}
119 const Base &br4 = create<const Derived>();
122 const Base &br6 = create<const volatile Derived>(); // expected-error{{binding of reference to type 'const Base' to a value of type 'const volatile Derived' drops qualifiers}}
133 const Derived &dr1 = both;