diff --git a/Language/VHDL/AST.hs b/Language/VHDL/AST.hs
--- a/Language/VHDL/AST.hs
+++ b/Language/VHDL/AST.hs
@@ -273,7 +273,7 @@
 
 -- | type_declaration
 -- only composite types and enumeration types (a specific scalar type)
-data TypeDef = TDA ArrayTypeDef | TDR RecordTypeDef | TDE EnumTypeDef
+data TypeDef = TDA ArrayTypeDef | TDR RecordTypeDef | TDE EnumTypeDef | TDI IntegerTypeDef
  deriving Show
 
 -- | array_type_definition
@@ -299,6 +299,11 @@
 -- | enumeration_type_definition 
 --   enumeration literals can only be identifiers
 data EnumTypeDef = EnumTypeDef [VHDLId]
+ deriving Show
+
+ -- | integer_type_definition 
+ --   integer literals can only be numbers
+data IntegerTypeDef = IntegerTypeDef DiscreteRange
  deriving Show
 
 -- | name
diff --git a/Language/VHDL/AST/Ppr.hs b/Language/VHDL/AST/Ppr.hs
--- a/Language/VHDL/AST/Ppr.hs
+++ b/Language/VHDL/AST/Ppr.hs
@@ -149,6 +149,7 @@
  ppr (TDA arrayTD) = ppr arrayTD
  ppr (TDR recordTD) = ppr recordTD
  ppr (TDE enumTD) = ppr enumTD
+ ppr (TDI integerTD) = ppr integerTD
 
 instance Ppr ArrayTypeDef where
  ppr (UnconsArrayDef unconsIxs elemsTM) = 
@@ -169,6 +170,9 @@
 
 instance Ppr EnumTypeDef where
  ppr (EnumTypeDef ids) = lparen <> ppr_list hComma ids <> rparen
+
+instance Ppr IntegerTypeDef where
+ ppr (IntegerTypeDef consIxs) = ppr consIxs
 
 instance Ppr VHDLName where
  ppr (NSimple simple) = ppr simple
diff --git a/vhdl.cabal b/vhdl.cabal
--- a/vhdl.cabal
+++ b/vhdl.cabal
@@ -1,5 +1,5 @@
 name:                vhdl
-version:             0.1.1
+version:             0.1.2
 synopsis:            VHDL AST and pretty printer
 description:         VHDL AST and pretty printer, should only be used for building AST's, not as part of a VHDL parser
 category:            Language
