Skip to content

Commit c11fa89

Browse files
committed
remove now-unused ScalarMaybeUninit
1 parent 8654522 commit c11fa89

File tree

2 files changed

+1
-134
lines changed

2 files changed

+1
-134
lines changed

compiler/rustc_middle/src/mir/interpret/mod.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -124,7 +124,7 @@ pub use self::error::{
124124
UninitBytesAccess, UnsupportedOpInfo,
125125
};
126126

127-
pub use self::value::{get_slice_bytes, ConstAlloc, ConstValue, Scalar, ScalarMaybeUninit};
127+
pub use self::value::{get_slice_bytes, ConstAlloc, ConstValue, Scalar};
128128

129129
pub use self::allocation::{
130130
alloc_range, AllocRange, Allocation, ConstAllocation, InitChunk, InitChunkIter, InitMask,

compiler/rustc_middle/src/mir/interpret/value.rs

-133
Original file line numberDiff line numberDiff line change
@@ -504,139 +504,6 @@ impl<'tcx, Prov: Provenance> Scalar<Prov> {
504504
}
505505
}
506506

507-
#[derive(Clone, Copy, Eq, PartialEq, TyEncodable, TyDecodable, HashStable, Hash)]
508-
pub enum ScalarMaybeUninit<Prov = AllocId> {
509-
Scalar(Scalar<Prov>),
510-
Uninit,
511-
}
512-
513-
#[cfg(all(target_arch = "x86_64", target_pointer_width = "64"))]
514-
static_assert_size!(ScalarMaybeUninit, 24);
515-
516-
impl<Prov> From<Scalar<Prov>> for ScalarMaybeUninit<Prov> {
517-
#[inline(always)]
518-
fn from(s: Scalar<Prov>) -> Self {
519-
ScalarMaybeUninit::Scalar(s)
520-
}
521-
}
522-
523-
// We want the `Debug` output to be readable as it is used by `derive(Debug)` for
524-
// all the Miri types.
525-
impl<Prov: Provenance> fmt::Debug for ScalarMaybeUninit<Prov> {
526-
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
527-
match self {
528-
ScalarMaybeUninit::Uninit => write!(f, "<uninitialized>"),
529-
ScalarMaybeUninit::Scalar(s) => write!(f, "{:?}", s),
530-
}
531-
}
532-
}
533-
534-
impl<Prov: Provenance> fmt::LowerHex for ScalarMaybeUninit<Prov> {
535-
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
536-
match self {
537-
ScalarMaybeUninit::Uninit => write!(f, "uninitialized bytes"),
538-
ScalarMaybeUninit::Scalar(s) => write!(f, "{:x}", s),
539-
}
540-
}
541-
}
542-
543-
impl<Prov> ScalarMaybeUninit<Prov> {
544-
#[inline]
545-
pub fn from_pointer(ptr: Pointer<Prov>, cx: &impl HasDataLayout) -> Self {
546-
ScalarMaybeUninit::Scalar(Scalar::from_pointer(ptr, cx))
547-
}
548-
549-
#[inline]
550-
pub fn from_maybe_pointer(ptr: Pointer<Option<Prov>>, cx: &impl HasDataLayout) -> Self {
551-
ScalarMaybeUninit::Scalar(Scalar::from_maybe_pointer(ptr, cx))
552-
}
553-
554-
#[inline]
555-
pub fn check_init<'tcx>(self) -> InterpResult<'tcx, Scalar<Prov>> {
556-
match self {
557-
ScalarMaybeUninit::Scalar(scalar) => Ok(scalar),
558-
ScalarMaybeUninit::Uninit => throw_ub!(InvalidUninitBytes(None)),
559-
}
560-
}
561-
}
562-
563-
impl<'tcx, Prov: Provenance> ScalarMaybeUninit<Prov> {
564-
#[inline(always)]
565-
pub fn to_pointer(self, cx: &impl HasDataLayout) -> InterpResult<'tcx, Pointer<Option<Prov>>> {
566-
self.check_init()?.to_pointer(cx)
567-
}
568-
569-
#[inline(always)]
570-
pub fn to_bool(self) -> InterpResult<'tcx, bool> {
571-
self.check_init()?.to_bool()
572-
}
573-
574-
#[inline(always)]
575-
pub fn to_char(self) -> InterpResult<'tcx, char> {
576-
self.check_init()?.to_char()
577-
}
578-
579-
#[inline(always)]
580-
pub fn to_f32(self) -> InterpResult<'tcx, Single> {
581-
self.check_init()?.to_f32()
582-
}
583-
584-
#[inline(always)]
585-
pub fn to_f64(self) -> InterpResult<'tcx, Double> {
586-
self.check_init()?.to_f64()
587-
}
588-
589-
#[inline(always)]
590-
pub fn to_u8(self) -> InterpResult<'tcx, u8> {
591-
self.check_init()?.to_u8()
592-
}
593-
594-
#[inline(always)]
595-
pub fn to_u16(self) -> InterpResult<'tcx, u16> {
596-
self.check_init()?.to_u16()
597-
}
598-
599-
#[inline(always)]
600-
pub fn to_u32(self) -> InterpResult<'tcx, u32> {
601-
self.check_init()?.to_u32()
602-
}
603-
604-
#[inline(always)]
605-
pub fn to_u64(self) -> InterpResult<'tcx, u64> {
606-
self.check_init()?.to_u64()
607-
}
608-
609-
#[inline(always)]
610-
pub fn to_machine_usize(self, cx: &impl HasDataLayout) -> InterpResult<'tcx, u64> {
611-
self.check_init()?.to_machine_usize(cx)
612-
}
613-
614-
#[inline(always)]
615-
pub fn to_i8(self) -> InterpResult<'tcx, i8> {
616-
self.check_init()?.to_i8()
617-
}
618-
619-
#[inline(always)]
620-
pub fn to_i16(self) -> InterpResult<'tcx, i16> {
621-
self.check_init()?.to_i16()
622-
}
623-
624-
#[inline(always)]
625-
pub fn to_i32(self) -> InterpResult<'tcx, i32> {
626-
self.check_init()?.to_i32()
627-
}
628-
629-
#[inline(always)]
630-
pub fn to_i64(self) -> InterpResult<'tcx, i64> {
631-
self.check_init()?.to_i64()
632-
}
633-
634-
#[inline(always)]
635-
pub fn to_machine_isize(self, cx: &impl HasDataLayout) -> InterpResult<'tcx, i64> {
636-
self.check_init()?.to_machine_isize(cx)
637-
}
638-
}
639-
640507
/// Gets the bytes of a constant slice value.
641508
pub fn get_slice_bytes<'tcx>(cx: &impl HasDataLayout, val: ConstValue<'tcx>) -> &'tcx [u8] {
642509
if let ConstValue::Slice { data, start, end } = val {

0 commit comments

Comments
 (0)