-HaskellObj rts_mkChar ( HsChar c );
-HaskellObj rts_mkInt ( HsInt i );
-HaskellObj rts_mkInt8 ( HsInt8 i );
-HaskellObj rts_mkInt16 ( HsInt16 i );
-HaskellObj rts_mkInt32 ( HsInt32 i );
-HaskellObj rts_mkInt64 ( HsInt64 i );
-HaskellObj rts_mkWord ( HsWord w );
-HaskellObj rts_mkWord8 ( HsWord8 w );
-HaskellObj rts_mkWord16 ( HsWord16 w );
-HaskellObj rts_mkWord32 ( HsWord32 w );
-HaskellObj rts_mkWord64 ( HsWord64 w );
-HaskellObj rts_mkFloat ( HsFloat f );
-HaskellObj rts_mkDouble ( HsDouble f );
-HaskellObj rts_mkStablePtr ( HsStablePtr s );
-HaskellObj rts_mkAddr ( HsAddr a );
-HaskellObj rts_mkBool ( HsBool b );
-HaskellObj rts_mkString ( char *s );
-
-HaskellObj rts_apply ( HaskellObj, HaskellObj );
+HaskellObj rts_mkChar ( Capability *, HsChar c );
+HaskellObj rts_mkInt ( Capability *, HsInt i );
+HaskellObj rts_mkInt8 ( Capability *, HsInt8 i );
+HaskellObj rts_mkInt16 ( Capability *, HsInt16 i );
+HaskellObj rts_mkInt32 ( Capability *, HsInt32 i );
+HaskellObj rts_mkInt64 ( Capability *, HsInt64 i );
+HaskellObj rts_mkWord ( Capability *, HsWord w );
+HaskellObj rts_mkWord8 ( Capability *, HsWord8 w );
+HaskellObj rts_mkWord16 ( Capability *, HsWord16 w );
+HaskellObj rts_mkWord32 ( Capability *, HsWord32 w );
+HaskellObj rts_mkWord64 ( Capability *, HsWord64 w );
+HaskellObj rts_mkPtr ( Capability *, HsPtr a );
+HaskellObj rts_mkFunPtr ( Capability *, HsFunPtr a );
+HaskellObj rts_mkFloat ( Capability *, HsFloat f );
+HaskellObj rts_mkDouble ( Capability *, HsDouble f );
+HaskellObj rts_mkStablePtr ( Capability *, HsStablePtr s );
+HaskellObj rts_mkBool ( Capability *, HsBool b );
+HaskellObj rts_mkString ( Capability *, char *s );
+
+HaskellObj rts_apply ( Capability *, HaskellObj, HaskellObj );