-- Hoogle documentation, generated by Haddock
-- See Hoogle, http://www.haskell.org/hoogle/


-- | Ogma: Runtime Monitor translator: C Language Frontend
--   
--   Ogma is a tool to facilitate the integration of safe runtime monitors
--   into other systems. Ogma extends <a>Copilot</a>, a high-level runtime
--   verification framework that generates hard real-time C99 code.
--   
--   This library contains a frontend to read C header files.
@package ogma-language-c
@version 1.12.0


-- | The abstract syntax of language C.
module Language.C.AbsC
data TranslationUnit
MkTranslationUnit :: [ExternalDeclaration] -> TranslationUnit
data ExternalDeclaration
MkExternalDeclarationFunctionDefinition :: FunctionDefinition -> ExternalDeclaration
MkExternalDeclarationDeclaration :: Declaration -> ExternalDeclaration
data FunctionDefinition
MkFunctionDefinition :: [DeclarationSpecifier] -> Declarator -> [Declaration] -> CompoundStatement -> FunctionDefinition
data Declaration
MkDeclaration :: DeclarationSpecifiers -> InitDeclarationListOpt -> Declaration
data DeclarationSpecifiers
DeclarationSpecifiers :: DeclarationSpecifier -> [DeclarationSpecifier] -> DeclarationSpecifiers
data DeclarationSpecifier
MkDeclarationSpecifierStorageClass :: StorageClassSpecifier -> DeclarationSpecifier
MkDeclarationSpecifierTypeSpecifier :: TypeSpecifier -> DeclarationSpecifier
MkDeclarationSpecifierTypeQualifier :: TypeQualifier -> DeclarationSpecifier
data StorageClassSpecifier
MkStorageClassSpecifierAuto :: StorageClassSpecifier
MkStorageClassSpecifierRegister :: StorageClassSpecifier
MkStorageClassSpecifierStatic :: StorageClassSpecifier
MkStorageClassSpecifierExtern :: StorageClassSpecifier
MkStorageClassSpecifierTypedef :: StorageClassSpecifier
data TypeSpecifier
MkTypeSpecifierVoid :: TypeSpecifier
MkTypeSpecifierChar :: TypeSpecifier
MkTypeSpecifierShort :: TypeSpecifier
MkTypeSpecifierInt :: TypeSpecifier
MkTypeSpecifierInt8 :: TypeSpecifier
MkTypeSpecifierInt16 :: TypeSpecifier
MkTypeSpecifierInt32 :: TypeSpecifier
MkTypeSpecifierInt64 :: TypeSpecifier
MkTypeSpecifierUInt8 :: TypeSpecifier
MkTypeSpecifierUInt16 :: TypeSpecifier
MkTypeSpecifierUInt32 :: TypeSpecifier
MkTypeSpecifierUInt64 :: TypeSpecifier
MkTypeSpecifierLong :: TypeSpecifier
MkTypeSpecifierFloat :: TypeSpecifier
MkTypeSpecifierDouble :: TypeSpecifier
MkTypeSpecifierSigned :: TypeSpecifier
MkTypeSpecifierUnsigned :: TypeSpecifier
MkTypeSpecifierStructOrUnion :: StructOrUnionSpecifier -> TypeSpecifier
MkTypeSpecifierEnumSpecifier :: EnumSpecifier -> TypeSpecifier
data TypeQualifier
MkTypeQualifierConst :: TypeQualifier
MkTypeQualifierVolatile :: TypeQualifier
data StructOrUnionSpecifier
MkStructOrUnionSpecifierWithFields :: StructOrUnion -> IdentifierOpt -> [StructDeclaration] -> StructOrUnionSpecifier
MkStructOrUnionSpecifierEmpty :: StructOrUnion -> Identifier -> StructOrUnionSpecifier
data StructOrUnion
MkStructOrUnionStruct :: StructOrUnion
MkStructOrUnionUnion :: StructOrUnion
data InitDeclarationListOpt
MkInitDeclarationListOptNothing :: InitDeclarationListOpt
MkInitDeclarationListOptJust :: [InitDeclarator] -> InitDeclarationListOpt
data InitDeclarator
MkInitDeclaratorUninitialized :: Declarator -> InitDeclarator
MkInitDeclaratorInitialized :: Declarator -> Initializer -> InitDeclarator
data StructDeclaration
MkStructDeclaration :: [SpecifierQualifier] -> [StructDeclarator] -> StructDeclaration
data SpecifierQualifier
MkSpecifierQualifierTypeSpecifier :: TypeSpecifier -> SpecifierQualifier
MkSpecifierQualifierTypeQualifier :: TypeQualifier -> SpecifierQualifier
data StructDeclarator
MkStructDeclaratorDeclarator :: Declarator -> StructDeclarator
MkStructDeclaratorConstant :: DeclaratorOpt -> ConstantExpression -> StructDeclarator
data EnumSpecifier
MkEnumSpecifierWithCases :: IdentifierOpt -> EnumeratorList -> EnumSpecifier
MkEnumSpecifierEmpty :: Identifier -> EnumSpecifier
data EnumeratorList
MkEnumeratorList1 :: Enumerator -> EnumeratorList
MkEnumeratorListN :: EnumeratorList -> Enumerator -> EnumeratorList
data Enumerator
MkEnumeratorUninitialized :: Identifier -> Enumerator
MkEnumeratorInitialized :: Identifier -> ConstantExpression -> Enumerator
data DeclaratorOpt
MkDeclaratorOptNothing :: DeclaratorOpt
MkDeclaratorOptJust :: Declarator -> DeclaratorOpt
data Declarator
MkDeclarator :: PointerOpt -> DirectDeclarator -> Declarator
data DirectDeclarator
MkDirectDeclaratorIdentifier :: Identifier -> DirectDeclarator
MkDirectDeclaratorParDeclarator :: Declarator -> DirectDeclarator
MkDirectDeclaratorConstantExpressionOpt :: DirectDeclarator -> ConstantExpressionOpt -> DirectDeclarator
MkDirectDeclaratorParameterTypeList :: DirectDeclarator -> ParameterTypeList -> DirectDeclarator
MkDirectDeclaratorIdentifierListOpt :: DirectDeclarator -> IdentifierListOpt -> DirectDeclarator
data PointerOpt
MkPointerOptNothing :: PointerOpt
MkPointerOptJust :: Pointer -> PointerOpt
data Pointer
MkPointer1 :: TypeQualifierListOpt -> Pointer
MkPointerN :: TypeQualifierListOpt -> Pointer -> Pointer
data TypeQualifierListOpt
MkTypeQualifierListOptNothing :: TypeQualifierListOpt
MkTypeQualifierListOptJust :: TypeQualifierList -> TypeQualifierListOpt
data TypeQualifierList
MkTypeQualifierList1 :: TypeQualifier -> TypeQualifierList
MkTypeQualifierListN :: TypeQualifierList -> TypeQualifier -> TypeQualifierList
data ParameterTypeList
MkParameterTypeList :: ParameterList -> ParameterTypeList
MkParameterTypeListEllipsis :: ParameterList -> ParameterTypeList
data ParameterList
MkParameterList1 :: ParameterDeclaration -> ParameterList
MkParameterListN :: ParameterList -> ParameterDeclaration -> ParameterList
data ParameterDeclaration
MkParameterDeclarationDeclarator :: DeclarationSpecifiers -> Declarator -> ParameterDeclaration
MkParameterDeclarationAbstractDeclaratorOpt :: DeclarationSpecifiers -> AbstractDeclaratorOpt -> ParameterDeclaration
data IdentifierListOpt
MkIdentifierListOptNothing :: IdentifierListOpt
MkIdentifierListOptJust :: IdentifierList -> IdentifierListOpt
data IdentifierList
MkIdentifierList1 :: Identifier -> IdentifierList
MkIdentifierListN :: IdentifierList -> Identifier -> IdentifierList
data Initializer
MkInitializerAssignment :: Expression -> Initializer
MkInitializerIniutializerList :: InitializerList -> Initializer
MkInitializerIniutializerListC :: InitializerList -> Initializer
data InitializerList
MkInitializerList1 :: Initializer -> InitializerList
MkInitializerListN :: InitializerList -> Initializer -> InitializerList
data TypeName
MkTypeName :: [SpecifierQualifier] -> AbstractDeclaratorOpt -> TypeName
data AbstractDeclaratorOpt
MkAbstractDeclaratorOptNothing :: AbstractDeclaratorOpt
MkAbstractDeclaratorOptJust :: AbstractDeclarator -> AbstractDeclaratorOpt
data AbstractDeclarator
MkAbstractDeclaratorPointer :: Pointer -> AbstractDeclarator
MkAbstractDeclaratorDirect :: PointerOpt -> DirectAbstractDeclarator -> AbstractDeclarator
data DirectAbstractDeclaratorOpt
MkDirectAbstractDeclaratorOptNothing :: DirectAbstractDeclaratorOpt
MkDirectAbstractDeclaratorOptJust :: DirectAbstractDeclarator -> DirectAbstractDeclaratorOpt
data DirectAbstractDeclarator
MkDirectAbstractDeclaratorPar :: AbstractDeclarator -> DirectAbstractDeclarator
MkDirectAbstractDeclaratorConstantExpressionOpt :: DirectAbstractDeclaratorOpt -> ConstantExpressionOpt -> DirectAbstractDeclarator
MkDirectAbstractDeclaratorParameterTypeList :: DirectAbstractDeclaratorOpt -> ParameterTypeList -> DirectAbstractDeclarator
data Statement
MkStatementLabeled :: LabeledStatement -> Statement
MkStatementExpression :: ExpressionStatement -> Statement
MkStatementCompound :: CompoundStatement -> Statement
MkStatementSelection :: SelectionStatement -> Statement
MkStatementIteration :: IterationStatement -> Statement
MkStatementJump :: JumpStatement -> Statement
data LabeledStatement
MkLabeledStatementIdentifier :: Identifier -> Statement -> LabeledStatement
MkLabeledStatementCase :: ConstantExpression -> Statement -> LabeledStatement
MkLabeledStatementDefault :: Statement -> LabeledStatement
data ExpressionStatement
MkExpressionStatement :: ExpressionOpt -> ExpressionStatement
data CompoundStatement
MkCompoundStatement :: [Declaration] -> [Statement] -> CompoundStatement
data SelectionStatement
MkSelectionStatementIfThen :: Expression -> Statement -> SelectionStatement
MkSelectionStatementIfThenElse :: Expression -> Statement -> Statement -> SelectionStatement
MkSelectionStatementSwitch :: Expression -> Statement -> SelectionStatement
data IterationStatement
MkIterationStatementWhile :: Expression -> Statement -> IterationStatement
MkIterationStatementDo :: Statement -> Expression -> IterationStatement
MkIterationStatementFor :: ExpressionOpt -> ExpressionOpt -> ExpressionOpt -> Statement -> IterationStatement
data JumpStatement
MkJumpStatementGoto :: Identifier -> JumpStatement
MkJumpStatementContinue :: JumpStatement
MkJumpStatementBreak :: JumpStatement
MkJumpStatementReturn :: ExpressionOpt -> JumpStatement
data ExpressionOpt
MkExpressionOptNothing :: ExpressionOpt
MkExpressionOptJust :: Expression -> ExpressionOpt
data Expression
Expression12 :: CastExpression -> Expression
Expression11 :: Expression -> MultOp -> Expression -> Expression
Expression10 :: Expression -> AddOp -> Expression -> Expression
Expression9 :: Expression -> ShiftOp -> Expression -> Expression
Expression8 :: Expression -> RelOp -> Expression -> Expression
Expression7 :: Expression -> EqOp -> Expression -> Expression
Expression6 :: Expression -> Expression -> Expression
Expression5 :: Expression -> Expression -> Expression
Expression4 :: Expression -> Expression -> Expression
Expression3 :: Expression -> Expression -> Expression
Expression2 :: Expression -> Expression -> Expression -> Expression
Expression1 :: UnaryExpression -> AssignmentOperator -> Expression -> Expression
Expression :: Expression -> Expression -> Expression
data AssignmentOperator
MkAssignmentOperatorAssign :: AssignmentOperator
MkAssignmentOperatorTimes :: AssignmentOperator
MkAssignmentOperatorDiv :: AssignmentOperator
MkAssignmentOperatorMod :: AssignmentOperator
MkAssignmentOperatorPlus :: AssignmentOperator
MkAssignmentOperatorMinus :: AssignmentOperator
MkAssignmentOperatorShiftL :: AssignmentOperator
MkAssignmentOperatorShiftR :: AssignmentOperator
MkAssignmentOperatorAnd :: AssignmentOperator
MkAssignmentOperatorXOr :: AssignmentOperator
MkAssignmentOperatorOr :: AssignmentOperator
data ConstantExpressionOpt
MkConditionalExpressionNothing :: ConstantExpressionOpt
MkConditionalExpressionJust :: ConstantExpression -> ConstantExpressionOpt
data ConstantExpression
MkConstantExpression :: Expression -> ConstantExpression
data EqOp
EqOpEq :: EqOp
EqOpNeq :: EqOp
data RelOp
RelOpLT :: RelOp
RelOpGT :: RelOp
RelOpLE :: RelOp
RelOpGE :: RelOp
data ShiftOp
ShiftOpLeft :: ShiftOp
ShiftOpRight :: ShiftOp
data AddOp
AddOpPlus :: AddOp
AddOpMinus :: AddOp
data MultOp
MultOpTimes :: MultOp
MultOpDiv :: MultOp
MultOpMod :: MultOp
data CastExpression
MkCastExpression1 :: UnaryExpression -> CastExpression
MkCastExpressionN :: TypeName -> CastExpression -> CastExpression
data UnaryExpression
MkUnaryExpressionPostfix :: PostfixExpression -> UnaryExpression
MkUnaryExpressionPlus2 :: UnaryExpression -> UnaryExpression
MkUnaryExpressionMinus2 :: UnaryExpression -> UnaryExpression
MkUnaryExpressionUnaryOp :: UnaryOperator -> CastExpression -> UnaryExpression
MkUnaryExpressionSizeof1 :: UnaryExpression -> UnaryExpression
MkUnaryExpressionSizeofPar :: TypeName -> UnaryExpression
data UnaryOperator
MkUnaryOperatorAnd :: UnaryOperator
MkUnaryOperatorTimes :: UnaryOperator
MkUnaryOperatorPlus :: UnaryOperator
MkUnaryOperatorMinus :: UnaryOperator
MkUnaryOperatorTilde :: UnaryOperator
MkUnaryOperatorBang :: UnaryOperator
data PostfixExpression
MkPostfixExpression1 :: PrimaryExpression -> PostfixExpression
MkPostfixExpressionBrackets :: PostfixExpression -> Expression -> PostfixExpression
MkPostfixExpressionArgumentExpressionListOpt :: PostfixExpression -> ArgumentExpressionListOpt -> PostfixExpression
MkPostfixExpressionDot :: PostfixExpression -> Identifier -> PostfixExpression
MkPostfixExpressionArrow :: PostfixExpression -> Identifier -> PostfixExpression
MkPostfixExpressionPlus2 :: PostfixExpression -> PostfixExpression
MkPostfixExpressionMinus2 :: PostfixExpression -> PostfixExpression
data PrimaryExpression
MkPrimaryExpressionIdentifier :: Identifier -> PrimaryExpression
MkPrimaryExpressionConstant :: Constant -> PrimaryExpression
MkPrimaryExpressionString :: String -> PrimaryExpression
MkPrimaryExpressionParExpression :: Expression -> PrimaryExpression
data ArgumentExpressionListOpt
MkArgumentExpressionListOptNothing :: ArgumentExpressionListOpt
MkArgumentExpressionListOptJust :: [Expression] -> ArgumentExpressionListOpt
data Constant
MkConstantInteger :: IntegerConstant -> Constant
MkConstantCharacter :: CharacterConstant -> Constant
MkConstantFloating :: FloatingConstant -> Constant
data IdentifierOpt
MkIdentifierOptNothing :: IdentifierOpt
MkIdentifierOptJust :: Identifier -> IdentifierOpt
data CharacterConstant
MkCharacterConstant :: Char -> CharacterConstant
data FloatingConstant
MkFloatingConstant :: Double -> FloatingConstant
newtype Identifier
Identifier :: String -> Identifier
newtype IntegerConstant
IntegerConstant :: String -> IntegerConstant
instance GHC.Classes.Eq Language.C.AbsC.AbstractDeclarator
instance GHC.Classes.Eq Language.C.AbsC.AbstractDeclaratorOpt
instance GHC.Classes.Eq Language.C.AbsC.AddOp
instance GHC.Classes.Eq Language.C.AbsC.ArgumentExpressionListOpt
instance GHC.Classes.Eq Language.C.AbsC.AssignmentOperator
instance GHC.Classes.Eq Language.C.AbsC.CastExpression
instance GHC.Classes.Eq Language.C.AbsC.CharacterConstant
instance GHC.Classes.Eq Language.C.AbsC.CompoundStatement
instance GHC.Classes.Eq Language.C.AbsC.Constant
instance GHC.Classes.Eq Language.C.AbsC.ConstantExpression
instance GHC.Classes.Eq Language.C.AbsC.ConstantExpressionOpt
instance GHC.Classes.Eq Language.C.AbsC.Declaration
instance GHC.Classes.Eq Language.C.AbsC.DeclarationSpecifier
instance GHC.Classes.Eq Language.C.AbsC.DeclarationSpecifiers
instance GHC.Classes.Eq Language.C.AbsC.Declarator
instance GHC.Classes.Eq Language.C.AbsC.DeclaratorOpt
instance GHC.Classes.Eq Language.C.AbsC.DirectAbstractDeclarator
instance GHC.Classes.Eq Language.C.AbsC.DirectAbstractDeclaratorOpt
instance GHC.Classes.Eq Language.C.AbsC.DirectDeclarator
instance GHC.Classes.Eq Language.C.AbsC.EnumSpecifier
instance GHC.Classes.Eq Language.C.AbsC.Enumerator
instance GHC.Classes.Eq Language.C.AbsC.EnumeratorList
instance GHC.Classes.Eq Language.C.AbsC.EqOp
instance GHC.Classes.Eq Language.C.AbsC.Expression
instance GHC.Classes.Eq Language.C.AbsC.ExpressionOpt
instance GHC.Classes.Eq Language.C.AbsC.ExpressionStatement
instance GHC.Classes.Eq Language.C.AbsC.ExternalDeclaration
instance GHC.Classes.Eq Language.C.AbsC.FloatingConstant
instance GHC.Classes.Eq Language.C.AbsC.FunctionDefinition
instance GHC.Classes.Eq Language.C.AbsC.Identifier
instance GHC.Classes.Eq Language.C.AbsC.IdentifierList
instance GHC.Classes.Eq Language.C.AbsC.IdentifierListOpt
instance GHC.Classes.Eq Language.C.AbsC.IdentifierOpt
instance GHC.Classes.Eq Language.C.AbsC.InitDeclarationListOpt
instance GHC.Classes.Eq Language.C.AbsC.InitDeclarator
instance GHC.Classes.Eq Language.C.AbsC.Initializer
instance GHC.Classes.Eq Language.C.AbsC.InitializerList
instance GHC.Classes.Eq Language.C.AbsC.IntegerConstant
instance GHC.Classes.Eq Language.C.AbsC.IterationStatement
instance GHC.Classes.Eq Language.C.AbsC.JumpStatement
instance GHC.Classes.Eq Language.C.AbsC.LabeledStatement
instance GHC.Classes.Eq Language.C.AbsC.MultOp
instance GHC.Classes.Eq Language.C.AbsC.ParameterDeclaration
instance GHC.Classes.Eq Language.C.AbsC.ParameterList
instance GHC.Classes.Eq Language.C.AbsC.ParameterTypeList
instance GHC.Classes.Eq Language.C.AbsC.Pointer
instance GHC.Classes.Eq Language.C.AbsC.PointerOpt
instance GHC.Classes.Eq Language.C.AbsC.PostfixExpression
instance GHC.Classes.Eq Language.C.AbsC.PrimaryExpression
instance GHC.Classes.Eq Language.C.AbsC.RelOp
instance GHC.Classes.Eq Language.C.AbsC.SelectionStatement
instance GHC.Classes.Eq Language.C.AbsC.ShiftOp
instance GHC.Classes.Eq Language.C.AbsC.SpecifierQualifier
instance GHC.Classes.Eq Language.C.AbsC.Statement
instance GHC.Classes.Eq Language.C.AbsC.StorageClassSpecifier
instance GHC.Classes.Eq Language.C.AbsC.StructDeclaration
instance GHC.Classes.Eq Language.C.AbsC.StructDeclarator
instance GHC.Classes.Eq Language.C.AbsC.StructOrUnion
instance GHC.Classes.Eq Language.C.AbsC.StructOrUnionSpecifier
instance GHC.Classes.Eq Language.C.AbsC.TranslationUnit
instance GHC.Classes.Eq Language.C.AbsC.TypeName
instance GHC.Classes.Eq Language.C.AbsC.TypeQualifier
instance GHC.Classes.Eq Language.C.AbsC.TypeQualifierList
instance GHC.Classes.Eq Language.C.AbsC.TypeQualifierListOpt
instance GHC.Classes.Eq Language.C.AbsC.TypeSpecifier
instance GHC.Classes.Eq Language.C.AbsC.UnaryExpression
instance GHC.Classes.Eq Language.C.AbsC.UnaryOperator
instance GHC.Internal.Data.String.IsString Language.C.AbsC.Identifier
instance GHC.Internal.Data.String.IsString Language.C.AbsC.IntegerConstant
instance GHC.Classes.Ord Language.C.AbsC.AbstractDeclarator
instance GHC.Classes.Ord Language.C.AbsC.AbstractDeclaratorOpt
instance GHC.Classes.Ord Language.C.AbsC.AddOp
instance GHC.Classes.Ord Language.C.AbsC.ArgumentExpressionListOpt
instance GHC.Classes.Ord Language.C.AbsC.AssignmentOperator
instance GHC.Classes.Ord Language.C.AbsC.CastExpression
instance GHC.Classes.Ord Language.C.AbsC.CharacterConstant
instance GHC.Classes.Ord Language.C.AbsC.CompoundStatement
instance GHC.Classes.Ord Language.C.AbsC.Constant
instance GHC.Classes.Ord Language.C.AbsC.ConstantExpression
instance GHC.Classes.Ord Language.C.AbsC.ConstantExpressionOpt
instance GHC.Classes.Ord Language.C.AbsC.Declaration
instance GHC.Classes.Ord Language.C.AbsC.DeclarationSpecifier
instance GHC.Classes.Ord Language.C.AbsC.DeclarationSpecifiers
instance GHC.Classes.Ord Language.C.AbsC.Declarator
instance GHC.Classes.Ord Language.C.AbsC.DeclaratorOpt
instance GHC.Classes.Ord Language.C.AbsC.DirectAbstractDeclarator
instance GHC.Classes.Ord Language.C.AbsC.DirectAbstractDeclaratorOpt
instance GHC.Classes.Ord Language.C.AbsC.DirectDeclarator
instance GHC.Classes.Ord Language.C.AbsC.EnumSpecifier
instance GHC.Classes.Ord Language.C.AbsC.Enumerator
instance GHC.Classes.Ord Language.C.AbsC.EnumeratorList
instance GHC.Classes.Ord Language.C.AbsC.EqOp
instance GHC.Classes.Ord Language.C.AbsC.Expression
instance GHC.Classes.Ord Language.C.AbsC.ExpressionOpt
instance GHC.Classes.Ord Language.C.AbsC.ExpressionStatement
instance GHC.Classes.Ord Language.C.AbsC.ExternalDeclaration
instance GHC.Classes.Ord Language.C.AbsC.FloatingConstant
instance GHC.Classes.Ord Language.C.AbsC.FunctionDefinition
instance GHC.Classes.Ord Language.C.AbsC.Identifier
instance GHC.Classes.Ord Language.C.AbsC.IdentifierList
instance GHC.Classes.Ord Language.C.AbsC.IdentifierListOpt
instance GHC.Classes.Ord Language.C.AbsC.IdentifierOpt
instance GHC.Classes.Ord Language.C.AbsC.InitDeclarationListOpt
instance GHC.Classes.Ord Language.C.AbsC.InitDeclarator
instance GHC.Classes.Ord Language.C.AbsC.Initializer
instance GHC.Classes.Ord Language.C.AbsC.InitializerList
instance GHC.Classes.Ord Language.C.AbsC.IntegerConstant
instance GHC.Classes.Ord Language.C.AbsC.IterationStatement
instance GHC.Classes.Ord Language.C.AbsC.JumpStatement
instance GHC.Classes.Ord Language.C.AbsC.LabeledStatement
instance GHC.Classes.Ord Language.C.AbsC.MultOp
instance GHC.Classes.Ord Language.C.AbsC.ParameterDeclaration
instance GHC.Classes.Ord Language.C.AbsC.ParameterList
instance GHC.Classes.Ord Language.C.AbsC.ParameterTypeList
instance GHC.Classes.Ord Language.C.AbsC.Pointer
instance GHC.Classes.Ord Language.C.AbsC.PointerOpt
instance GHC.Classes.Ord Language.C.AbsC.PostfixExpression
instance GHC.Classes.Ord Language.C.AbsC.PrimaryExpression
instance GHC.Classes.Ord Language.C.AbsC.RelOp
instance GHC.Classes.Ord Language.C.AbsC.SelectionStatement
instance GHC.Classes.Ord Language.C.AbsC.ShiftOp
instance GHC.Classes.Ord Language.C.AbsC.SpecifierQualifier
instance GHC.Classes.Ord Language.C.AbsC.Statement
instance GHC.Classes.Ord Language.C.AbsC.StorageClassSpecifier
instance GHC.Classes.Ord Language.C.AbsC.StructDeclaration
instance GHC.Classes.Ord Language.C.AbsC.StructDeclarator
instance GHC.Classes.Ord Language.C.AbsC.StructOrUnion
instance GHC.Classes.Ord Language.C.AbsC.StructOrUnionSpecifier
instance GHC.Classes.Ord Language.C.AbsC.TranslationUnit
instance GHC.Classes.Ord Language.C.AbsC.TypeName
instance GHC.Classes.Ord Language.C.AbsC.TypeQualifier
instance GHC.Classes.Ord Language.C.AbsC.TypeQualifierList
instance GHC.Classes.Ord Language.C.AbsC.TypeQualifierListOpt
instance GHC.Classes.Ord Language.C.AbsC.TypeSpecifier
instance GHC.Classes.Ord Language.C.AbsC.UnaryExpression
instance GHC.Classes.Ord Language.C.AbsC.UnaryOperator
instance GHC.Internal.Read.Read Language.C.AbsC.AbstractDeclarator
instance GHC.Internal.Read.Read Language.C.AbsC.AbstractDeclaratorOpt
instance GHC.Internal.Read.Read Language.C.AbsC.AddOp
instance GHC.Internal.Read.Read Language.C.AbsC.ArgumentExpressionListOpt
instance GHC.Internal.Read.Read Language.C.AbsC.AssignmentOperator
instance GHC.Internal.Read.Read Language.C.AbsC.CastExpression
instance GHC.Internal.Read.Read Language.C.AbsC.CharacterConstant
instance GHC.Internal.Read.Read Language.C.AbsC.CompoundStatement
instance GHC.Internal.Read.Read Language.C.AbsC.Constant
instance GHC.Internal.Read.Read Language.C.AbsC.ConstantExpression
instance GHC.Internal.Read.Read Language.C.AbsC.ConstantExpressionOpt
instance GHC.Internal.Read.Read Language.C.AbsC.Declaration
instance GHC.Internal.Read.Read Language.C.AbsC.DeclarationSpecifier
instance GHC.Internal.Read.Read Language.C.AbsC.DeclarationSpecifiers
instance GHC.Internal.Read.Read Language.C.AbsC.Declarator
instance GHC.Internal.Read.Read Language.C.AbsC.DeclaratorOpt
instance GHC.Internal.Read.Read Language.C.AbsC.DirectAbstractDeclarator
instance GHC.Internal.Read.Read Language.C.AbsC.DirectAbstractDeclaratorOpt
instance GHC.Internal.Read.Read Language.C.AbsC.DirectDeclarator
instance GHC.Internal.Read.Read Language.C.AbsC.EnumSpecifier
instance GHC.Internal.Read.Read Language.C.AbsC.Enumerator
instance GHC.Internal.Read.Read Language.C.AbsC.EnumeratorList
instance GHC.Internal.Read.Read Language.C.AbsC.EqOp
instance GHC.Internal.Read.Read Language.C.AbsC.Expression
instance GHC.Internal.Read.Read Language.C.AbsC.ExpressionOpt
instance GHC.Internal.Read.Read Language.C.AbsC.ExpressionStatement
instance GHC.Internal.Read.Read Language.C.AbsC.ExternalDeclaration
instance GHC.Internal.Read.Read Language.C.AbsC.FloatingConstant
instance GHC.Internal.Read.Read Language.C.AbsC.FunctionDefinition
instance GHC.Internal.Read.Read Language.C.AbsC.Identifier
instance GHC.Internal.Read.Read Language.C.AbsC.IdentifierList
instance GHC.Internal.Read.Read Language.C.AbsC.IdentifierListOpt
instance GHC.Internal.Read.Read Language.C.AbsC.IdentifierOpt
instance GHC.Internal.Read.Read Language.C.AbsC.InitDeclarationListOpt
instance GHC.Internal.Read.Read Language.C.AbsC.InitDeclarator
instance GHC.Internal.Read.Read Language.C.AbsC.Initializer
instance GHC.Internal.Read.Read Language.C.AbsC.InitializerList
instance GHC.Internal.Read.Read Language.C.AbsC.IntegerConstant
instance GHC.Internal.Read.Read Language.C.AbsC.IterationStatement
instance GHC.Internal.Read.Read Language.C.AbsC.JumpStatement
instance GHC.Internal.Read.Read Language.C.AbsC.LabeledStatement
instance GHC.Internal.Read.Read Language.C.AbsC.MultOp
instance GHC.Internal.Read.Read Language.C.AbsC.ParameterDeclaration
instance GHC.Internal.Read.Read Language.C.AbsC.ParameterList
instance GHC.Internal.Read.Read Language.C.AbsC.ParameterTypeList
instance GHC.Internal.Read.Read Language.C.AbsC.Pointer
instance GHC.Internal.Read.Read Language.C.AbsC.PointerOpt
instance GHC.Internal.Read.Read Language.C.AbsC.PostfixExpression
instance GHC.Internal.Read.Read Language.C.AbsC.PrimaryExpression
instance GHC.Internal.Read.Read Language.C.AbsC.RelOp
instance GHC.Internal.Read.Read Language.C.AbsC.SelectionStatement
instance GHC.Internal.Read.Read Language.C.AbsC.ShiftOp
instance GHC.Internal.Read.Read Language.C.AbsC.SpecifierQualifier
instance GHC.Internal.Read.Read Language.C.AbsC.Statement
instance GHC.Internal.Read.Read Language.C.AbsC.StorageClassSpecifier
instance GHC.Internal.Read.Read Language.C.AbsC.StructDeclaration
instance GHC.Internal.Read.Read Language.C.AbsC.StructDeclarator
instance GHC.Internal.Read.Read Language.C.AbsC.StructOrUnion
instance GHC.Internal.Read.Read Language.C.AbsC.StructOrUnionSpecifier
instance GHC.Internal.Read.Read Language.C.AbsC.TranslationUnit
instance GHC.Internal.Read.Read Language.C.AbsC.TypeName
instance GHC.Internal.Read.Read Language.C.AbsC.TypeQualifier
instance GHC.Internal.Read.Read Language.C.AbsC.TypeQualifierList
instance GHC.Internal.Read.Read Language.C.AbsC.TypeQualifierListOpt
instance GHC.Internal.Read.Read Language.C.AbsC.TypeSpecifier
instance GHC.Internal.Read.Read Language.C.AbsC.UnaryExpression
instance GHC.Internal.Read.Read Language.C.AbsC.UnaryOperator
instance GHC.Internal.Show.Show Language.C.AbsC.AbstractDeclarator
instance GHC.Internal.Show.Show Language.C.AbsC.AbstractDeclaratorOpt
instance GHC.Internal.Show.Show Language.C.AbsC.AddOp
instance GHC.Internal.Show.Show Language.C.AbsC.ArgumentExpressionListOpt
instance GHC.Internal.Show.Show Language.C.AbsC.AssignmentOperator
instance GHC.Internal.Show.Show Language.C.AbsC.CastExpression
instance GHC.Internal.Show.Show Language.C.AbsC.CharacterConstant
instance GHC.Internal.Show.Show Language.C.AbsC.CompoundStatement
instance GHC.Internal.Show.Show Language.C.AbsC.Constant
instance GHC.Internal.Show.Show Language.C.AbsC.ConstantExpression
instance GHC.Internal.Show.Show Language.C.AbsC.ConstantExpressionOpt
instance GHC.Internal.Show.Show Language.C.AbsC.Declaration
instance GHC.Internal.Show.Show Language.C.AbsC.DeclarationSpecifier
instance GHC.Internal.Show.Show Language.C.AbsC.DeclarationSpecifiers
instance GHC.Internal.Show.Show Language.C.AbsC.Declarator
instance GHC.Internal.Show.Show Language.C.AbsC.DeclaratorOpt
instance GHC.Internal.Show.Show Language.C.AbsC.DirectAbstractDeclarator
instance GHC.Internal.Show.Show Language.C.AbsC.DirectAbstractDeclaratorOpt
instance GHC.Internal.Show.Show Language.C.AbsC.DirectDeclarator
instance GHC.Internal.Show.Show Language.C.AbsC.EnumSpecifier
instance GHC.Internal.Show.Show Language.C.AbsC.Enumerator
instance GHC.Internal.Show.Show Language.C.AbsC.EnumeratorList
instance GHC.Internal.Show.Show Language.C.AbsC.EqOp
instance GHC.Internal.Show.Show Language.C.AbsC.Expression
instance GHC.Internal.Show.Show Language.C.AbsC.ExpressionOpt
instance GHC.Internal.Show.Show Language.C.AbsC.ExpressionStatement
instance GHC.Internal.Show.Show Language.C.AbsC.ExternalDeclaration
instance GHC.Internal.Show.Show Language.C.AbsC.FloatingConstant
instance GHC.Internal.Show.Show Language.C.AbsC.FunctionDefinition
instance GHC.Internal.Show.Show Language.C.AbsC.Identifier
instance GHC.Internal.Show.Show Language.C.AbsC.IdentifierList
instance GHC.Internal.Show.Show Language.C.AbsC.IdentifierListOpt
instance GHC.Internal.Show.Show Language.C.AbsC.IdentifierOpt
instance GHC.Internal.Show.Show Language.C.AbsC.InitDeclarationListOpt
instance GHC.Internal.Show.Show Language.C.AbsC.InitDeclarator
instance GHC.Internal.Show.Show Language.C.AbsC.Initializer
instance GHC.Internal.Show.Show Language.C.AbsC.InitializerList
instance GHC.Internal.Show.Show Language.C.AbsC.IntegerConstant
instance GHC.Internal.Show.Show Language.C.AbsC.IterationStatement
instance GHC.Internal.Show.Show Language.C.AbsC.JumpStatement
instance GHC.Internal.Show.Show Language.C.AbsC.LabeledStatement
instance GHC.Internal.Show.Show Language.C.AbsC.MultOp
instance GHC.Internal.Show.Show Language.C.AbsC.ParameterDeclaration
instance GHC.Internal.Show.Show Language.C.AbsC.ParameterList
instance GHC.Internal.Show.Show Language.C.AbsC.ParameterTypeList
instance GHC.Internal.Show.Show Language.C.AbsC.Pointer
instance GHC.Internal.Show.Show Language.C.AbsC.PointerOpt
instance GHC.Internal.Show.Show Language.C.AbsC.PostfixExpression
instance GHC.Internal.Show.Show Language.C.AbsC.PrimaryExpression
instance GHC.Internal.Show.Show Language.C.AbsC.RelOp
instance GHC.Internal.Show.Show Language.C.AbsC.SelectionStatement
instance GHC.Internal.Show.Show Language.C.AbsC.ShiftOp
instance GHC.Internal.Show.Show Language.C.AbsC.SpecifierQualifier
instance GHC.Internal.Show.Show Language.C.AbsC.Statement
instance GHC.Internal.Show.Show Language.C.AbsC.StorageClassSpecifier
instance GHC.Internal.Show.Show Language.C.AbsC.StructDeclaration
instance GHC.Internal.Show.Show Language.C.AbsC.StructDeclarator
instance GHC.Internal.Show.Show Language.C.AbsC.StructOrUnion
instance GHC.Internal.Show.Show Language.C.AbsC.StructOrUnionSpecifier
instance GHC.Internal.Show.Show Language.C.AbsC.TranslationUnit
instance GHC.Internal.Show.Show Language.C.AbsC.TypeName
instance GHC.Internal.Show.Show Language.C.AbsC.TypeQualifier
instance GHC.Internal.Show.Show Language.C.AbsC.TypeQualifierList
instance GHC.Internal.Show.Show Language.C.AbsC.TypeQualifierListOpt
instance GHC.Internal.Show.Show Language.C.AbsC.TypeSpecifier
instance GHC.Internal.Show.Show Language.C.AbsC.UnaryExpression
instance GHC.Internal.Show.Show Language.C.AbsC.UnaryOperator

