[][src]Enum cranelift_codegen::CodegenError

pub enum CodegenError {
    Verifier(VerifierErrors),
    ImplLimitExceeded,
    CodeTooLarge,
}

A compilation error.

When Cranelift fails to compile a function, it will return one of these error codes.

Variants

Verifier(VerifierErrors)

A list of IR verifier errors.

This always represents a bug, either in the code that generated IR for Cranelift, or a bug in Cranelift itself.

ImplLimitExceeded

An implementation limit was exceeded.

Cranelift can compile very large and complicated functions, but the implementation has limits that cause compilation to fail when they are exceeded.

CodeTooLarge

The code size for the function is too large.

Different target ISAs may impose a limit on the size of a compiled function. If that limit is exceeded, compilation fails.

Trait Implementations

impl Display for CodegenError[src]

impl Debug for CodegenError[src]

impl PartialEq<CodegenError> for CodegenError[src]

impl Eq for CodegenError[src]

impl From<VerifierErrors> for CodegenError[src]

impl Fail for CodegenError[src]

fn context<D>(self, context: D) -> Context<D> where
    D: Display + Send + Sync + 'static, 
[src]

Provides context for this failure. Read more

fn compat(self) -> Compat<Self>[src]

Wraps this failure in a compatibility wrapper that implements std::error::Error. Read more

Auto Trait Implementations

Blanket Implementations

impl<T> From for T[src]

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

type Error = Infallible

The type returned in the event of a conversion error.

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

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

The type returned in the event of a conversion error.

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

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

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

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

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

impl<T> AsFail for T where
    T: Fail
[src]