[create a consistent set of user visible unboxed types in Jhc.Types, modify compiler to use them internally
John Meacham <john@repetae.net>**20070531001114] addfile ./lib/base/Jhc/Types.hs
hunk ./DataConstructors.hs 195
+getConstructor n _ | RawType <- nameType n = return $ primitiveConstructor n
hunk ./DataConstructors.hs 266
+primitiveConstructor name = emptyConstructor {
+    conName = name,
+    conType = eHash,
+    conExpr = ELit (litCons { litName = name, litArgs = [], litType = eHash }),
+    conInhabits = tHash,
+    conChildren = DataPrimitive
+    }
+
hunk ./DataConstructors.hs 275
-primitiveTable = concatMap f allCTypes ++ map g (snub $ map ( \ (_,_,_,b,_) -> b) allCTypes) where
-    g n = emptyConstructor {
-        conName = rn,
-        conType = eHash,
-        conDeriving = [],
-        conExpr = ELit (litCons { litName = rn, litArgs = [], litType = eHash }),
-        conInhabits = tHash,
-        conChildren = DataPrimitive
-       } where rn = toName RawType n
+primitiveTable = concatMap f allCTypes  where
hunk ./DataConstructors.hs 805
-    (tc_Int__,rt_bits_int_),
-    (tc_Addr__,rt_bits_ptr_),
-    (tc_Word8__,rt_bits8),
-    (tc_Char__,rt_bits32),
-    (tc_Bool__,rt_bits_int_)]
+    (tc_Bits1, rt_bool),
+    (tc_Bits8, rt_bits8),
+    (tc_Bits16, rt_bits16),
+    (tc_Bits32, rt_bits32),
+    (tc_Bits64, rt_bits64),
+    (tc_Bits128, rt_bits128),
+    (tc_BitsPtr, rt_bits_ptr_),
+    (tc_BitsMax, rt_bits_max_),
+
+    (tc_Float32, rt_float32),
+    (tc_Float64, rt_float64),
+    (tc_Float80, rt_float80),
+    (tc_Float128, rt_float128)
+    ]
hunk ./Name/Names.hs 26
-    tIntzh = toName RawType "bits<int>" -- rt_int
-    tCharzh = toName RawType "bits32" -- rt_HsChar
-    tIntegerzh = toName RawType "bits<max>" -- rt_intmax_t
+    tIntzh = rt_bits32
+    tCharzh = rt_bits32
+    tIntegerzh = rt_bits_max_
hunk ./data/PrimitiveOperators-in.hs 57
-ot_int = stringToOpTy "bits<int>"
+ot_int = stringToOpTy "bits32"
hunk ./data/PrimitiveOperators-in.hs 66
-    intt = rawType "bits<int>"
+    intt = rawType "bits32"
hunk ./data/names.txt 18
+Bits1      Jhc.Types.Bits1_
+Bits8      Jhc.Types.Bits8_
+Bits16     Jhc.Types.Bits16_
+Bits32     Jhc.Types.Bits32_
+Bits64     Jhc.Types.Bits64_
+Bits128    Jhc.Types.Bits128_
+BitsPtr    Jhc.Types.BitsPtr_
+BitsMax    Jhc.Types.BitsMax_
+
+Float32    Jhc.Types.Float32_
+Float64    Jhc.Types.Float64_
+Float80    Jhc.Types.Float80_
+Float128   Jhc.Types.Float128_
+
hunk ./data/names.txt 48
-Ix              Ix.Ix
+Ix              Data.Ix.Ix
hunk ./data/names.txt 59
+RawType:rt:
+
+bits128         bits128
+bool            bool
+float32         fbits32
+float64         fbits64
+float80         fbits80
+float128        fbits128
+
hunk ./data/primitives.txt 6
-Jhc.Prim.Int, sbits<int>, int, INT_MAX, INT_MIN
+Jhc.Prim.Int, sbits32, int, INT_MAX, INT_MIN
hunk ./data/primitives.txt 16
-Data.Word.Word, ubits<int>, int, UINT_MAX, 0
+Data.Word.Word, ubits32, int, UINT_MAX, 0
hunk ./lib/base/Jhc/Prim.hs 7
+import Jhc.Types
hunk ./lib/base/Jhc/Prim.hs 19
-data Bool__ :: #
-data Int__ :: #
-data Addr__ :: #
-data Char__ :: #
-data Word8__ :: #
+type Bool__ = Bits1_
+type Addr__ = BitsPtr_
+type Int__  = Bits32_
+type Char__ = Bits32_
+
hunk ./lib/base/Jhc/Types.hs 1
+{-# OPTIONS_JHC -N  #-}
+module Jhc.Types where
+
+data Bits1_ :: #
+
+data Bits8_   :: #
+data Bits16_  :: #
+data Bits32_  :: #
+data Bits64_  :: #
+data Bits128_ :: #
+data BitsPtr_ :: #
+data BitsMax_ :: #
+
+data Float32_ :: #
+data Float64_ :: #
+data Float80_ :: #
+data Float128_ :: #