[ 0:00] compiling /home/xrockai/src/divine/nightly/test/libcxx/containers/splice_pos_list.pass.cpp [ 0:00] In file included from /home/xrockai/src/divine/nightly/test/libcxx/containers/splice_pos_list.pass.cpp:16: [ 0:00] In file included from /dios/libcxx/include/list:183: [ 0:00] In file included from /dios/libcxx/include/memory:652: [ 0:00] In file included from /dios/libcxx/include/type_traits:417: [ 0:00] In file included from /dios/libcxx/include/cstddef:44: [ 0:00] In file included from /dios/include/stddef.h:10: [ 0:00] In file included from /dios/include/_PDCLIB/int.h:16: [ 0:00] /dios/include/_PDCLIB/cdefs.h:69:10: warning: Unsupported _ _cplusplus (__cplusplus) (too new) (supported: ISO/IEC 14882:1997, ISO/IEC 14882:2011). [ 0:00] #warning Unsupported _ _cplusplus (__cplusplus) (too new) (supported: ISO/IEC 14882:1997, ISO/IEC 14882:2011). [ 0:00] ^ [ 0:00] 1 warning generated. [ 0:01] compiling /dios/lib/config/seqklee.bc [ 0:01] setting up pass: functionmeta, options = [ 0:03] setting up pass: fuse-ctors, options = [ 0:03] KLEE: output directory is "/var/obj/divine-nightly/semidbg/test/__test_work_dir.11/_klee_out" [ 0:06] KLEE: Using Z3 solver backend [ 0:06] WARNING: this target does not support the llvm.stacksave intrinsic. [ 0:06] warning: Linking two modules of different target triples: klee_div_zero_check.bc' is 'x86_64-unknown-linux-gnu' whereas 'klee.bc' is 'x86_64-unknown-none-elf' [ 0:07] [ 0:07] KLEE: WARNING: undefined reference to function: _Z10klee_abortv [ 0:12] KLEE: WARNING: undefined reference to function: __dios_tainted_init [ 0:12] KLEE: WARNING: undefined reference to function: klee_free [ 0:12] KLEE: WARNING: undefined reference to function: klee_malloc [ 0:12] KLEE: WARNING ONCE: Using zero size array fix for landingpad instruction filter [ 0:12] i:1 [ 0:12] KLEE: WARNING ONCE: Alignment of memory from call "klee_malloc" is not modelled. Using alignment of 8. [ 0:12] about to __boot:0 [ 0:12] about to run the scheduler:0 [ 0:12] KLEE: WARNING ONCE: calling external: __dios_tainted_init() at /dios/libc/sys/start.cpp:49 5 [ 0:12] KLEE: ERROR: /dios/libc/sys/start.cpp:87: failed external call: __dios_tainted_init [ 0:12] KLEE: NOTE: now ignoring this error at this location [ 0:12] KLEE: ERROR: EXITING ON ERROR: [ 0:13] Error: failed external call: __dios_tainted_init [ 0:13] File: /dios/libc/sys/start.cpp [ 0:13] Line: 87 [ 0:13] assembly.ll line: 115775 [ 0:13] Stack: [ 0:13] #000115775 in __dios_start (l=2, argc=1, argv=93831529394696, envp=93831529472008) at /dios/libc/sys/start.cpp:87 [ 0:13] #100063604 in _ZN6__dios10sched_nullINS_5ClockINS_10NondetKleeINS_4BaseEEEEEE13run_schedulerINS_7ContextEEEvv () at /dios/sys/sched_null.hpp:163 [ 0:13] #200124355 in klee_boot (argc=2, argv=93831492578688) at /dios/arch/klee/boot.c:41 [ 0:13] [ 0:13] [ 0:13] 1 /* TAGS: c++ fin */ [ 0:13] 2 /* CC_OPTS: -std=c++2a */ [ 0:13] 3 /* VERIFY_OPTS: -o nofail:malloc */ [ 0:13] 4 //===----------------------------------------------------------------------===// [ 0:13] 5 // [ 0:13] 6 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. [ 0:13] 7 // See https://llvm.org/LICENSE.txt for license information. [ 0:13] 8 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception [ 0:13] 9 // [ 0:13] 10 //===----------------------------------------------------------------------===// [ 0:13] 11 [ 0:13] 12 // [ 0:13] 13 [ 0:13] 14 // void splice(const_iterator position, list& x); [ 0:13] 15 [ 0:13] 16 #include [ 0:13] 17 #include [ 0:13] 18 [ 0:13] 19 #include "test_macros.h" [ 0:13] 20 #include "min_allocator.h" [ 0:13] 21 [ 0:13] 22 int main(int, char**) [ 0:13] 23 { [ 0:13] 24 int a1[] = {1, 2, 3}; [ 0:13] 25 int a2[] = {4, 5, 6}; [ 0:13] 26 { [ 0:13] 27 std::list l1; [ 0:13] 28 std::list l2; [ 0:13] 29 l1.splice(l1.end(), l2); [ 0:13] 30 assert(l1.size() == 0); [ 0:13] 31 assert(distance(l1.begin(), l1.end()) == 0); [ 0:13] 32 assert(l2.size() == 0); [ 0:13] 33 assert(distance(l2.begin(), l2.end()) == 0); [ 0:13] 34 } [ 0:13] 35 { [ 0:13] 36 std::list l1; [ 0:13] 37 std::list l2(a2, a2+1); [ 0:13] 38 l1.splice(l1.end(), l2); [ 0:13] 39 assert(l1.size() == 1); [ 0:13] 40 assert(distance(l1.begin(), l1.end()) == 1); [ 0:13] 41 assert(l2.size() == 0); [ 0:13] 42 assert(distance(l2.begin(), l2.end()) == 0); [ 0:13] 43 std::list::const_iterator i = l1.begin(); [ 0:13] 44 assert(*i == 4); [ 0:13] 45 } [ 0:13] 46 { [ 0:13] 47 std::list l1; [ 0:13] 48 std::list l2(a2, a2+2); [ 0:13] 49 l1.splice(l1.end(), l2); [ 0:13] 50 assert(l1.size() == 2); [ 0:13] 51 assert(distance(l1.begin(), l1.end()) == 2); [ 0:13] 52 assert(l2.size() == 0); [ 0:13] 53 assert(distance(l2.begin(), l2.end()) == 0); [ 0:13] 54 std::list::const_iterator i = l1.begin(); [ 0:13] 55 assert(*i == 4); [ 0:13] 56 ++i; [ 0:13] 57 assert(*i == 5); [ 0:13] 58 } [ 0:13] 59 { [ 0:13] 60 std::list l1; [ 0:13] 61 std::list l2(a2, a2+3); [ 0:13] 62 l1.splice(l1.end(), l2); [ 0:13] 63 assert(l1.size() == 3); [ 0:13] 64 assert(distance(l1.begin(), l1.end()) == 3); [ 0:13] 65 assert(l2.size() == 0); [ 0:13] 66 assert(distance(l2.begin(), l2.end()) == 0); [ 0:13] 67 std::list::const_iterator i = l1.begin(); [ 0:13] 68 assert(*i == 4); [ 0:13] 69 ++i; [ 0:13] 70 assert(*i == 5); [ 0:13] 71 ++i; [ 0:13] 72 assert(*i == 6); [ 0:13] 73 } [ 0:13] 74 { [ 0:13] 75 std::list l1(a1, a1+1); [ 0:13] 76 std::list l2; [ 0:13] 77 l1.splice(l1.begin(), l2); [ 0:13] 78 assert(l1.size() == 1); [ 0:13] 79 assert(distance(l1.begin(), l1.end()) == 1); [ 0:13] 80 assert(l2.size() == 0); [ 0:13] 81 assert(distance(l2.begin(), l2.end()) == 0); [ 0:13] 82 std::list::const_iterator i = l1.begin(); [ 0:13] 83 assert(*i == 1); [ 0:13] 84 } [ 0:13] 85 { [ 0:13] 86 std::list l1(a1, a1+1); [ 0:13] 87 std::list l2; [ 0:13] 88 l1.splice(l1.end(), l2); [ 0:13] 89 assert(l1.size() == 1); [ 0:13] 90 assert(distance(l1.begin(), l1.end()) == 1); [ 0:13] 91 assert(l2.size() == 0); [ 0:13] 92 assert(distance(l2.begin(), l2.end()) == 0); [ 0:13] 93 std::list::const_iterator i = l1.begin(); [ 0:13] 94 assert(*i == 1); [ 0:13] 95 } [ 0:13] 96 { [ 0:13] 97 std::list l1(a1, a1+1); [ 0:13] 98 std::list l2(a2, a2+1); [ 0:13] 99 l1.splice(l1.begin(), l2); [ 0:13] 100 assert(l1.size() == 2); [ 0:13] 101 assert(distance(l1.begin(), l1.end()) == 2); [ 0:13] 102 assert(l2.size() == 0); [ 0:13] 103 assert(distance(l2.begin(), l2.end()) == 0); [ 0:13] 104 std::list::const_iterator i = l1.begin(); [ 0:13] 105 assert(*i == 4); [ 0:13] 106 ++i; [ 0:13] 107 assert(*i == 1); [ 0:13] 108 } [ 0:13] 109 { [ 0:13] 110 std::list l1(a1, a1+1); [ 0:13] 111 std::list l2(a2, a2+1); [ 0:13] 112 l1.splice(l1.end(), l2); [ 0:13] 113 assert(l1.size() == 2); [ 0:13] 114 assert(distance(l1.begin(), l1.end()) == 2); [ 0:13] 115 assert(l2.size() == 0); [ 0:13] 116 assert(distance(l2.begin(), l2.end()) == 0); [ 0:13] 117 std::list::const_iterator i = l1.begin(); [ 0:13] 118 assert(*i == 1); [ 0:13] 119 ++i; [ 0:13] 120 assert(*i == 4); [ 0:13] 121 } [ 0:13] 122 { [ 0:13] 123 std::list l1(a1, a1+1); [ 0:13] 124 std::list l2(a2, a2+2); [ 0:13] 125 l1.splice(l1.begin(), l2); [ 0:13] 126 assert(l1.size() == 3); [ 0:13] 127 assert(distance(l1.begin(), l1.end()) == 3); [ 0:13] 128 assert(l2.size() == 0); [ 0:13] 129 assert(distance(l2.begin(), l2.end()) == 0); [ 0:13] 130 std::list::const_iterator i = l1.begin(); [ 0:13] 131 assert(*i == 4); [ 0:13] 132 ++i; [ 0:13] 133 assert(*i == 5); [ 0:13] 134 ++i; [ 0:13] 135 assert(*i == 1); [ 0:13] 136 } [ 0:13] 137 { [ 0:13] 138 std::list l1(a1, a1+1); [ 0:13] 139 std::list l2(a2, a2+2); [ 0:13] 140 l1.splice(l1.end(), l2); [ 0:13] 141 assert(l1.size() == 3); [ 0:13] 142 assert(distance(l1.begin(), l1.end()) == 3); [ 0:13] 143 assert(l2.size() == 0); [ 0:13] 144 assert(distance(l2.begin(), l2.end()) == 0); [ 0:13] 145 std::list::const_iterator i = l1.begin(); [ 0:13] 146 assert(*i == 1); [ 0:13] 147 ++i; [ 0:13] 148 assert(*i == 4); [ 0:13] 149 ++i; [ 0:13] 150 assert(*i == 5); [ 0:13] 151 } [ 0:13] 152 { [ 0:13] 153 std::list l1(a1, a1+1); [ 0:13] 154 std::list l2(a2, a2+3); [ 0:13] 155 l1.splice(l1.begin(), l2); [ 0:13] 156 assert(l1.size() == 4); [ 0:13] 157 assert(distance(l1.begin(), l1.end()) == 4); [ 0:13] 158 assert(l2.size() == 0); [ 0:13] 159 assert(distance(l2.begin(), l2.end()) == 0); [ 0:13] 160 std::list::const_iterator i = l1.begin(); [ 0:13] 161 assert(*i == 4); [ 0:13] 162 ++i; [ 0:13] 163 assert(*i == 5); [ 0:13] 164 ++i; [ 0:13] 165 assert(*i == 6); [ 0:13] 166 ++i; [ 0:13] 167 assert(*i == 1); [ 0:13] 168 } [ 0:13] 169 { [ 0:13] 170 std::list l1(a1, a1+1); [ 0:13] 171 std::list l2(a2, a2+3); [ 0:13] 172 l1.splice(l1.end(), l2); [ 0:13] 173 assert(l1.size() == 4); [ 0:13] 174 assert(distance(l1.begin(), l1.end()) == 4); [ 0:13] 175 assert(l2.size() == 0); [ 0:13] 176 assert(distance(l2.begin(), l2.end()) == 0); [ 0:13] 177 std::list::const_iterator i = l1.begin(); [ 0:13] 178 assert(*i == 1); [ 0:13] 179 ++i; [ 0:13] 180 assert(*i == 4); [ 0:13] 181 ++i; [ 0:13] 182 assert(*i == 5); [ 0:13] 183 ++i; [ 0:13] 184 assert(*i == 6); [ 0:13] 185 } [ 0:13] 186 { [ 0:13] 187 std::list l1(a1, a1+2); [ 0:13] 188 std::list l2; [ 0:13] 189 l1.splice(l1.begin(), l2); [ 0:13] 190 assert(l1.size() == 2); [ 0:13] 191 assert(distance(l1.begin(), l1.end()) == 2); [ 0:13] 192 assert(l2.size() == 0); [ 0:13] 193 assert(distance(l2.begin(), l2.end()) == 0); [ 0:13] 194 std::list::const_iterator i = l1.begin(); [ 0:13] 195 assert(*i == 1); [ 0:13] 196 ++i; [ 0:13] 197 assert(*i == 2); [ 0:13] 198 } [ 0:13] 199 { [ 0:13] 200 std::list l1(a1, a1+2); [ 0:13] 201 std::list l2; [ 0:13] 202 l1.splice(next(l1.begin()), l2); [ 0:13] 203 assert(l1.size() == 2); [ 0:13] 204 assert(distance(l1.begin(), l1.end()) == 2); [ 0:13] 205 assert(l2.size() == 0); [ 0:13] 206 assert(distance(l2.begin(), l2.end()) == 0); [ 0:13] 207 std::list::const_iterator i = l1.begin(); [ 0:13] 208 assert(*i == 1); [ 0:13] 209 ++i; [ 0:13] 210 assert(*i == 2); [ 0:13] 211 } [ 0:13] 212 { [ 0:13] 213 std::list l1(a1, a1+2); [ 0:13] 214 std::list l2; [ 0:13] 215 l1.splice(next(l1.begin(), 2), l2); [ 0:13] 216 assert(l1.size() == 2); [ 0:13] 217 assert(distance(l1.begin(), l1.end()) == 2); [ 0:13] 218 assert(l2.size() == 0); [ 0:13] 219 assert(distance(l2.begin(), l2.end()) == 0); [ 0:13] 220 std::list::const_iterator i = l1.begin(); [ 0:13] 221 assert(*i == 1); [ 0:13] 222 ++i; [ 0:13] 223 assert(*i == 2); [ 0:13] 224 } [ 0:13] 225 { [ 0:13] 226 std::list l1(a1, a1+2); [ 0:13] 227 std::list l2(a2, a2+1); [ 0:13] 228 l1.splice(l1.begin(), l2); [ 0:13] 229 assert(l1.size() == 3); [ 0:13] 230 assert(distance(l1.begin(), l1.end()) == 3); [ 0:13] 231 assert(l2.size() == 0); [ 0:13] 232 assert(distance(l2.begin(), l2.end()) == 0); [ 0:13] 233 std::list::const_iterator i = l1.begin(); [ 0:13] 234 assert(*i == 4); [ 0:13] 235 ++i; [ 0:13] 236 assert(*i == 1); [ 0:13] 237 ++i; [ 0:13] 238 assert(*i == 2); [ 0:13] 239 } [ 0:13] 240 { [ 0:13] 241 std::list l1(a1, a1+2); [ 0:13] 242 std::list l2(a2, a2+1); [ 0:13] 243 l1.splice(next(l1.begin()), l2); [ 0:13] 244 assert(l1.size() == 3); [ 0:13] 245 assert(distance(l1.begin(), l1.end()) == 3); [ 0:13] 246 assert(l2.size() == 0); [ 0:13] 247 assert(distance(l2.begin(), l2.end()) == 0); [ 0:13] 248 std::list::const_iterator i = l1.begin(); [ 0:13] 249 assert(*i == 1); [ 0:13] 250 ++i; [ 0:13] 251 assert(*i == 4); [ 0:13] 252 ++i; [ 0:13] 253 assert(*i == 2); [ 0:13] 254 } [ 0:13] 255 { [ 0:13] 256 std::list l1(a1, a1+2); [ 0:13] 257 std::list l2(a2, a2+1); [ 0:13] 258 l1.splice(next(l1.begin(), 2), l2); [ 0:13] 259 assert(l1.size() == 3); [ 0:13] 260 assert(distance(l1.begin(), l1.end()) == 3); [ 0:13] 261 assert(l2.size() == 0); [ 0:13] 262 assert(distance(l2.begin(), l2.end()) == 0); [ 0:13] 263 std::list::const_iterator i = l1.begin(); [ 0:13] 264 assert(*i == 1); [ 0:13] 265 ++i; [ 0:13] 266 assert(*i == 2); [ 0:13] 267 ++i; [ 0:13] 268 assert(*i == 4); [ 0:13] 269 } [ 0:13] 270 { [ 0:13] 271 std::list l1(a1, a1+2); [ 0:13] 272 std::list l2(a2, a2+2); [ 0:13] 273 l1.splice(l1.begin(), l2); [ 0:13] 274 assert(l1.size() == 4); [ 0:13] 275 assert(distance(l1.begin(), l1.end()) == 4); [ 0:13] 276 assert(l2.size() == 0); [ 0:13] 277 assert(distance(l2.begin(), l2.end()) == 0); [ 0:13] 278 std::list::const_iterator i = l1.begin(); [ 0:13] 279 assert(*i == 4); [ 0:13] 280 ++i; [ 0:13] 281 assert(*i == 5); [ 0:13] 282 ++i; [ 0:13] 283 assert(*i == 1); [ 0:13] 284 ++i; [ 0:13] 285 assert(*i == 2); [ 0:13] 286 } [ 0:13] 287 { [ 0:13] 288 std::list l1(a1, a1+2); [ 0:13] 289 std::list l2(a2, a2+2); [ 0:13] 290 l1.splice(next(l1.begin()), l2); [ 0:13] 291 assert(l1.size() == 4); [ 0:13] 292 assert(distance(l1.begin(), l1.end()) == 4); [ 0:13] 293 assert(l2.size() == 0); [ 0:13] 294 assert(distance(l2.begin(), l2.end()) == 0); [ 0:13] 295 std::list::const_iterator i = l1.begin(); [ 0:13] 296 assert(*i == 1); [ 0:13] 297 ++i; [ 0:13] 298 assert(*i == 4); [ 0:13] 299 ++i; [ 0:13] 300 assert(*i == 5); [ 0:13] 301 ++i; [ 0:13] 302 assert(*i == 2); [ 0:13] 303 } [ 0:13] 304 { [ 0:13] 305 std::list l1(a1, a1+2); [ 0:13] 306 std::list l2(a2, a2+2); [ 0:13] 307 l1.splice(next(l1.begin(), 2), l2); [ 0:13] 308 assert(l1.size() == 4); [ 0:13] 309 assert(distance(l1.begin(), l1.end()) == 4); [ 0:13] 310 assert(l2.size() == 0); [ 0:13] 311 assert(distance(l2.begin(), l2.end()) == 0); [ 0:13] 312 std::list::const_iterator i = l1.begin(); [ 0:13] 313 assert(*i == 1); [ 0:13] 314 ++i; [ 0:13] 315 assert(*i == 2); [ 0:13] 316 ++i; [ 0:13] 317 assert(*i == 4); [ 0:13] 318 ++i; [ 0:13] 319 assert(*i == 5); [ 0:13] 320 } [ 0:13] 321 { [ 0:13] 322 std::list l1(a1, a1+3); [ 0:13] 323 std::list l2(a2, a2+3); [ 0:13] 324 l1.splice(l1.begin(), l2); [ 0:13] 325 assert(l1.size() == 6); [ 0:13] 326 assert(distance(l1.begin(), l1.end()) == 6); [ 0:13] 327 assert(l2.size() == 0); [ 0:13] 328 assert(distance(l2.begin(), l2.end()) == 0); [ 0:13] 329 std::list::const_iterator i = l1.begin(); [ 0:13] 330 assert(*i == 4); [ 0:13] 331 ++i; [ 0:13] 332 assert(*i == 5); [ 0:13] 333 ++i; [ 0:13] 334 assert(*i == 6); [ 0:13] 335 ++i; [ 0:13] 336 assert(*i == 1); [ 0:13] 337 ++i; [ 0:13] 338 assert(*i == 2); [ 0:13] 339 ++i; [ 0:13] 340 assert(*i == 3); [ 0:13] 341 } [ 0:13] 342 { [ 0:13] 343 std::list l1(a1, a1+3); [ 0:13] 344 std::list l2(a2, a2+3); [ 0:13] 345 l1.splice(next(l1.begin()), l2); [ 0:13] 346 assert(l1.size() == 6); [ 0:13] 347 assert(distance(l1.begin(), l1.end()) == 6); [ 0:13] 348 assert(l2.size() == 0); [ 0:13] 349 assert(distance(l2.begin(), l2.end()) == 0); [ 0:13] 350 std::list::const_iterator i = l1.begin(); [ 0:13] 351 assert(*i == 1); [ 0:13] 352 ++i; [ 0:13] 353 assert(*i == 4); [ 0:13] 354 ++i; [ 0:13] 355 assert(*i == 5); [ 0:13] 356 ++i; [ 0:13] 357 assert(*i == 6); [ 0:13] 358 ++i; [ 0:13] 359 assert(*i == 2); [ 0:13] 360 ++i; [ 0:13] 361 assert(*i == 3); [ 0:13] 362 } [ 0:13] 363 { [ 0:13] 364 std::list l1(a1, a1+3); [ 0:13] 365 std::list l2(a2, a2+3); [ 0:13] 366 l1.splice(next(l1.begin(), 2), l2); [ 0:13] 367 assert(l1.size() == 6); [ 0:13] 368 assert(distance(l1.begin(), l1.end()) == 6); [ 0:13] 369 assert(l2.size() == 0); [ 0:13] 370 assert(distance(l2.begin(), l2.end()) == 0); [ 0:13] 371 std::list::const_iterator i = l1.begin(); [ 0:13] 372 assert(*i == 1); [ 0:13] 373 ++i; [ 0:13] 374 assert(*i == 2); [ 0:13] 375 ++i; [ 0:13] 376 assert(*i == 4); [ 0:13] 377 ++i; [ 0:13] 378 assert(*i == 5); [ 0:13] 379 ++i; [ 0:13] 380 assert(*i == 6); [ 0:13] 381 ++i; [ 0:13] 382 assert(*i == 3); [ 0:13] 383 } [ 0:13] 384 { [ 0:13] 385 std::list l1(a1, a1+3); [ 0:13] 386 std::list l2(a2, a2+3); [ 0:13] 387 l1.splice(next(l1.begin(), 3), l2); [ 0:13] 388 assert(l1.size() == 6); [ 0:13] 389 assert(distance(l1.begin(), l1.end()) == 6); [ 0:13] 390 assert(l2.size() == 0); [ 0:13] 391 assert(distance(l2.begin(), l2.end()) == 0); [ 0:13] 392 std::list::const_iterator i = l1.begin(); [ 0:13] 393 assert(*i == 1); [ 0:13] 394 ++i; [ 0:13] 395 assert(*i == 2); [ 0:13] 396 ++i; [ 0:13] 397 assert(*i == 3); [ 0:13] 398 ++i; [ 0:13] 399 assert(*i == 4); [ 0:13] 400 ++i; [ 0:13] 401 assert(*i == 5); [ 0:13] 402 ++i; [ 0:13] 403 assert(*i == 6); [ 0:13] 404 } [ 0:13] 405 #if TEST_STD_VER >= 11 [ 0:13] 406 { [ 0:13] 407 std::list> l1; [ 0:13] 408 std::list> l2; [ 0:13] 409 l1.splice(l1.end(), l2); [ 0:13] 410 assert(l1.size() == 0); [ 0:13] 411 assert(distance(l1.begin(), l1.end()) == 0); [ 0:13] 412 assert(l2.size() == 0); [ 0:13] 413 assert(distance(l2.begin(), l2.end()) == 0); [ 0:13] 414 } [ 0:13] 415 { [ 0:13] 416 std::list> l1; [ 0:13] 417 std::list> l2(a2, a2+1); [ 0:13] 418 l1.splice(l1.end(), l2); [ 0:13] 419 assert(l1.size() == 1); [ 0:13] 420 assert(distance(l1.begin(), l1.end()) == 1); [ 0:13] 421 assert(l2.size() == 0); [ 0:13] 422 assert(distance(l2.begin(), l2.end()) == 0); [ 0:13] 423 std::list>::const_iterator i = l1.begin(); [ 0:13] 424 assert(*i == 4); [ 0:13] 425 } [ 0:13] 426 { [ 0:13] 427 std::list> l1; [ 0:13] 428 std::list> l2(a2, a2+2); [ 0:13] 429 l1.splice(l1.end(), l2); [ 0:13] 430 assert(l1.size() == 2); [ 0:13] 431 assert(distance(l1.begin(), l1.end()) == 2); [ 0:13] 432 assert(l2.size() == 0); [ 0:13] 433 assert(distance(l2.begin(), l2.end()) == 0); [ 0:13] 434 std::list>::const_iterator i = l1.begin(); [ 0:13] 435 assert(*i == 4); [ 0:13] 436 ++i; [ 0:13] 437 assert(*i == 5); [ 0:13] 438 } [ 0:13] 439 { [ 0:13] 440 std::list> l1; [ 0:13] 441 std::list> l2(a2, a2+3); [ 0:13] 442 l1.splice(l1.end(), l2); [ 0:13] 443 assert(l1.size() == 3); [ 0:13] 444 assert(distance(l1.begin(), l1.end()) == 3); [ 0:13] 445 assert(l2.size() == 0); [ 0:13] 446 assert(distance(l2.begin(), l2.end()) == 0); [ 0:13] 447 std::list>::const_iterator i = l1.begin(); [ 0:13] 448 assert(*i == 4); [ 0:13] 449 ++i; [ 0:13] 450 assert(*i == 5); [ 0:13] 451 ++i; [ 0:13] 452 assert(*i == 6); [ 0:13] 453 } [ 0:13] 454 { [ 0:13] 455 std::list> l1(a1, a1+1); [ 0:13] 456 std::list> l2; [ 0:13] 457 l1.splice(l1.begin(), l2); [ 0:13] 458 assert(l1.size() == 1); [ 0:13] 459 assert(distance(l1.begin(), l1.end()) == 1); [ 0:13] 460 assert(l2.size() == 0); [ 0:13] 461 assert(distance(l2.begin(), l2.end()) == 0); [ 0:13] 462 std::list>::const_iterator i = l1.begin(); [ 0:13] 463 assert(*i == 1); [ 0:13] 464 } [ 0:13] 465 { [ 0:13] 466 std::list> l1(a1, a1+1); [ 0:13] 467 std::list> l2; [ 0:13] 468 l1.splice(l1.end(), l2); [ 0:13] 469 assert(l1.size() == 1); [ 0:13] 470 assert(distance(l1.begin(), l1.end()) == 1); [ 0:13] 471 assert(l2.size() == 0); [ 0:13] 472 assert(distance(l2.begin(), l2.end()) == 0); [ 0:13] 473 std::list>::const_iterator i = l1.begin(); [ 0:13] 474 assert(*i == 1); [ 0:13] 475 } [ 0:13] 476 { [ 0:13] 477 std::list> l1(a1, a1+1); [ 0:13] 478 std::list> l2(a2, a2+1); [ 0:13] 479 l1.splice(l1.begin(), l2); [ 0:13] 480 assert(l1.size() == 2); [ 0:13] 481 assert(distance(l1.begin(), l1.end()) == 2); [ 0:13] 482 assert(l2.size() == 0); [ 0:13] 483 assert(distance(l2.begin(), l2.end()) == 0); [ 0:13] 484 std::list>::const_iterator i = l1.begin(); [ 0:13] 485 assert(*i == 4); [ 0:13] 486 ++i; [ 0:13] 487 assert(*i == 1); [ 0:13] 488 } [ 0:13] 489 { [ 0:13] 490 std::list> l1(a1, a1+1); [ 0:13] 491 std::list> l2(a2, a2+1); [ 0:13] 492 l1.splice(l1.end(), l2); [ 0:13] 493 assert(l1.size() == 2); [ 0:13] 494 assert(distance(l1.begin(), l1.end()) == 2); [ 0:13] 495 assert(l2.size() == 0); [ 0:13] 496 assert(distance(l2.begin(), l2.end()) == 0); [ 0:13] 497 std::list>::const_iterator i = l1.begin(); [ 0:13] 498 assert(*i == 1); [ 0:13] 499 ++i; [ 0:13] 500 assert(*i == 4); [ 0:13] 501 } [ 0:13] 502 { [ 0:13] 503 std::list> l1(a1, a1+1); [ 0:13] 504 std::list> l2(a2, a2+2); [ 0:13] 505 l1.splice(l1.begin(), l2); [ 0:13] 506 assert(l1.size() == 3); [ 0:13] 507 assert(distance(l1.begin(), l1.end()) == 3); [ 0:13] 508 assert(l2.size() == 0); [ 0:13] 509 assert(distance(l2.begin(), l2.end()) == 0); [ 0:13] 510 std::list>::const_iterator i = l1.begin(); [ 0:13] 511 assert(*i == 4); [ 0:13] 512 ++i; [ 0:13] 513 assert(*i == 5); [ 0:13] 514 ++i; [ 0:13] 515 assert(*i == 1); [ 0:13] 516 } [ 0:13] 517 { [ 0:13] 518 std::list> l1(a1, a1+1); [ 0:13] 519 std::list> l2(a2, a2+2); [ 0:13] 520 l1.splice(l1.end(), l2); [ 0:13] 521 assert(l1.size() == 3); [ 0:13] 522 assert(distance(l1.begin(), l1.end()) == 3); [ 0:13] 523 assert(l2.size() == 0); [ 0:13] 524 assert(distance(l2.begin(), l2.end()) == 0); [ 0:13] 525 std::list>::const_iterator i = l1.begin(); [ 0:13] 526 assert(*i == 1); [ 0:13] 527 ++i; [ 0:13] 528 assert(*i == 4); [ 0:13] 529 ++i; [ 0:13] 530 assert(*i == 5); [ 0:13] 531 } [ 0:13] 532 { [ 0:13] 533 std::list> l1(a1, a1+1); [ 0:13] 534 std::list> l2(a2, a2+3); [ 0:13] 535 l1.splice(l1.begin(), l2); [ 0:13] 536 assert(l1.size() == 4); [ 0:13] 537 assert(distance(l1.begin(), l1.end()) == 4); [ 0:13] 538 assert(l2.size() == 0); [ 0:13] 539 assert(distance(l2.begin(), l2.end()) == 0); [ 0:13] 540 std::list>::const_iterator i = l1.begin(); [ 0:13] 541 assert(*i == 4); [ 0:13] 542 ++i; [ 0:13] 543 assert(*i == 5); [ 0:13] 544 ++i; [ 0:13] 545 assert(*i == 6); [ 0:13] 546 ++i; [ 0:13] 547 assert(*i == 1); [ 0:13] 548 } [ 0:13] 549 { [ 0:13] 550 std::list> l1(a1, a1+1); [ 0:13] 551 std::list> l2(a2, a2+3); [ 0:13] 552 l1.splice(l1.end(), l2); [ 0:13] 553 assert(l1.size() == 4); [ 0:13] 554 assert(distance(l1.begin(), l1.end()) == 4); [ 0:13] 555 assert(l2.size() == 0); [ 0:13] 556 assert(distance(l2.begin(), l2.end()) == 0); [ 0:13] 557 std::list>::const_iterator i = l1.begin(); [ 0:13] 558 assert(*i == 1); [ 0:13] 559 ++i; [ 0:13] 560 assert(*i == 4); [ 0:13] 561 ++i; [ 0:13] 562 assert(*i == 5); [ 0:13] 563 ++i; [ 0:13] 564 assert(*i == 6); [ 0:13] 565 } [ 0:13] 566 { [ 0:13] 567 std::list> l1(a1, a1+2); [ 0:13] 568 std::list> l2; [ 0:13] 569 l1.splice(l1.begin(), l2); [ 0:13] 570 assert(l1.size() == 2); [ 0:13] 571 assert(distance(l1.begin(), l1.end()) == 2); [ 0:13] 572 assert(l2.size() == 0); [ 0:13] 573 assert(distance(l2.begin(), l2.end()) == 0); [ 0:13] 574 std::list>::const_iterator i = l1.begin(); [ 0:13] 575 assert(*i == 1); [ 0:13] 576 ++i; [ 0:13] 577 assert(*i == 2); [ 0:13] 578 } [ 0:13] 579 { [ 0:13] 580 std::list> l1(a1, a1+2); [ 0:13] 581 std::list> l2; [ 0:13] 582 l1.splice(next(l1.begin()), l2); [ 0:13] 583 assert(l1.size() == 2); [ 0:13] 584 assert(distance(l1.begin(), l1.end()) == 2); [ 0:13] 585 assert(l2.size() == 0); [ 0:13] 586 assert(distance(l2.begin(), l2.end()) == 0); [ 0:13] 587 std::list>::const_iterator i = l1.begin(); [ 0:13] 588 assert(*i == 1); [ 0:13] 589 ++i; [ 0:13] 590 assert(*i == 2); [ 0:13] 591 } [ 0:13] 592 { [ 0:13] 593 std::list> l1(a1, a1+2); [ 0:13] 594 std::list> l2; [ 0:13] 595 l1.splice(next(l1.begin(), 2), l2); [ 0:13] 596 assert(l1.size() == 2); [ 0:13] 597 assert(distance(l1.begin(), l1.end()) == 2); [ 0:13] 598 assert(l2.size() == 0); [ 0:13] 599 assert(distance(l2.begin(), l2.end()) == 0); [ 0:13] 600 std::list>::const_iterator i = l1.begin(); [ 0:13] 601 assert(*i == 1); [ 0:13] 602 ++i; [ 0:13] 603 assert(*i == 2); [ 0:13] 604 } [ 0:13] 605 { [ 0:13] 606 std::list> l1(a1, a1+2); [ 0:13] 607 std::list> l2(a2, a2+1); [ 0:13] 608 l1.splice(l1.begin(), l2); [ 0:13] 609 assert(l1.size() == 3); [ 0:13] 610 assert(distance(l1.begin(), l1.end()) == 3); [ 0:13] 611 assert(l2.size() == 0); [ 0:13] 612 assert(distance(l2.begin(), l2.end()) == 0); [ 0:13] 613 std::list>::const_iterator i = l1.begin(); [ 0:13] 614 assert(*i == 4); [ 0:13] 615 ++i; [ 0:13] 616 assert(*i == 1); [ 0:13] 617 ++i; [ 0:13] 618 assert(*i == 2); [ 0:13] 619 } [ 0:13] 620 { [ 0:13] 621 std::list> l1(a1, a1+2); [ 0:13] 622 std::list> l2(a2, a2+1); [ 0:13] 623 l1.splice(next(l1.begin()), l2); [ 0:13] 624 assert(l1.size() == 3); [ 0:13] 625 assert(distance(l1.begin(), l1.end()) == 3); [ 0:13] 626 assert(l2.size() == 0); [ 0:13] 627 assert(distance(l2.begin(), l2.end()) == 0); [ 0:13] 628 std::list>::const_iterator i = l1.begin(); [ 0:13] 629 assert(*i == 1); [ 0:13] 630 ++i; [ 0:13] 631 assert(*i == 4); [ 0:13] 632 ++i; [ 0:13] 633 assert(*i == 2); [ 0:13] 634 } [ 0:13] 635 { [ 0:13] 636 std::list> l1(a1, a1+2); [ 0:13] 637 std::list> l2(a2, a2+1); [ 0:13] 638 l1.splice(next(l1.begin(), 2), l2); [ 0:13] 639 assert(l1.size() == 3); [ 0:13] 640 assert(distance(l1.begin(), l1.end()) == 3); [ 0:13] 641 assert(l2.size() == 0); [ 0:13] 642 assert(distance(l2.begin(), l2.end()) == 0); [ 0:13] 643 std::list>::const_iterator i = l1.begin(); [ 0:13] 644 assert(*i == 1); [ 0:13] 645 ++i; [ 0:13] 646 assert(*i == 2); [ 0:13] 647 ++i; [ 0:13] 648 assert(*i == 4); [ 0:13] 649 } [ 0:13] 650 { [ 0:13] 651 std::list> l1(a1, a1+2); [ 0:13] 652 std::list> l2(a2, a2+2); [ 0:13] 653 l1.splice(l1.begin(), l2); [ 0:13] 654 assert(l1.size() == 4); [ 0:13] 655 assert(distance(l1.begin(), l1.end()) == 4); [ 0:13] 656 assert(l2.size() == 0); [ 0:13] 657 assert(distance(l2.begin(), l2.end()) == 0); [ 0:13] 658 std::list>::const_iterator i = l1.begin(); [ 0:13] 659 assert(*i == 4); [ 0:13] 660 ++i; [ 0:13] 661 assert(*i == 5); [ 0:13] 662 ++i; [ 0:13] 663 assert(*i == 1); [ 0:13] 664 ++i; [ 0:13] 665 assert(*i == 2); [ 0:13] 666 } [ 0:13] 667 { [ 0:13] 668 std::list> l1(a1, a1+2); [ 0:13] 669 std::list> l2(a2, a2+2); [ 0:13] 670 l1.splice(next(l1.begin()), l2); [ 0:13] 671 assert(l1.size() == 4); [ 0:13] 672 assert(distance(l1.begin(), l1.end()) == 4); [ 0:13] 673 assert(l2.size() == 0); [ 0:13] 674 assert(distance(l2.begin(), l2.end()) == 0); [ 0:13] 675 std::list>::const_iterator i = l1.begin(); [ 0:13] 676 assert(*i == 1); [ 0:13] 677 ++i; [ 0:13] 678 assert(*i == 4); [ 0:13] 679 ++i; [ 0:13] 680 assert(*i == 5); [ 0:13] 681 ++i; [ 0:13] 682 assert(*i == 2); [ 0:13] 683 } [ 0:13] 684 { [ 0:13] 685 std::list> l1(a1, a1+2); [ 0:13] 686 std::list> l2(a2, a2+2); [ 0:13] 687 l1.splice(next(l1.begin(), 2), l2); [ 0:13] 688 assert(l1.size() == 4); [ 0:13] 689 assert(distance(l1.begin(), l1.end()) == 4); [ 0:13] 690 assert(l2.size() == 0); [ 0:13] 691 assert(distance(l2.begin(), l2.end()) == 0); [ 0:13] 692 std::list>::const_iterator i = l1.begin(); [ 0:13] 693 assert(*i == 1); [ 0:13] 694 ++i; [ 0:13] 695 assert(*i == 2); [ 0:13] 696 ++i; [ 0:13] 697 assert(*i == 4); [ 0:13] 698 ++i; [ 0:13] 699 assert(*i == 5); [ 0:13] 700 } [ 0:13] 701 { [ 0:13] 702 std::list> l1(a1, a1+3); [ 0:13] 703 std::list> l2(a2, a2+3); [ 0:13] 704 l1.splice(l1.begin(), l2); [ 0:13] 705 assert(l1.size() == 6); [ 0:13] 706 assert(distance(l1.begin(), l1.end()) == 6); [ 0:13] 707 assert(l2.size() == 0); [ 0:13] 708 assert(distance(l2.begin(), l2.end()) == 0); [ 0:13] 709 std::list>::const_iterator i = l1.begin(); [ 0:13] 710 assert(*i == 4); [ 0:13] 711 ++i; [ 0:13] 712 assert(*i == 5); [ 0:13] 713 ++i; [ 0:13] 714 assert(*i == 6); [ 0:13] 715 ++i; [ 0:13] 716 assert(*i == 1); [ 0:13] 717 ++i; [ 0:13] 718 assert(*i == 2); [ 0:13] 719 ++i; [ 0:13] 720 assert(*i == 3); [ 0:13] 721 } [ 0:13] 722 { [ 0:13] 723 std::list> l1(a1, a1+3); [ 0:13] 724 std::list> l2(a2, a2+3); [ 0:13] 725 l1.splice(next(l1.begin()), l2); [ 0:13] 726 assert(l1.size() == 6); [ 0:13] 727 assert(distance(l1.begin(), l1.end()) == 6); [ 0:13] 728 assert(l2.size() == 0); [ 0:13] 729 assert(distance(l2.begin(), l2.end()) == 0); [ 0:13] 730 std::list>::const_iterator i = l1.begin(); [ 0:13] 731 assert(*i == 1); [ 0:13] 732 ++i; [ 0:13] 733 assert(*i == 4); [ 0:13] 734 ++i; [ 0:13] 735 assert(*i == 5); [ 0:13] 736 ++i; [ 0:13] 737 assert(*i == 6); [ 0:13] 738 ++i; [ 0:13] 739 assert(*i == 2); [ 0:13] 740 ++i; [ 0:13] 741 assert(*i == 3); [ 0:13] 742 } [ 0:13] 743 { [ 0:13] 744 std::list> l1(a1, a1+3); [ 0:13] 745 std::list> l2(a2, a2+3); [ 0:13] 746 l1.splice(next(l1.begin(), 2), l2); [ 0:13] 747 assert(l1.size() == 6); [ 0:13] 748 assert(distance(l1.begin(), l1.end()) == 6); [ 0:13] 749 assert(l2.size() == 0); [ 0:13] 750 assert(distance(l2.begin(), l2.end()) == 0); [ 0:13] 751 std::list>::const_iterator i = l1.begin(); [ 0:13] 752 assert(*i == 1); [ 0:13] 753 ++i; [ 0:13] 754 assert(*i == 2); [ 0:13] 755 ++i; [ 0:13] 756 assert(*i == 4); [ 0:13] 757 ++i; [ 0:13] 758 assert(*i == 5); [ 0:13] 759 ++i; [ 0:13] 760 assert(*i == 6); [ 0:13] 761 ++i; [ 0:13] 762 assert(*i == 3); [ 0:13] 763 } [ 0:13] 764 { [ 0:13] 765 std::list> l1(a1, a1+3); [ 0:13] 766 std::list> l2(a2, a2+3); [ 0:13] 767 l1.splice(next(l1.begin(), 3), l2); [ 0:13] 768 assert(l1.size() == 6); [ 0:13] 769 assert(distance(l1.begin(), l1.end()) == 6); [ 0:13] 770 assert(l2.size() == 0); [ 0:13] 771 assert(distance(l2.begin(), l2.end()) == 0); [ 0:13] 772 std::list>::const_iterator i = l1.begin(); [ 0:13] 773 assert(*i == 1); [ 0:13] 774 ++i; [ 0:13] 775 assert(*i == 2); [ 0:13] 776 ++i; [ 0:13] 777 assert(*i == 3); [ 0:13] 778 ++i; [ 0:13] 779 assert(*i == 4); [ 0:13] 780 ++i; [ 0:13] 781 assert(*i == 5); [ 0:13] 782 ++i; [ 0:13] 783 assert(*i == 6); [ 0:13] 784 } [ 0:13] 785 #endif [ 0:13] 786 [ 0:13] 787 return 0; [ 0:13] 788 } [ 0:13] # no errors were expected but one was found anyway