Enum gimli::Error [−][src]
pub enum Error {
Io,
CfiRelativePointerButCfiBaseIsUndefined,
TextRelativePointerButTextBaseIsUndefined,
DataRelativePointerButDataBaseIsUndefined,
FuncRelativePointerInBadContext,
BadUnsignedLeb128,
BadSignedLeb128,
AbbreviationTagZero,
AttributeFormZero,
BadHasChildren,
BadLength,
UnknownForm,
ExpectedZero,
DuplicateAbbreviationCode,
DuplicateArange,
UnknownReservedLength,
UnknownVersion(u64),
UnknownAbbreviation,
UnexpectedEof,
UnexpectedNull,
UnknownStandardOpcode(DwLns),
UnknownExtendedOpcode(DwLne),
UnsupportedAddressSize(u8),
UnsupportedFieldSize(u8),
MinimumInstructionLengthZero,
MaximumOperationsPerInstructionZero,
LineRangeZero,
OpcodeBaseZero,
BadUtf8,
NotCieId,
NotCiePointer,
NotFdePointer,
BadBranchTarget(u64),
InvalidPushObjectAddress,
NotEnoughStackItems,
TooManyIterations,
InvalidExpression(DwOp),
InvalidPiece,
InvalidExpressionTerminator(u64),
DivisionByZero,
TypeMismatch,
IntegralTypeRequired,
UnsupportedTypeOperation,
InvalidShiftExpression,
UnknownCallFrameInstruction(DwCfa),
InvalidAddressRange,
InvalidLocationAddressRange,
CfiInstructionInInvalidContext,
PopWithEmptyStack,
NoUnwindInfoForAddress,
UnsupportedOffset,
UnknownPointerEncoding,
NoEntryAtGivenOffset,
OffsetOutOfBounds,
UnknownAugmentation,
UnsupportedPointerEncoding,
CannotFitInU8,
TooManyRegisterRules,
CfiStackFull,
VariableLengthSearchTable,
UnsupportedUnitType,
UnsupportedAddressIndex,
UnsupportedSegmentSize,
}An error that occurred when parsing.
Variants
IoAn I/O error occurred while reading.
CfiRelativePointerButCfiBaseIsUndefinedFound a CFI relative pointer, but the CFI base is undefined.
TextRelativePointerButTextBaseIsUndefinedFound a .text relative pointer, but the .text base is undefined.
DataRelativePointerButDataBaseIsUndefinedFound a .data relative pointer, but the .data base is undefined.
FuncRelativePointerInBadContextFound a function relative pointer in a context that does not have a function base.
BadUnsignedLeb128An error parsing an unsigned LEB128 value.
BadSignedLeb128An error parsing a signed LEB128 value.
AbbreviationTagZeroAn abbreviation declared that its tag is zero, but zero is reserved for null records.
AttributeFormZeroAn attribute specification declared that its form is zero, but zero is reserved for null records.
BadHasChildrenThe abbreviation's has-children byte was not one of
DW_CHILDREN_{yes,no}.
BadLengthThe specified length is impossible.
UnknownFormFound an unknown DW_FORM_* type.
ExpectedZeroExpected a zero, found something else.
DuplicateAbbreviationCodeFound an abbreviation code that has already been used.
DuplicateArangeFound a duplicate arange.
UnknownReservedLengthFound an unknown reserved length value.
UnknownVersion(u64)Found an unknown DWARF version.
UnknownAbbreviationFound a record with an unknown abbreviation code.
UnexpectedEofHit the end of input before it was expected.
UnexpectedNullRead a null entry before it was expected.
UnknownStandardOpcode(DwLns)Found an unknown standard opcode.
UnknownExtendedOpcode(DwLne)Found an unknown extended opcode.
UnsupportedAddressSize(u8)The specified address size is not supported.
UnsupportedFieldSize(u8)The specified field size is not supported.
MinimumInstructionLengthZeroThe minimum instruction length must not be zero.
MaximumOperationsPerInstructionZeroThe maximum operations per instruction must not be zero.
LineRangeZeroThe line range must not be zero.
OpcodeBaseZeroThe opcode base must not be zero.
BadUtf8Found an invalid UTF-8 string.
NotCieIdExpected to find the CIE ID, but found something else.
NotCiePointerExpected to find a pointer to a CIE, but found the CIE ID instead.
NotFdePointerExpected to find a pointer to an FDE, but found a CIE instead.
BadBranchTarget(u64)Invalid branch target for a DW_OP_bra or DW_OP_skip.
InvalidPushObjectAddressDW_OP_push_object_address used but no address passed in.
NotEnoughStackItemsNot enough items on the stack when evaluating an expression.
TooManyIterationsToo many iterations to compute the expression.
InvalidExpression(DwOp)An unrecognized operation was found while parsing a DWARF expression.
InvalidPieceThe expression had a piece followed by an expression terminator without a piece.
InvalidExpressionTerminator(u64)An expression-terminating operation was followed by something other than the end of the expression or a piece operation.
DivisionByZeroDivision or modulus by zero when evaluating an expression.
TypeMismatchAn expression operation used mismatching types.
IntegralTypeRequiredAn expression operation required an integral type but saw a floating point type.
UnsupportedTypeOperationAn expression operation used types that are not supported.
InvalidShiftExpressionThe shift value in an expression must be a non-negative integer.
UnknownCallFrameInstruction(DwCfa)An unknown DW_CFA_* instruction.
InvalidAddressRangeThe end of an address range was before the beginning.
InvalidLocationAddressRangeThe end offset of a loc list entry was before the beginning.
CfiInstructionInInvalidContextEncountered a call frame instruction in a context in which it is not valid.
PopWithEmptyStackWhen evaluating call frame instructions, found a DW_CFA_restore_state
stack pop instruction, but the stack was empty, and had nothing to pop.
NoUnwindInfoForAddressDo not have unwind info for the given address.
UnsupportedOffsetAn offset value was larger than the maximum supported value.
UnknownPointerEncodingThe given pointer encoding is either unknown or invalid.
NoEntryAtGivenOffsetDid not find an entry at the given offset.
OffsetOutOfBoundsThe given offset is out of bounds.
UnknownAugmentationFound an unknown CFI augmentation.
UnsupportedPointerEncodingWe do not support the given pointer encoding yet.
CannotFitInU8We tried to convert some number into a u8, but it was too large.
TooManyRegisterRulesThe CFI program defined more register rules than we have storage for.
CfiStackFullAttempted to push onto the CFI stack, but it was already at full capacity.
VariableLengthSearchTableThe .eh_frame_hdr binary search table claims to be variable-length encoded,
which makes binary search impossible.
UnsupportedUnitTypeThe DW_UT_* value for this unit is not supported yet.
UnsupportedAddressIndexRanges using AddressIndex are not supported yet.
UnsupportedSegmentSizeNonzero segment selector sizes aren't supported yet.
Methods
impl Error[src]
impl Errorpub fn description(&self) -> &str[src]
pub fn description(&self) -> &strA short description of the error.
Trait Implementations
impl Debug for Error[src]
impl Debug for Errorfn fmt(&self, f: &mut Formatter) -> Result[src]
fn fmt(&self, f: &mut Formatter) -> ResultFormats the value using the given formatter. Read more
impl Clone for Error[src]
impl Clone for Errorfn clone(&self) -> Error[src]
fn clone(&self) -> ErrorReturns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)1.0.0[src]
fn clone_from(&mut self, source: &Self)Performs copy-assignment from source. Read more
impl Copy for Error[src]
impl Copy for Errorimpl PartialEq for Error[src]
impl PartialEq for Errorfn eq(&self, other: &Error) -> bool[src]
fn eq(&self, other: &Error) -> boolThis method tests for self and other values to be equal, and is used by ==. Read more
fn ne(&self, other: &Error) -> bool[src]
fn ne(&self, other: &Error) -> boolThis method tests for !=.
impl Eq for Error[src]
impl Eq for Errorimpl Display for Error[src]
impl Display for Errorfn fmt(&self, f: &mut Formatter) -> Result<(), Error>[src]
fn fmt(&self, f: &mut Formatter) -> Result<(), Error>Formats the value using the given formatter. Read more
impl Error for Error[src]
impl Error for Errorfn description(&self) -> &str[src]
fn description(&self) -> &strThis method is soft-deprecated. Read more
fn cause(&self) -> Option<&Error>1.0.0[src]
fn cause(&self) -> Option<&Error>The lower-level cause of this error, if any. Read more
impl From<Error> for Error[src]
impl From<Error> for Error