| language-c-0.3.1.1: Analysis and generation of C 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

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
newtype BadSpecifierError

BadSpecifierError is caused by an invalid combination of specifiers
Constructors

BadSpecifierError ErrorInfo |

Instances

Show BadSpecifierError |
Typeable BadSpecifierError |
Error BadSpecifierError |

badSpecifierError :: NodeInfo -> String -> BadSpecifierError
data TypeMismatch

Constructors

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

Instances

Show TypeMismatch |
Typeable TypeMismatch |
Error TypeMismatch |

typeMismatch :: String -> (NodeInfo, Type) -> (NodeInfo, Type) -> TypeMismatch
data RedefError

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

Constructors

RedefInfo String RedefKind NodeInfo NodeInfo |

data RedefKind

Constructors

DuplicateDef |
DiffKindRedecl |
ShadowedDef |

redefinition :: ErrorLevel -> String -> RedefKind -> NodeInfo -> NodeInfo -> RedefError
Produced by Haddock version 2.7.2