Skip to content

Commit d418872

Browse files
committed
try hiding it harder
1 parent 7f10971 commit d418872

File tree

1 file changed

+10
-2
lines changed

1 file changed

+10
-2
lines changed

library/core/src/array/iter.rs

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -323,9 +323,17 @@ impl<T, const N: usize> DoubleEndedIterator for IntoIter<T, N> {
323323
impl<T, const N: usize> Drop for IntoIter<T, N> {
324324
#[inline]
325325
fn drop(&mut self) {
326-
if crate::mem::needs_drop::<T>() {
326+
let drop: Option<unsafe fn(&mut _)> = const {
327+
if crate::mem::needs_drop::<T>() {
328+
Some(ManuallyDrop::drop)
329+
} else {
330+
None
331+
}
332+
};
333+
334+
if let Some(drop) = drop {
327335
// SAFETY: This is the only place where we drop this field.
328-
unsafe { ManuallyDrop::drop(&mut self.inner) }
336+
unsafe { drop(&mut self.inner); }
329337
}
330338
}
331339
}

0 commit comments

Comments
 (0)