diff options
| author | Ralf Jung <post@ralfj.de> | 2024-03-22 16:04:28 +0100 |
|---|---|---|
| committer | Ralf Jung <post@ralfj.de> | 2024-03-22 16:04:28 +0100 |
| commit | ee57d2b318fc17080740172896269cd9865a17f4 (patch) | |
| tree | 2e95d58c16c36d9159307f386ce1912c94bc4fff /library/alloc/src/vec/mod.rs | |
| parent | 5719d09d92a4dc171531452b5f72f46c28c9ee32 (diff) | |
| parent | 2171243b2b9cf1be8f285f200fbede9a47585d18 (diff) | |
Merge from rustc
Diffstat (limited to 'library/alloc/src/vec/mod.rs')
| -rw-r--r-- | library/alloc/src/vec/mod.rs | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/library/alloc/src/vec/mod.rs b/library/alloc/src/vec/mod.rs index db56b8d07c7..94bed825bb2 100644 --- a/library/alloc/src/vec/mod.rs +++ b/library/alloc/src/vec/mod.rs @@ -1541,6 +1541,9 @@ impl<T, A: Allocator> Vec<T, A> { } let len = self.len(); + if index > len { + assert_failed(index, len); + } // space for the new element if len == self.buf.capacity() { @@ -1556,10 +1559,6 @@ impl<T, A: Allocator> Vec<T, A> { // Shift everything over to make space. (Duplicating the // `index`th element into two consecutive places.) ptr::copy(p, p.add(1), len - index); - } else if index == len { - // No elements need shifting. - } else { - assert_failed(index, len); } // Write it in, overwriting the first copy of the `index`th // element. |
