crucible-0.10: Crucible is a library for language-agnostic symbolic simulation
Copyright(c) Galois Inc 2014
LicenseBSD3
MaintainerJoe Hendrix <jhendrix@galois.com>
Stabilityprovisional
Safe HaskellNone
LanguageHaskell2010

Lang.Crucible.Simulator.SimError

Description

 
Synopsis

Documentation

data SimErrorReason Source #

Class for exceptions generated by simulator.

Constructors

GenericSimError !String 
Unsupported !CallStack !String

We can't do that (yet?). The call stack identifies where in the Haskell code the error occured.

ReadBeforeWriteSimError !String 
AssertFailureSimError !String !String

An assertion failed. The first parameter is a short description. The second is a more detailed explanation.

ResourceExhausted String

A loop iteration count, or similar resource limit, was exceeded.

data SimError Source #

Bundled Patterns

pattern SimError :: ProgramLoc -> SimErrorReason -> SimError

This pattern synonym constructs SimErrors without a program stack context when used as an expression and ignores the program stack when used as a pattern. It exists because SimError did not used to have a ProgramStack, and there are many usages in the code of the previous constructor which is approximated by this pattern.

Using SimErrorWithContext should be preferred.

data ProgramStack Source #

Representation of the program stack for providing dynamic context for SimErrors

Constructors

ProgramStack 

Fields