Enum rustc_mir::interpret::InvalidProgramInfo[−][src]

pub enum InvalidProgramInfo<'tcx> {
    TooGeneric,
    ReferencedConstant,
    AlreadyReported(ErrorReported),
    Layout(LayoutError<'tcx>),
    TransmuteSizeDiff(&'tcx TyS<'tcx>, &'tcx TyS<'tcx>),
    SizeOfUnsizedType(&'tcx TyS<'tcx>),
}
Expand description

Error information for when the program we executed turned out not to actually be a valid program. This cannot happen in stand-alone Miri, but it can happen during CTFE/ConstProp where we work on generic code or execution does not have all information available.

Variants

TooGeneric
Expand description

Resolution can fail if we are in a too generic context.

ReferencedConstant
Expand description

Cannot compute this constant because it depends on another one which already produced an error.

AlreadyReported(ErrorReported)
Expand description

Abort in case errors are already reported.

Layout(LayoutError<'tcx>)
Expand description

An error occurred during layout computation.

TransmuteSizeDiff(&'tcx TyS<'tcx>, &'tcx TyS<'tcx>)
Expand description

An invalid transmute happened.

SizeOfUnsizedType(&'tcx TyS<'tcx>)
Expand description

SizeOf of unsized type was requested.

Auto Trait Implementations

impl<'tcx> !RefUnwindSafe for InvalidProgramInfo<'tcx>

impl<'tcx> !Send for InvalidProgramInfo<'tcx>

impl<'tcx> !Sync for InvalidProgramInfo<'tcx>

impl<'tcx> Unpin for InvalidProgramInfo<'tcx>

impl<'tcx> !UnwindSafe for InvalidProgramInfo<'tcx>

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized, 
[src]

pub fn type_id(&self) -> TypeId[src]

Gets the TypeId of self. Read more

impl<T> Borrow<T> for T where
    T: ?Sized, 
[src]

pub fn borrow(&self) -> &T[src]

Immutably borrows from an owned value. Read more

impl<T> BorrowMut<T> for T where
    T: ?Sized, 
[src]

pub fn borrow_mut(&mut self) -> &mut T[src]

Mutably borrows from an owned value. Read more

impl<T> From<T> for T[src]

pub fn from(t: T) -> T[src]

Performs the conversion.

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

pub fn into(self) -> U[src]

Performs the conversion.

impl<T> ToString for T where
    T: Display + ?Sized, 
[src]

pub default fn to_string(&self) -> String[src]

Converts the given value to a String. Read more

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>[src]

Performs the conversion.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

pub fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>[src]

Performs the conversion.

impl<T> WithConstness for T[src]

fn with_constness(self, constness: Constness) -> ConstnessAnd<Self>[src]

fn with_const(self) -> ConstnessAnd<Self>[src]

fn without_const(self) -> ConstnessAnd<Self>[src]