--- src/cm/cm-lib.cm.orig	Fri Feb  8 21:02:55 2002
+++ src/cm/cm-lib.cm	Thu Feb 28 02:38:24 2002
@@ -14,6 +14,8 @@
 	structure Sharing
 	signature TOOLS
 	structure Subst
+	(* required by Backend.Compile.elaborate: *)
+	structure UniquePid
 is
 	$/basis.cm
 	$/smlnj-lib.cm
--- src/cm/compile/uniquepid.sml.orig	Fri Feb  8 21:02:55 2002
+++ src/cm/compile/uniquepid.sml	Thu Feb 28 03:07:33 2002
@@ -17,7 +17,7 @@
     type triplet = { staticPid: pid, fingerprint: pid, pepper: string }
 in    
 structure UniquePid :> sig
-    type info
+    type info = triplet option
     val reset : unit -> unit
     val getInfo : GeneralParams.info -> SrcPath.file -> info
     val uniquepid : info -> pid -> pid * string
--- src/compiler/core.cm.orig	Fri Dec 14 22:01:23 2001
+++ src/compiler/core.cm	Thu Feb 28 02:43:48 2002
@@ -81,6 +81,26 @@
 	signature PICKMOD
 	signature UNPICKMOD
 	signature FLINT
+
+	(* export of structures required to use FLINT directly -5- *)
+	structure Types
+	structure Translate
+	(* in 110.27 already exported above: structure FLINT *)
+	structure LtyKernel
+	structure PrimTyc  
+	structure LtyDef
+	structure LtyExtern
+	structure PPFlint
+	structure LContract
+	(* currently unused?: structure FContract *)
+	structure Specialize
+	structure PrimOp
+	structure LambdaVar
+	structure ChkFlint
+	(* accessible via GenericVC: structure Symbol *)
+	structure Access
+	structure DebIndex
+
 is
 
 TopLevel/environ/environ.sig
--- src/system/smlnj/internal/intsys.cm.orig	Thu Sep 13 17:19:18 2001
+++ src/system/smlnj/internal/intsys.cm	Thu Feb 28 05:54:57 2002
@@ -32,7 +32,7 @@
 	$smlnj/init/init.cmi : cm
 
 	$/basis.cm
-	$smlnj/viscomp/core.cm
+	$smlnj/viscomp/core_flint.cm
 
 	(* need access to CM's "init" function *)
 	$smlnj/internal/cm0.cm
--- src/system/smlnj/viscomp/core_flint.cm.orig	Thu Feb 28 03:06:08 2002
+++ src/system/smlnj/viscomp/core_flint.cm	Thu Feb 28 03:46:52 2002
@@ -0,0 +1,14 @@
+(*
+ * Just a quick hack to avoid a cyclic dependency between
+ * cm/cm-lib.cm and compiler/core.cm. This happens because
+ * Compiler.elaborate requires cm's structure UniquePid,
+ * and we need Compiler.elaborate to generate FLINT terms.
+ * -5- 20020228
+ *)
+
+Library
+	library($smlnj/viscomp/core.cm)
+	structure UniquePid
+is
+	$smlnj/viscomp/core.cm
+	$smlnj/internal/cm-lib.cm
