| 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 |
} |