module Language.C.LexC
alex_tab_size :: Int
alex_base :: AlexAddr
alex_table :: AlexAddr
alex_check :: AlexAddr
alex_deflt :: AlexAddr
alex_accept :: Array Int (AlexAcc user)
alex_actions :: Array Int (Posn -> String -> Token)
alex_action_4 :: Posn -> String -> Token
alex_action_5 :: Posn -> String -> Token
alex_action_6 :: Posn -> String -> Token
alex_action_7 :: Posn -> String -> Token
alex_action_8 :: Posn -> String -> Token
alex_action_9 :: Posn -> String -> Token
alex_action_10 :: Posn -> String -> Token
data AlexAddr
AlexA# :: Addr# -> AlexAddr
alexIndexInt16OffAddr :: AlexAddr -> Int# -> Int#
alexIndexInt32OffAddr :: AlexAddr -> Int# -> Int#
quickIndex :: Array Int (AlexAcc (ZonkAny 0 :: Type)) -> Int -> AlexAcc (ZonkAny 0 :: Type)
data AlexReturn a
AlexEOF :: AlexReturn a
AlexError :: !AlexInput -> AlexReturn a
AlexSkip :: !AlexInput -> !Int -> AlexReturn a
AlexToken :: !AlexInput -> !Int -> a -> AlexReturn a
alexScan :: (Posn, Char, [Byte], String) -> Int -> AlexReturn (Posn -> String -> Token)
alexScanUser :: t -> (Posn, Char, [Byte], String) -> Int -> AlexReturn (Posn -> String -> Token)
alex_scan_tkn :: t1 -> t2 -> Int# -> AlexInput -> Int# -> AlexLastAcc -> (AlexLastAcc, AlexInput)
data AlexLastAcc
AlexNone :: AlexLastAcc
AlexLastAcc :: !Int -> !AlexInput -> !Int -> AlexLastAcc
AlexLastSkip :: !AlexInput -> !Int -> AlexLastAcc
data AlexAcc user
AlexAccNone :: AlexAcc user
AlexAcc :: Int -> AlexAcc user
AlexAccSkip :: AlexAcc user

