[make sure worker wrapper transform doesn't reuse ids from type of body
John Meacham <john@repetae.net>**20061006054131] hunk ./DataConstructors.hs 489
-    sub = substMap $ fromDistinctAscList [ (i,sl) | sl <- xs | i <- [2,4..] ]
+    sub = substMap'' $ fromDistinctAscList [ (i,Just sl) | sl <- xs | i <- [2,4..] ]
hunk ./E/TypeCheck.hs 87
+        withContext ("Checking Constructor: " ++ show n) $ do
hunk ./E/WorkerWrapper.hs 12
+import E.FreeVars
hunk ./E/WorkerWrapper.hs 22
+import Util.SetLike
hunk ./E/WorkerWrapper.hs 111
-    vars@(~[sv]) = [  tVr i t | t <- slotTypes dataTable (getName cname) bodyTyp | i <- [2,4..] ]
+    vars@(~[sv]) = [  tVr i t | t <- slotTypes dataTable (getName cname) bodyTyp | i <- [2,4..], i `notMember` dontUseThese ]
+    dontUseThese = freeIds (getType tvr) `mappend` freeIds bodyTyp --`mappend` freeIds (EAp (getType tvr) $ EAp (EVar tvr) e)
hunk ./Main.hs 455
+        sequence_ [lintCheckE onerrNone fullDataTable v e | (v,e) <- cds ]