Add ad-hoc typing checks for tagToEnum#
[ghc-hetmet.git] / compiler / prelude / PrimOp.lhs
index a650352..dae8bee 100644 (file)
@@ -9,6 +9,8 @@ module PrimOp (
        primOpType, primOpSig,
        primOpTag, maxPrimOpTag, primOpOcc,
 
        primOpType, primOpSig,
        primOpTag, maxPrimOpTag, primOpOcc,
 
+       tagToEnumKey,
+
        primOpOutOfLine, primOpNeedsWrapper, 
        primOpOkForSpeculation, primOpIsCheap, primOpIsDupable,
 
        primOpOutOfLine, primOpNeedsWrapper, 
        primOpOkForSpeculation, primOpIsCheap, primOpIsDupable,
 
@@ -27,6 +29,7 @@ import TyCon          ( TyCon, isPrimTyCon, tyConPrimRep, PrimRep(..) )
 import Type            ( Type, mkForAllTys, mkFunTy, mkFunTys, tyConAppTyCon,
                          typePrimRep )
 import BasicTypes      ( Arity, Boxity(..) )
 import Type            ( Type, mkForAllTys, mkFunTy, mkFunTys, tyConAppTyCon,
                          typePrimRep )
 import BasicTypes      ( Arity, Boxity(..) )
+import Unique          ( Unique, mkPrimOpIdUnique )
 import Outputable
 import FastTypes
 \end{code}
 import Outputable
 import FastTypes
 \end{code}
@@ -84,6 +87,13 @@ allThePrimOps =
 #include "primop-list.hs-incl"
 \end{code}
 
 #include "primop-list.hs-incl"
 \end{code}
 
+\begin{code}
+tagToEnumKey :: Unique
+tagToEnumKey = mkPrimOpIdUnique (primOpTag TagToEnumOp)
+\end{code}
+
+
+
 %************************************************************************
 %*                                                                     *
 \subsection[PrimOp-info]{The essential info about each @PrimOp@}
 %************************************************************************
 %*                                                                     *
 \subsection[PrimOp-info]{The essential info about each @PrimOp@}