-- | Create a token with position.
tok :: (String -> Tok) -> Posn -> String -> Token

-- | Token without position.
data Tok

-- | Reserved word or symbol.
TK :: {-# UNPACK #-} !TokSymbol -> Tok

-- | String literal.
TL :: !String -> Tok

-- | Integer literal.
TI :: !String -> Tok

-- | Identifier.
TV :: !String -> Tok

-- | Float literal.
TD :: !String -> Tok

-- | Character literal.
TC :: !String -> Tok
T_Identifier :: !String -> Tok
T_IntegerConstant :: !String -> Tok

-- | Smart constructor for <a>Tok</a> for the sake of backwards
--   compatibility.
pattern TS :: String -> Int -> Tok

-- | Keyword or symbol tokens have a unique ID.
data TokSymbol
TokSymbol :: String -> !Int -> TokSymbol

-- | Keyword or symbol text.
[tsText] :: TokSymbol -> String

-- | Unique ID.
[tsID] :: TokSymbol -> !Int

-- | Token with position.
data Token
PT :: Posn -> Tok -> Token
Err :: Posn -> Token

-- | Pretty print a position.
printPosn :: Posn -> String

-- | Pretty print the position of the first token in the list.
tokenPos :: [Token] -> String

-- | Get the position of a token.
tokenPosn :: Token -> Posn

-- | Get line and column of a token.
tokenLineCol :: Token -> (Int, Int)

-- | Get line and column of a position.
posLineCol :: Posn -> (Int, Int)

-- | Convert a token into "position token" form.
mkPosToken :: Token -> ((Int, Int), String)

-- | Convert a token to its text.
tokenText :: Token -> String

-- | Convert a token to a string.
prToken :: Token -> String

-- | Finite map from text to token organized as binary search tree.
data BTree

-- | Nil (leaf).
N :: BTree

-- | Binary node.
B :: String -> Tok -> BTree -> BTree -> BTree

-- | Convert potential keyword into token or use fallback conversion.
eitherResIdent :: (String -> Tok) -> String -> Tok

-- | The keywords and symbols of the language organized as binary search
--   tree.
resWords :: BTree

-- | Unquote string literal.
unescapeInitTail :: String -> String
data Posn
Pn :: !Int -> !Int -> !Int -> Posn
alexStartPos :: Posn
alexMove :: Posn -> Char -> Posn
type Byte = Word8
type AlexInput = (Posn, Char, [Byte], String)
tokens :: String -> [Token]
alexGetByte :: AlexInput -> Maybe (Byte, AlexInput)
alexInputPrevChar :: AlexInput -> Char

-- | Encode a Haskell String to a list of Word8 values, in UTF8 format.
utf8Encode :: Char -> [Word8]
instance GHC.Classes.Eq Language.C.LexC.Posn
instance GHC.Classes.Eq Language.C.LexC.Tok
instance GHC.Classes.Eq Language.C.LexC.TokSymbol
instance GHC.Classes.Eq Language.C.LexC.Token
instance GHC.Classes.Ord Language.C.LexC.Posn
instance GHC.Classes.Ord Language.C.LexC.Tok
instance GHC.Classes.Ord Language.C.LexC.TokSymbol
instance GHC.Classes.Ord Language.C.LexC.Token
instance GHC.Internal.Show.Show Language.C.LexC.BTree
instance GHC.Internal.Show.Show Language.C.LexC.Posn
instance GHC.Internal.Show.Show Language.C.LexC.Tok
instance GHC.Internal.Show.Show Language.C.LexC.TokSymbol
instance GHC.Internal.Show.Show Language.C.LexC.Token

module Language.C.ParC
happyError :: [Token] -> Err a
myLexer :: String -> [Token]
pTranslationUnit :: [Token] -> Err TranslationUnit
instance GHC.Internal.Show.Show Language.C.ParC.HappyAction


-- | Pretty-printer for Language.
module Language.C.PrintC

-- | The top-level printing method.
printTree :: Print a => a -> String
type Doc = [ShowS] -> [ShowS]
doc :: ShowS -> Doc
render :: Doc -> String
parenth :: Doc -> Doc
concatS :: [ShowS] -> ShowS
concatD :: [Doc] -> Doc
replicateS :: Int -> ShowS -> ShowS

-- | The printer class does the job.
class Print a
prt :: Print a => Int -> a -> Doc
printString :: String -> Doc
mkEsc :: Char -> Char -> ShowS
prPrec :: Int -> Int -> Doc -> Doc
instance Language.C.PrintC.Print Language.C.AbsC.AbstractDeclarator
instance Language.C.PrintC.Print Language.C.AbsC.AbstractDeclaratorOpt
instance Language.C.PrintC.Print Language.C.AbsC.AddOp
instance Language.C.PrintC.Print Language.C.AbsC.ArgumentExpressionListOpt
instance Language.C.PrintC.Print Language.C.AbsC.AssignmentOperator
instance Language.C.PrintC.Print Language.C.AbsC.CastExpression
instance Language.C.PrintC.Print GHC.Types.Char
instance Language.C.PrintC.Print Language.C.AbsC.CharacterConstant
instance Language.C.PrintC.Print Language.C.AbsC.CompoundStatement
instance Language.C.PrintC.Print Language.C.AbsC.Constant
instance Language.C.PrintC.Print Language.C.AbsC.ConstantExpression
instance Language.C.PrintC.Print Language.C.AbsC.ConstantExpressionOpt
instance Language.C.PrintC.Print Language.C.AbsC.Declaration
instance Language.C.PrintC.Print Language.C.AbsC.DeclarationSpecifier
instance Language.C.PrintC.Print Language.C.AbsC.DeclarationSpecifiers
instance Language.C.PrintC.Print Language.C.AbsC.Declarator
instance Language.C.PrintC.Print Language.C.AbsC.DeclaratorOpt
instance Language.C.PrintC.Print Language.C.AbsC.DirectAbstractDeclarator
instance Language.C.PrintC.Print Language.C.AbsC.DirectAbstractDeclaratorOpt
instance Language.C.PrintC.Print Language.C.AbsC.DirectDeclarator
instance Language.C.PrintC.Print GHC.Types.Double
instance Language.C.PrintC.Print Language.C.AbsC.EnumSpecifier
instance Language.C.PrintC.Print Language.C.AbsC.Enumerator
instance Language.C.PrintC.Print Language.C.AbsC.EnumeratorList
instance Language.C.PrintC.Print Language.C.AbsC.EqOp
instance Language.C.PrintC.Print Language.C.AbsC.Expression
instance Language.C.PrintC.Print Language.C.AbsC.ExpressionOpt
instance Language.C.PrintC.Print Language.C.AbsC.ExpressionStatement
instance Language.C.PrintC.Print Language.C.AbsC.ExternalDeclaration
instance Language.C.PrintC.Print Language.C.AbsC.FloatingConstant
instance Language.C.PrintC.Print Language.C.AbsC.FunctionDefinition
instance Language.C.PrintC.Print Language.C.AbsC.Identifier
instance Language.C.PrintC.Print Language.C.AbsC.IdentifierList
instance Language.C.PrintC.Print Language.C.AbsC.IdentifierListOpt
instance Language.C.PrintC.Print Language.C.AbsC.IdentifierOpt
instance Language.C.PrintC.Print Language.C.AbsC.InitDeclarationListOpt
instance Language.C.PrintC.Print Language.C.AbsC.InitDeclarator
instance Language.C.PrintC.Print Language.C.AbsC.Initializer
instance Language.C.PrintC.Print Language.C.AbsC.InitializerList
instance Language.C.PrintC.Print GHC.Num.Integer.Integer
instance Language.C.PrintC.Print Language.C.AbsC.IntegerConstant
instance Language.C.PrintC.Print Language.C.AbsC.IterationStatement
instance Language.C.PrintC.Print Language.C.AbsC.JumpStatement
instance Language.C.PrintC.Print Language.C.AbsC.LabeledStatement
instance Language.C.PrintC.Print a => Language.C.PrintC.Print [a]
instance Language.C.PrintC.Print GHC.Internal.Base.String
instance Language.C.PrintC.Print [Language.C.AbsC.ExternalDeclaration]
instance Language.C.PrintC.Print [Language.C.AbsC.Declaration]
instance Language.C.PrintC.Print [Language.C.AbsC.DeclarationSpecifier]
instance Language.C.PrintC.Print [Language.C.AbsC.StructDeclaration]
instance Language.C.PrintC.Print [Language.C.AbsC.InitDeclarator]
instance Language.C.PrintC.Print [Language.C.AbsC.SpecifierQualifier]
instance Language.C.PrintC.Print [Language.C.AbsC.StructDeclarator]
instance Language.C.PrintC.Print [Language.C.AbsC.Statement]
instance Language.C.PrintC.Print [Language.C.AbsC.Expression]
instance Language.C.PrintC.Print Language.C.AbsC.MultOp
instance Language.C.PrintC.Print Language.C.AbsC.ParameterDeclaration
instance Language.C.PrintC.Print Language.C.AbsC.ParameterList
instance Language.C.PrintC.Print Language.C.AbsC.ParameterTypeList
instance Language.C.PrintC.Print Language.C.AbsC.Pointer
instance Language.C.PrintC.Print Language.C.AbsC.PointerOpt
instance Language.C.PrintC.Print Language.C.AbsC.PostfixExpression
instance Language.C.PrintC.Print Language.C.AbsC.PrimaryExpression
instance Language.C.PrintC.Print Language.C.AbsC.RelOp
instance Language.C.PrintC.Print Language.C.AbsC.SelectionStatement
instance Language.C.PrintC.Print Language.C.AbsC.ShiftOp
instance Language.C.PrintC.Print Language.C.AbsC.SpecifierQualifier
instance Language.C.PrintC.Print Language.C.AbsC.Statement
instance Language.C.PrintC.Print Language.C.AbsC.StorageClassSpecifier
instance Language.C.PrintC.Print Language.C.AbsC.StructDeclaration
instance Language.C.PrintC.Print Language.C.AbsC.StructDeclarator
instance Language.C.PrintC.Print Language.C.AbsC.StructOrUnion
instance Language.C.PrintC.Print Language.C.AbsC.StructOrUnionSpecifier
instance Language.C.PrintC.Print Language.C.AbsC.TranslationUnit
instance Language.C.PrintC.Print Language.C.AbsC.TypeName
instance Language.C.PrintC.Print Language.C.AbsC.TypeQualifier
instance Language.C.PrintC.Print Language.C.AbsC.TypeQualifierList
instance Language.C.PrintC.Print Language.C.AbsC.TypeQualifierListOpt
instance Language.C.PrintC.Print Language.C.AbsC.TypeSpecifier
instance Language.C.PrintC.Print Language.C.AbsC.UnaryExpression
instance Language.C.PrintC.Print Language.C.AbsC.UnaryOperator
