| language-c-0.3.2: Analysis and generation of C code | Source code | Contents | Index

Language.C.Analysis.SemError

Portability | ghc
Stability | alpha
Maintainer | benedikt.huber@gmail.com

Description
Errors in the semantic analysis
Synopsis

newtype InvalidASTError = InvalidAST ErrorInfo
invalidAST :: NodeInfo -> String -> InvalidASTError
newtype BadSpecifierError = BadSpecifierError ErrorInfo
badSpecifierError :: NodeInfo -> String -> BadSpecifierError
data TypeMismatch = TypeMismatch String (NodeInfo, Type) (NodeInfo, Type)
typeMismatch :: String -> (NodeInfo, Type) -> (NodeInfo, Type) -> TypeMismatch
data RedefError = RedefError ErrorLevel RedefInfo
data RedefInfo = RedefInfo String RedefKind NodeInfo NodeInfo

data RedefKind

= DuplicateDef
| DiffKindRedecl
| ShadowedDef

redefinition :: ErrorLevel -> String -> RedefKind -> NodeInfo -> NodeInfo -> RedefError

Documentation

newtype InvalidASTError | Source

InvalidASTError is caused by the violation of an invariant in the AST
Constructors

InvalidAST ErrorInfo |

Instances

Show InvalidASTError
Typeable InvalidASTError
Error InvalidASTError

invalidAST :: NodeInfo -> String -> InvalidASTError | Source

newtype BadSpecifierError | Source

BadSpecifierError is caused by an invalid combination of specifiers
Constructors

BadSpecifierError ErrorInfo |

Instances

Show BadSpecifierError
Typeable BadSpecifierError
Error BadSpecifierError

badSpecifierError :: NodeInfo -> String -> BadSpecifierError | Source

data TypeMismatch | Source

Constructors

TypeMismatch String (NodeInfo, Type) (NodeInfo, Type) |

Instances

Show TypeMismatch
Typeable TypeMismatch
Error TypeMismatch

typeMismatch :: String -> (NodeInfo, Type) -> (NodeInfo, Type) -> TypeMismatch | Source

data RedefError | Source

RedefError is caused by an invalid redefinition of the same identifier or type
Constructors

RedefError ErrorLevel RedefInfo |

Instances

Show RedefError
Typeable RedefError
Error RedefError

data RedefInfo | Source

Constructors

RedefInfo String RedefKind NodeInfo NodeInfo |

data RedefKind | Source

Constructors

DuplicateDef |
DiffKindRedecl |
ShadowedDef |

redefinition :: ErrorLevel -> String -> RedefKind -> NodeInfo -> NodeInfo -> RedefError | Source

Produced by Haddock version 2.4.2