-
Notifications
You must be signed in to change notification settings - Fork 128
Open
Description
I would expect the following code to run without problems. But in debug mode, it panics.
let mut bv = bitvec![0, 1, 0, 0, 1];
drop(bv.splice(
2 .. 2,
(0usize .. 2).flat_map(|index| {
let array = BitArray::<_, Lsb0>::from(index);
array.into_iter().take(2)
}),
));---- vec::tests::iter::splice stdout ----
thread 'vec::tests::iter::splice' panicked at src/vec/iter.rs:685:13:
assertion `left == right` failed
left: FullSpan
right: EmptyInput
stack backtrace:
0: rust_begin_unwind
at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/std/src/panicking.rs:665:5
1: core::panicking::panic_fmt
at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/core/src/panicking.rs:74:14
2: core::panicking::assert_failed_inner
at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/core/src/panicking.rs:410:17
3: core::panicking::assert_failed
at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/core/src/panicking.rs:365:5
4: <bitvec::vec::iter::Splice<T,O,I> as core::ops::drop::Drop>::drop
at ./src/vec/iter.rs:685:4
5: core::ptr::drop_in_place<bitvec::vec::iter::Splice<usize,bitvec::order::Lsb0,core::iter::adapters::flatten::FlatMap<core::ops::range::Range<usize>,core::iter::adapters::take::Take<bitvec::array::iter::IntoIter<usize,bitvec::order::Lsb0>>,bitvec::vec::tests::iter::splice::{{closure}}>>>
at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/core/src/ptr/mod.rs:542:1
6: core::mem::drop
at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/core/src/mem/mod.rs:938:24
7: bitvec::vec::tests::iter::splice
at ./src/vec/tests/iter.rs:43:2
8: bitvec::vec::tests::iter::splice::{{closure}}
at ./src/vec/tests/iter.rs:24:12
9: core::ops::function::FnOnce::call_once
at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/core/src/ops/function.rs:250:5
10: core::ops::function::FnOnce::call_once
at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/core/src/ops/function.rs:250:5
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels