Lines Matching refs:C1
31 struct C1 struct
36 explicit C1(int id) : B(id-2), id_(id) {count++;} in C1() function
37 C1(const C1& a) : B(a.id_-2), id_(a.id_) {count++;} in C1() function
38 ~C1() {count--;} in ~C1() argument
41 int C1::count = 0;
56 : C1, C2
60 explicit A(int id) : C1(id-1), C2(id-2), id_(id) {count++;} in A()
61 A(const A& a) : C1(a.id_-1), C2(a.id_-2), id_(a.id_) {count++;} in A()
70 assert(C1::count == 0); in f1()
75 assert(C1::count == 1); in f1()
80 assert(static_cast<C1&>(a).id_ == 4); in f1()
82 assert(static_cast<B&>(static_cast<C1&>(a)).id_ == 2); in f1()
93 assert(C1::count == 0); in f2()
102 assert(static_cast<const C1&>(a).id_ == 4); in f2()
104 assert(static_cast<const B&>(static_cast<const C1&>(a)).id_ == 2); in f2()
108 catch (const C1&) in f2()
127 assert(C1::count == 0); in f3()
137 catch (const C1& c1) // can catch C1 in f3()
154 assert(C1::count == 0); in f4()
170 catch (const C1&) in f4()
187 assert(C1::count == 0); in main()