Skip to content

Commit 04d3dc8

Browse files
committed
fix ICE in merge -- we may need to grow
1 parent 590ab7c commit 04d3dc8

File tree

1 file changed

+6
-3
lines changed

1 file changed

+6
-3
lines changed

src/librustc_data_structures/bitvec.rs

+6-3
Original file line numberDiff line numberDiff line change
@@ -320,10 +320,13 @@ impl<R: Idx, C: Idx> SparseBitMatrix<R, C> {
320320
let mut changed = false;
321321

322322
if read != write {
323-
let (bit_set_read, bit_set_write) = self.vector.pick2_mut(read, write);
323+
if self.vector.get(read).is_some() {
324+
self.vector.resize_to_elem(write, || SparseBitSet::new());
325+
let (bit_set_read, bit_set_write) = self.vector.pick2_mut(read, write);
324326

325-
for read_chunk in bit_set_read.chunks() {
326-
changed = changed | bit_set_write.insert_chunk(read_chunk).any();
327+
for read_chunk in bit_set_read.chunks() {
328+
changed = changed | bit_set_write.insert_chunk(read_chunk).any();
329+
}
327330
}
328331
}
329332

0 commit comments

Comments
 (0)