line |
true |
false |
branch |
26
|
0 |
14 |
class Test : public panda::Refcnt { |
45
|
1 |
0 |
function f = &void_func; |
46
|
1 |
0 |
REQUIRE(true); |
|
1 |
0 |
REQUIRE(true); |
|
1 |
0 |
REQUIRE(true); |
|
1 |
0 |
REQUIRE(true); |
|
0 |
0 |
REQUIRE(true); |
|
0 |
0 |
REQUIRE(true); |
50
|
1 |
0 |
function f; |
51
|
1 |
0 |
f = &plus_one; |
|
1 |
0 |
f = &plus_one; |
52
|
1 |
0 |
REQUIRE(f(1) == 2); |
|
1 |
0 |
REQUIRE(f(1) == 2); |
|
1 |
0 |
REQUIRE(f(1) == 2); |
|
1 |
0 |
REQUIRE(f(1) == 2); |
|
1 |
0 |
REQUIRE(f(1) == 2); |
|
1 |
0 |
REQUIRE(f(1) == 2); |
|
0 |
0 |
REQUIRE(f(1) == 2); |
|
0 |
0 |
REQUIRE(f(1) == 2); |
56
|
1 |
0 |
function f; |
57
|
1 |
0 |
f = plus_one; |
|
1 |
0 |
f = plus_one; |
58
|
1 |
0 |
REQUIRE(f(1) == 2); |
|
1 |
0 |
REQUIRE(f(1) == 2); |
|
1 |
0 |
REQUIRE(f(1) == 2); |
|
1 |
0 |
REQUIRE(f(1) == 2); |
|
1 |
0 |
REQUIRE(f(1) == 2); |
|
1 |
0 |
REQUIRE(f(1) == 2); |
|
0 |
0 |
REQUIRE(f(1) == 2); |
|
0 |
0 |
REQUIRE(f(1) == 2); |
63
|
1 |
0 |
function f = [&](){return a;}; |
64
|
1 |
0 |
REQUIRE(f() == 13); |
|
1 |
0 |
REQUIRE(f() == 13); |
|
1 |
0 |
REQUIRE(f() == 13); |
|
1 |
0 |
REQUIRE(f() == 13); |
|
1 |
0 |
REQUIRE(f() == 13); |
|
1 |
0 |
REQUIRE(f() == 13); |
|
0 |
0 |
REQUIRE(f() == 13); |
|
0 |
0 |
REQUIRE(f() == 13); |
68
|
1 |
0 |
iptr t = new Test(); |
|
1 |
0 |
iptr t = new Test(); |
70
|
1 |
0 |
auto m = make_function(&Test::bar, t); |
71
|
1 |
0 |
REQUIRE(m() == 54); |
|
1 |
0 |
REQUIRE(m() == 54); |
|
1 |
0 |
REQUIRE(m() == 54); |
|
1 |
0 |
REQUIRE(m() == 54); |
|
1 |
0 |
REQUIRE(m() == 54); |
|
1 |
0 |
REQUIRE(m() == 54); |
|
0 |
0 |
REQUIRE(m() == 54); |
|
0 |
0 |
REQUIRE(m() == 54); |
75
|
1 |
0 |
iptr t = new Test(); |
|
1 |
0 |
iptr t = new Test(); |
77
|
1 |
0 |
auto f = make_function(&Test::bar, t); |
78
|
1 |
0 |
REQUIRE(f() == 54); |
|
1 |
0 |
REQUIRE(f() == 54); |
|
1 |
0 |
REQUIRE(f() == 54); |
|
1 |
0 |
REQUIRE(f() == 54); |
|
1 |
0 |
REQUIRE(f() == 54); |
|
1 |
0 |
REQUIRE(f() == 54); |
|
0 |
0 |
REQUIRE(f() == 54); |
|
0 |
0 |
REQUIRE(f() == 54); |
80
|
1 |
0 |
f = &foo2; |
|
1 |
0 |
f = &foo2; |
81
|
1 |
0 |
REQUIRE(f() == 1); |
|
1 |
0 |
REQUIRE(f() == 1); |
|
1 |
0 |
REQUIRE(f() == 1); |
|
1 |
0 |
REQUIRE(f() == 1); |
|
1 |
0 |
REQUIRE(f() == 1); |
|
1 |
0 |
REQUIRE(f() == 1); |
|
0 |
0 |
REQUIRE(f() == 1); |
|
0 |
0 |
REQUIRE(f() == 1); |
84
|
1 |
0 |
f = [&](){return a;}; |
|
1 |
0 |
f = [&](){return a;}; |
85
|
1 |
0 |
REQUIRE(f() == 13); |
|
1 |
0 |
REQUIRE(f() == 13); |
|
1 |
0 |
REQUIRE(f() == 13); |
|
1 |
0 |
REQUIRE(f() == 13); |
|
1 |
0 |
REQUIRE(f() == 13); |
|
1 |
0 |
REQUIRE(f() == 13); |
|
0 |
0 |
REQUIRE(f() == 13); |
|
0 |
0 |
REQUIRE(f() == 13); |
89
|
1 |
0 |
function f1_void = &void_func; |
90
|
1 |
0 |
function f2_void = &void_func; |
91
|
1 |
0 |
function f3_void = &void_func2; |
93
|
1 |
0 |
REQUIRE(f1_void == f2_void); |
|
1 |
0 |
REQUIRE(f1_void == f2_void); |
|
1 |
0 |
REQUIRE(f1_void == f2_void); |
|
1 |
0 |
REQUIRE(f1_void == f2_void); |
|
1 |
0 |
REQUIRE(f1_void == f2_void); |
|
0 |
0 |
REQUIRE(f1_void == f2_void); |
|
0 |
0 |
REQUIRE(f1_void == f2_void); |
94
|
1 |
0 |
REQUIRE(f1_void != f3_void); |
|
1 |
0 |
REQUIRE(f1_void != f3_void); |
|
1 |
0 |
REQUIRE(f1_void != f3_void); |
|
1 |
0 |
REQUIRE(f1_void != f3_void); |
|
1 |
0 |
REQUIRE(f1_void != f3_void); |
|
0 |
0 |
REQUIRE(f1_void != f3_void); |
|
0 |
0 |
REQUIRE(f1_void != f3_void); |
96
|
1 |
0 |
REQUIRE(f1_void == tmp_abstract_function(&void_func)); |
|
1 |
0 |
REQUIRE(f1_void == tmp_abstract_function(&void_func)); |
|
1 |
0 |
REQUIRE(f1_void == tmp_abstract_function(&void_func)); |
|
1 |
0 |
REQUIRE(f1_void == tmp_abstract_function(&void_func)); |
|
1 |
0 |
REQUIRE(f1_void == tmp_abstract_function(&void_func)); |
|
1 |
0 |
REQUIRE(f1_void == tmp_abstract_function(&void_func)); |
|
0 |
0 |
REQUIRE(f1_void == tmp_abstract_function(&void_func)); |
|
0 |
0 |
REQUIRE(f1_void == tmp_abstract_function(&void_func)); |
97
|
1 |
0 |
REQUIRE(f1_void != tmp_abstract_function(&void_func2)); |
|
1 |
0 |
REQUIRE(f1_void != tmp_abstract_function(&void_func2)); |
|
1 |
0 |
REQUIRE(f1_void != tmp_abstract_function(&void_func2)); |
|
1 |
0 |
REQUIRE(f1_void != tmp_abstract_function(&void_func2)); |
|
1 |
0 |
REQUIRE(f1_void != tmp_abstract_function(&void_func2)); |
|
1 |
0 |
REQUIRE(f1_void != tmp_abstract_function(&void_func2)); |
|
0 |
0 |
REQUIRE(f1_void != tmp_abstract_function(&void_func2)); |
|
0 |
0 |
REQUIRE(f1_void != tmp_abstract_function(&void_func2)); |
108
|
1 |
0 |
function f1(&func_int); |
109
|
1 |
0 |
function f2(&func_int); |
110
|
1 |
0 |
function f3(&func_double); |
111
|
1 |
0 |
function f4(&func_int); |
113
|
1 |
0 |
CHECK(f1 == f2); |
|
1 |
0 |
CHECK(f1 == f2); |
|
1 |
0 |
CHECK(f1 == f2); |
|
1 |
0 |
CHECK(f1 == f2); |
|
1 |
0 |
CHECK(f1 == f2); |
|
0 |
0 |
CHECK(f1 == f2); |
|
0 |
0 |
CHECK(f1 == f2); |
114
|
1 |
0 |
CHECK(f1 != f3); |
|
1 |
0 |
CHECK(f1 != f3); |
|
1 |
0 |
CHECK(f1 != f3); |
|
1 |
0 |
CHECK(f1 != f3); |
|
1 |
0 |
CHECK(f1 != f3); |
|
0 |
0 |
CHECK(f1 != f3); |
|
0 |
0 |
CHECK(f1 != f3); |
115
|
1 |
0 |
CHECK(f2 != f3); |
|
1 |
0 |
CHECK(f2 != f3); |
|
1 |
0 |
CHECK(f2 != f3); |
|
1 |
0 |
CHECK(f2 != f3); |
|
1 |
0 |
CHECK(f2 != f3); |
|
0 |
0 |
CHECK(f2 != f3); |
|
0 |
0 |
CHECK(f2 != f3); |
116
|
1 |
0 |
CHECK(f2 == f4); |
|
1 |
0 |
CHECK(f2 == f4); |
|
1 |
0 |
CHECK(f2 == f4); |
|
1 |
0 |
CHECK(f2 == f4); |
|
1 |
0 |
CHECK(f2 == f4); |
|
0 |
0 |
CHECK(f2 == f4); |
|
0 |
0 |
CHECK(f2 == f4); |
119
|
1 |
0 |
function ff1(i); |
120
|
1 |
0 |
function ff2(i); |
122
|
1 |
0 |
CHECK(ff1 == ff2); |
|
1 |
0 |
CHECK(ff1 == ff2); |
|
1 |
0 |
CHECK(ff1 == ff2); |
|
1 |
0 |
CHECK(ff1 == ff2); |
|
1 |
0 |
CHECK(ff1 == ff2); |
|
0 |
0 |
CHECK(ff1 == ff2); |
|
0 |
0 |
CHECK(ff1 == ff2); |
132
|
1 |
0 |
function f1 = lambda; |
133
|
1 |
0 |
function f2(f1); |
134
|
1 |
0 |
CHECK(f1 == f2); |
|
1 |
0 |
CHECK(f1 == f2); |
|
1 |
0 |
CHECK(f1 == f2); |
|
1 |
0 |
CHECK(f1 == f2); |
|
1 |
0 |
CHECK(f1 == f2); |
|
0 |
0 |
CHECK(f1 == f2); |
|
0 |
0 |
CHECK(f1 == f2); |
135
|
1 |
0 |
CHECK(f2 == f1); |
|
1 |
0 |
CHECK(f2 == f1); |
|
1 |
0 |
CHECK(f2 == f1); |
|
1 |
0 |
CHECK(f2 == f1); |
|
1 |
0 |
CHECK(f2 == f1); |
|
0 |
0 |
CHECK(f2 == f1); |
|
0 |
0 |
CHECK(f2 == f1); |
139
|
1 |
0 |
iptr t = new Test(); |
|
1 |
0 |
iptr t = new Test(); |
140
|
1 |
0 |
auto m1 = make_function(&Test::foo, t); |
141
|
1 |
0 |
auto m2 = make_method(&Test::foo); |
142
|
1 |
0 |
REQUIRE(m1 != *m2); |
|
1 |
0 |
REQUIRE(m1 != *m2); |
|
1 |
0 |
REQUIRE(m1 != *m2); |
|
1 |
0 |
REQUIRE(m1 != *m2); |
|
1 |
0 |
REQUIRE(m1 != *m2); |
|
0 |
0 |
REQUIRE(m1 != *m2); |
|
0 |
0 |
REQUIRE(m1 != *m2); |
144
|
1 |
0 |
m2->bind(t); |
145
|
1 |
0 |
REQUIRE(m1 == function(m2)); |
|
1 |
0 |
REQUIRE(m1 == function(m2)); |
|
1 |
0 |
REQUIRE(m1 == function(m2)); |
|
1 |
0 |
REQUIRE(m1 == function(m2)); |
|
1 |
0 |
REQUIRE(m1 == function(m2)); |
|
1 |
0 |
REQUIRE(m1 == function(m2)); |
|
0 |
0 |
REQUIRE(m1 == function(m2)); |
|
0 |
0 |
REQUIRE(m1 == function(m2)); |
147
|
1 |
0 |
iptr t2 = new Test(); |
|
1 |
0 |
iptr t2 = new Test(); |
148
|
1 |
0 |
m2->bind(t2); |
149
|
1 |
0 |
REQUIRE(m1 != *m2); |
|
1 |
0 |
REQUIRE(m1 != *m2); |
|
1 |
0 |
REQUIRE(m1 != *m2); |
|
1 |
0 |
REQUIRE(m1 != *m2); |
|
1 |
0 |
REQUIRE(m1 != *m2); |
|
0 |
0 |
REQUIRE(m1 != *m2); |
|
0 |
0 |
REQUIRE(m1 != *m2); |
151
|
1 |
0 |
auto m3 = make_method(&Test::foo2); |
152
|
1 |
0 |
REQUIRE(m1 != *m3); |
|
1 |
0 |
REQUIRE(m1 != *m3); |
|
1 |
0 |
REQUIRE(m1 != *m3); |
|
1 |
0 |
REQUIRE(m1 != *m3); |
|
1 |
0 |
REQUIRE(m1 != *m3); |
|
0 |
0 |
REQUIRE(m1 != *m3); |
|
0 |
0 |
REQUIRE(m1 != *m3); |
158
|
1 |
0 |
function l1 = [&](){return a;}; |
159
|
1 |
0 |
auto l2 = l1; |
160
|
1 |
0 |
function l3 = [&](){return a;}; |
162
|
1 |
0 |
REQUIRE(l1 == l2); |
|
1 |
0 |
REQUIRE(l1 == l2); |
|
1 |
0 |
REQUIRE(l1 == l2); |
|
1 |
0 |
REQUIRE(l1 == l2); |
|
1 |
0 |
REQUIRE(l1 == l2); |
|
0 |
0 |
REQUIRE(l1 == l2); |
|
0 |
0 |
REQUIRE(l1 == l2); |
163
|
1 |
0 |
REQUIRE(l1 != l3); |
|
1 |
0 |
REQUIRE(l1 != l3); |
|
1 |
0 |
REQUIRE(l1 != l3); |
|
1 |
0 |
REQUIRE(l1 != l3); |
|
1 |
0 |
REQUIRE(l1 != l3); |
|
0 |
0 |
REQUIRE(l1 != l3); |
|
0 |
0 |
REQUIRE(l1 != l3); |
168
|
1 |
0 |
function l = [&](){return a;}; |
169
|
1 |
0 |
function f = &foo2; |
170
|
1 |
0 |
iptr t = new Test(); |
|
1 |
0 |
iptr t = new Test(); |
171
|
1 |
0 |
auto m = make_function(&Test::bar, t); |
173
|
1 |
0 |
REQUIRE(l != f); |
|
1 |
0 |
REQUIRE(l != f); |
|
1 |
0 |
REQUIRE(l != f); |
|
1 |
0 |
REQUIRE(l != f); |
|
1 |
0 |
REQUIRE(l != f); |
|
0 |
0 |
REQUIRE(l != f); |
|
0 |
0 |
REQUIRE(l != f); |
174
|
1 |
0 |
REQUIRE(m != l); |
|
1 |
0 |
REQUIRE(m != l); |
|
1 |
0 |
REQUIRE(m != l); |
|
1 |
0 |
REQUIRE(m != l); |
|
1 |
0 |
REQUIRE(m != l); |
|
0 |
0 |
REQUIRE(m != l); |
|
0 |
0 |
REQUIRE(m != l); |
175
|
1 |
0 |
REQUIRE(m != f); |
|
1 |
0 |
REQUIRE(m != f); |
|
1 |
0 |
REQUIRE(m != f); |
|
1 |
0 |
REQUIRE(m != f); |
|
1 |
0 |
REQUIRE(m != f); |
|
0 |
0 |
REQUIRE(m != f); |
|
0 |
0 |
REQUIRE(m != f); |
180
|
1 |
0 |
function n; |
181
|
1 |
0 |
function l = [&](){return a;}; |
182
|
1 |
0 |
function f = &foo2; |
183
|
1 |
0 |
iptr t = new Test(); |
|
1 |
0 |
iptr t = new Test(); |
184
|
1 |
0 |
auto m = make_function(&Test::bar, t); |
186
|
1 |
0 |
REQUIRE_FALSE(l == n); |
|
1 |
0 |
REQUIRE_FALSE(l == n); |
|
1 |
0 |
REQUIRE_FALSE(l == n); |
|
1 |
0 |
REQUIRE_FALSE(l == n); |
|
1 |
0 |
REQUIRE_FALSE(l == n); |
|
1 |
0 |
REQUIRE_FALSE(l == n); |
|
0 |
0 |
REQUIRE_FALSE(l == n); |
|
0 |
0 |
REQUIRE_FALSE(l == n); |
187
|
1 |
0 |
REQUIRE_FALSE(f == n); |
|
1 |
0 |
REQUIRE_FALSE(f == n); |
|
1 |
0 |
REQUIRE_FALSE(f == n); |
|
1 |
0 |
REQUIRE_FALSE(f == n); |
|
1 |
0 |
REQUIRE_FALSE(f == n); |
|
1 |
0 |
REQUIRE_FALSE(f == n); |
|
0 |
0 |
REQUIRE_FALSE(f == n); |
|
0 |
0 |
REQUIRE_FALSE(f == n); |
188
|
1 |
0 |
REQUIRE_FALSE(m == n); |
|
1 |
0 |
REQUIRE_FALSE(m == n); |
|
1 |
0 |
REQUIRE_FALSE(m == n); |
|
1 |
0 |
REQUIRE_FALSE(m == n); |
|
1 |
0 |
REQUIRE_FALSE(m == n); |
|
1 |
0 |
REQUIRE_FALSE(m == n); |
|
0 |
0 |
REQUIRE_FALSE(m == n); |
|
0 |
0 |
REQUIRE_FALSE(m == n); |
190
|
1 |
0 |
REQUIRE_FALSE(n == l); |
|
1 |
0 |
REQUIRE_FALSE(n == l); |
|
1 |
0 |
REQUIRE_FALSE(n == l); |
|
1 |
0 |
REQUIRE_FALSE(n == l); |
|
1 |
0 |
REQUIRE_FALSE(n == l); |
|
1 |
0 |
REQUIRE_FALSE(n == l); |
|
0 |
0 |
REQUIRE_FALSE(n == l); |
|
0 |
0 |
REQUIRE_FALSE(n == l); |
191
|
1 |
0 |
REQUIRE_FALSE(n == f); |
|
1 |
0 |
REQUIRE_FALSE(n == f); |
|
1 |
0 |
REQUIRE_FALSE(n == f); |
|
1 |
0 |
REQUIRE_FALSE(n == f); |
|
1 |
0 |
REQUIRE_FALSE(n == f); |
|
1 |
0 |
REQUIRE_FALSE(n == f); |
|
0 |
0 |
REQUIRE_FALSE(n == f); |
|
0 |
0 |
REQUIRE_FALSE(n == f); |
192
|
1 |
0 |
REQUIRE_FALSE(n == m); |
|
1 |
0 |
REQUIRE_FALSE(n == m); |
|
1 |
0 |
REQUIRE_FALSE(n == m); |
|
1 |
0 |
REQUIRE_FALSE(n == m); |
|
1 |
0 |
REQUIRE_FALSE(n == m); |
|
1 |
0 |
REQUIRE_FALSE(n == m); |
|
0 |
0 |
REQUIRE_FALSE(n == m); |
|
0 |
0 |
REQUIRE_FALSE(n == m); |
196
|
1 |
0 |
function f1 = Test(1); |
|
1 |
0 |
function f1 = Test(1); |
197
|
1 |
0 |
function f2 = Test(2); |
|
1 |
0 |
function f2 = Test(2); |
198
|
1 |
0 |
function f11 = Test(1); |
|
1 |
0 |
function f11 = Test(1); |
200
|
1 |
0 |
REQUIRE(f1 != f2); |
|
1 |
0 |
REQUIRE(f1 != f2); |
|
1 |
0 |
REQUIRE(f1 != f2); |
|
1 |
0 |
REQUIRE(f1 != f2); |
|
1 |
0 |
REQUIRE(f1 != f2); |
|
0 |
0 |
REQUIRE(f1 != f2); |
|
0 |
0 |
REQUIRE(f1 != f2); |
201
|
1 |
0 |
REQUIRE(f1 == f11); |
|
1 |
0 |
REQUIRE(f1 == f11); |
|
1 |
0 |
REQUIRE(f1 == f11); |
|
1 |
0 |
REQUIRE(f1 == f11); |
|
1 |
0 |
REQUIRE(f1 == f11); |
|
0 |
0 |
REQUIRE(f1 == f11); |
|
0 |
0 |
REQUIRE(f1 == f11); |
203
|
1 |
0 |
auto tmp1 = tmp_abstract_function(Test(1)); // inited from rvalue |
|
1 |
0 |
auto tmp1 = tmp_abstract_function(Test(1)); // inited from rvalue |
204
|
1 |
0 |
REQUIRE(f1 == tmp1); |
|
1 |
0 |
REQUIRE(f1 == tmp1); |
|
1 |
0 |
REQUIRE(f1 == tmp1); |
|
1 |
0 |
REQUIRE(f1 == tmp1); |
|
1 |
0 |
REQUIRE(f1 == tmp1); |
|
0 |
0 |
REQUIRE(f1 == tmp1); |
|
0 |
0 |
REQUIRE(f1 == tmp1); |
210
|
1 |
0 |
function f = Tracer(10); |
211
|
1 |
0 |
auto f2 = f; |
212
|
1 |
0 |
f(11); |
213
|
1 |
0 |
f2(12); |
215
|
1 |
0 |
REQUIRE(Tracer::ctor_calls == 1); // 1 for temporary object Tracer(10); |
|
1 |
0 |
REQUIRE(Tracer::ctor_calls == 1); // 1 for temporary object Tracer(10); |
|
1 |
0 |
REQUIRE(Tracer::ctor_calls == 1); // 1 for temporary object Tracer(10); |
|
1 |
0 |
REQUIRE(Tracer::ctor_calls == 1); // 1 for temporary object Tracer(10); |
|
1 |
0 |
REQUIRE(Tracer::ctor_calls == 1); // 1 for temporary object Tracer(10); |
|
0 |
0 |
REQUIRE(Tracer::ctor_calls == 1); // 1 for temporary object Tracer(10); |
|
0 |
0 |
REQUIRE(Tracer::ctor_calls == 1); // 1 for temporary object Tracer(10); |
216
|
1 |
0 |
REQUIRE(Tracer::copy_calls == 0); |
|
1 |
0 |
REQUIRE(Tracer::copy_calls == 0); |
|
1 |
0 |
REQUIRE(Tracer::copy_calls == 0); |
|
1 |
0 |
REQUIRE(Tracer::copy_calls == 0); |
|
1 |
0 |
REQUIRE(Tracer::copy_calls == 0); |
|
0 |
0 |
REQUIRE(Tracer::copy_calls == 0); |
|
0 |
0 |
REQUIRE(Tracer::copy_calls == 0); |
217
|
1 |
0 |
REQUIRE(Tracer::move_calls == 1); // 1 construction from tmp object function f = Tracer(10); |
|
1 |
0 |
REQUIRE(Tracer::move_calls == 1); // 1 construction from tmp object function f = Tracer(10); |
|
1 |
0 |
REQUIRE(Tracer::move_calls == 1); // 1 construction from tmp object function f = Tracer(10); |
|
1 |
0 |
REQUIRE(Tracer::move_calls == 1); // 1 construction from tmp object function f = Tracer(10); |
|
1 |
0 |
REQUIRE(Tracer::move_calls == 1); // 1 construction from tmp object function f = Tracer(10); |
|
0 |
0 |
REQUIRE(Tracer::move_calls == 1); // 1 construction from tmp object function f = Tracer(10); |
|
0 |
0 |
REQUIRE(Tracer::move_calls == 1); // 1 construction from tmp object function f = Tracer(10); |
218
|
1 |
0 |
REQUIRE(Tracer::dtor_calls == 2); |
|
1 |
0 |
REQUIRE(Tracer::dtor_calls == 2); |
|
1 |
0 |
REQUIRE(Tracer::dtor_calls == 2); |
|
1 |
0 |
REQUIRE(Tracer::dtor_calls == 2); |
|
1 |
0 |
REQUIRE(Tracer::dtor_calls == 2); |
|
0 |
0 |
REQUIRE(Tracer::dtor_calls == 2); |
|
0 |
0 |
REQUIRE(Tracer::dtor_calls == 2); |
224
|
1 |
0 |
}; |
225
|
1 |
0 |
REQUIRE(cb(3).value_or(42) == 3); |
|
1 |
0 |
REQUIRE(cb(3).value_or(42) == 3); |
|
1 |
0 |
REQUIRE(cb(3).value_or(42) == 3); |
|
1 |
0 |
REQUIRE(cb(3).value_or(42) == 3); |
|
1 |
0 |
REQUIRE(cb(3).value_or(42) == 3); |
|
1 |
0 |
REQUIRE(cb(3).value_or(42) == 3); |
|
0 |
0 |
REQUIRE(cb(3).value_or(42) == 3); |
|
0 |
0 |
REQUIRE(cb(3).value_or(42) == 3); |
231
|
1 |
0 |
}; |
232
|
1 |
0 |
REQUIRE(cb(3) == 3.0); |
|
1 |
0 |
REQUIRE(cb(3) == 3.0); |
|
1 |
0 |
REQUIRE(cb(3) == 3.0); |
|
1 |
0 |
REQUIRE(cb(3) == 3.0); |
|
1 |
0 |
REQUIRE(cb(3) == 3.0); |
|
1 |
0 |
REQUIRE(cb(3) == 3.0); |
|
0 |
0 |
REQUIRE(cb(3) == 3.0); |
|
0 |
0 |
REQUIRE(cb(3) == 3.0); |
238
|
1 |
0 |
}; |
239
|
1 |
0 |
REQUIRE(cb(3) == 10); |
|
1 |
0 |
REQUIRE(cb(3) == 10); |
|
1 |
0 |
REQUIRE(cb(3) == 10); |
|
1 |
0 |
REQUIRE(cb(3) == 10); |
|
1 |
0 |
REQUIRE(cb(3) == 10); |
|
1 |
0 |
REQUIRE(cb(3) == 10); |
|
0 |
0 |
REQUIRE(cb(3) == 10); |
|
0 |
0 |
REQUIRE(cb(3) == 10); |
242
|
0 |
0 |
virtual ~Base(){} |
243
|
0 |
0 |
virtual panda::string name() { return "base";} |
245
|
0 |
1 |
struct Derrived : Base { |
246
|
2 |
0 |
virtual panda::string name() override { return "override";} |
253
|
1 |
0 |
}; |
255
|
1 |
0 |
REQUIRE(cb(b).name() == b.name()); |
|
1 |
0 |
REQUIRE(cb(b).name() == b.name()); |
|
1 |
0 |
REQUIRE(cb(b).name() == b.name()); |
|
1 |
0 |
REQUIRE(cb(b).name() == b.name()); |
|
1 |
0 |
REQUIRE(cb(b).name() == b.name()); |
|
1 |
0 |
REQUIRE(cb(b).name() == b.name()); |
|
1 |
0 |
REQUIRE(cb(b).name() == b.name()); |
|
1 |
0 |
REQUIRE(cb(b).name() == b.name()); |
|
0 |
0 |
REQUIRE(cb(b).name() == b.name()); |
|
0 |
0 |
REQUIRE(cb(b).name() == b.name()); |
264
|
1 |
0 |
return wrapper; |
272
|
1 |
0 |
auto wrapper = lamda(); |
273
|
1 |
0 |
REQUIRE(wrapper(10) == 11); |
|
1 |
0 |
REQUIRE(wrapper(10) == 11); |
|
1 |
0 |
REQUIRE(wrapper(10) == 11); |
|
1 |
0 |
REQUIRE(wrapper(10) == 11); |
|
1 |
0 |
REQUIRE(wrapper(10) == 11); |
|
1 |
0 |
REQUIRE(wrapper(10) == 11); |
|
0 |
0 |
REQUIRE(wrapper(10) == 11); |
|
0 |
0 |
REQUIRE(wrapper(10) == 11); |
276
|
1 |
0 |
REQUIRE(Tracer::ctor_total() == Tracer::dtor_calls); |
|
1 |
0 |
REQUIRE(Tracer::ctor_total() == Tracer::dtor_calls); |
|
1 |
0 |
REQUIRE(Tracer::ctor_total() == Tracer::dtor_calls); |
|
1 |
0 |
REQUIRE(Tracer::ctor_total() == Tracer::dtor_calls); |
|
1 |
0 |
REQUIRE(Tracer::ctor_total() == Tracer::dtor_calls); |
|
0 |
0 |
REQUIRE(Tracer::ctor_total() == Tracer::dtor_calls); |
|
0 |
0 |
REQUIRE(Tracer::ctor_total() == Tracer::dtor_calls); |
283
|
1 |
0 |
function outer; |
286
|
1 |
1 |
if (a == 1) { |
293
|
1 |
0 |
outer = inner; |
|
1 |
0 |
outer = inner; |
295
|
1 |
0 |
outer(); |
296
|
1 |
0 |
REQUIRE(b == 43); |
|
1 |
0 |
REQUIRE(b == 43); |
|
1 |
0 |
REQUIRE(b == 43); |
|
1 |
0 |
REQUIRE(b == 43); |
|
1 |
0 |
REQUIRE(b == 43); |
|
0 |
0 |
REQUIRE(b == 43); |
|
0 |
0 |
REQUIRE(b == 43); |
301
|
1 |
0 |
function outer; |
307
|
1 |
0 |
outer = inner; |
|
1 |
0 |
outer = inner; |
309
|
1 |
0 |
outer(1); |
310
|
1 |
0 |
REQUIRE(a == 1); |
|
1 |
0 |
REQUIRE(a == 1); |
|
1 |
0 |
REQUIRE(a == 1); |
|
1 |
0 |
REQUIRE(a == 1); |
|
1 |
0 |
REQUIRE(a == 1); |
|
0 |
0 |
REQUIRE(a == 1); |
|
0 |
0 |
REQUIRE(a == 1); |
316
|
1 |
0 |
function f = fptr; |
317
|
1 |
0 |
REQUIRE(!f); |
|
1 |
0 |
REQUIRE(!f); |
|
1 |
0 |
REQUIRE(!f); |
|
1 |
0 |
REQUIRE(!f); |
|
0 |
0 |
REQUIRE(!f); |
|
0 |
0 |
REQUIRE(!f); |
323
|
1 |
0 |
auto m = make_function(meth); |
324
|
1 |
0 |
REQUIRE(!m); |
|
1 |
0 |
REQUIRE(!m); |
|
1 |
0 |
REQUIRE(!m); |
|
1 |
0 |
REQUIRE(!m); |
|
0 |
0 |
REQUIRE(!m); |
|
0 |
0 |
REQUIRE(!m); |
337
|
1 |
0 |
function f = s; |
338
|
1 |
0 |
REQUIRE(!f); |
|
1 |
0 |
REQUIRE(!f); |
|
1 |
0 |
REQUIRE(!f); |
|
1 |
0 |
REQUIRE(!f); |
|
0 |
0 |
REQUIRE(!f); |
|
0 |
0 |
REQUIRE(!f); |
340
|
1 |
0 |
f = s; |
|
1 |
0 |
f = s; |
341
|
1 |
0 |
REQUIRE(f); |
|
1 |
0 |
REQUIRE(f); |
|
1 |
0 |
REQUIRE(f); |
|
1 |
0 |
REQUIRE(f); |
|
0 |
0 |
REQUIRE(f); |
|
0 |
0 |
REQUIRE(f); |
349
|
1 |
0 |
}; |
350
|
1 |
0 |
ff(val); |
359
|
1 |
0 |
s.method(20); |
360
|
1 |
0 |
REQUIRE(s.a == 20); |
|
1 |
0 |
REQUIRE(s.a == 20); |
|
1 |
0 |
REQUIRE(s.a == 20); |
|
1 |
0 |
REQUIRE(s.a == 20); |
|
1 |
0 |
REQUIRE(s.a == 20); |
|
0 |
0 |
REQUIRE(s.a == 20); |
|
0 |
0 |
REQUIRE(s.a == 20); |
368
|
1 |
0 |
}; |
369
|
1 |
0 |
int b = f(42); |
370
|
1 |
0 |
REQUIRE(a == 20); |
|
1 |
0 |
REQUIRE(a == 20); |
|
1 |
0 |
REQUIRE(a == 20); |
|
1 |
0 |
REQUIRE(a == 20); |
|
1 |
0 |
REQUIRE(a == 20); |
|
0 |
0 |
REQUIRE(a == 20); |
|
0 |
0 |
REQUIRE(a == 20); |
371
|
1 |
0 |
REQUIRE(b == 21); |
|
1 |
0 |
REQUIRE(b == 21); |
|
1 |
0 |
REQUIRE(b == 21); |
|
1 |
0 |
REQUIRE(b == 21); |
|
1 |
0 |
REQUIRE(b == 21); |
|
0 |
0 |
REQUIRE(b == 21); |
|
0 |
0 |
REQUIRE(b == 21); |
376
|
1 |
0 |
}; |
377
|
1 |
0 |
CHECK(f2(123) == 111); |
|
1 |
0 |
CHECK(f2(123) == 111); |
|
1 |
0 |
CHECK(f2(123) == 111); |
|
1 |
0 |
CHECK(f2(123) == 111); |
|
1 |
0 |
CHECK(f2(123) == 111); |
|
1 |
0 |
CHECK(f2(123) == 111); |
|
0 |
0 |
CHECK(f2(123) == 111); |
|
0 |
0 |
CHECK(f2(123) == 111); |
380
|
1 |
0 |
REQUIRE(sizeof...(args) == 1); |
|
1 |
0 |
REQUIRE(sizeof...(args) == 1); |
|
1 |
0 |
REQUIRE(sizeof...(args) == 1); |
|
1 |
0 |
REQUIRE(sizeof...(args) == 1); |
|
1 |
0 |
REQUIRE(sizeof...(args) == 1); |
|
0 |
0 |
REQUIRE(sizeof...(args) == 1); |
|
0 |
0 |
REQUIRE(sizeof...(args) == 1); |
382
|
1 |
0 |
}; |
383
|
1 |
0 |
CHECK(f3(123) == 111); |
|
1 |
0 |
CHECK(f3(123) == 111); |
|
1 |
0 |
CHECK(f3(123) == 111); |
|
1 |
0 |
CHECK(f3(123) == 111); |
|
1 |
0 |
CHECK(f3(123) == 111); |
|
1 |
0 |
CHECK(f3(123) == 111); |
|
0 |
0 |
CHECK(f3(123) == 111); |
|
0 |
0 |
CHECK(f3(123) == 111); |
384
|
18 |
0 |
} |
|
18 |
0 |
} |