[project @ 2006-01-06 16:30:17 by simonmar]
[ghc-hetmet.git] / ghc / compiler / main / DriverPipeline.hs
index d1fa5ba..171cecf 100644 (file)
@@ -330,7 +330,10 @@ link BatchCompile dflags batch_attempt_linking hpt
                                 <+> text "...")
 
        -- Don't showPass in Batch mode; doLink will do that for us.
-        staticLink dflags obj_files pkg_deps
+       let link = case ghcLink dflags of
+               MkDLL       -> doMkDLL
+               StaticLink  -> staticLink
+       link dflags obj_files pkg_deps
 
         debugTraceMsg dflags 3 (text "link: done")
 
@@ -854,7 +857,7 @@ runPhase cc_phase stop dflags basename suff input_fn get_output_fn maybe_loc
 
        let
          more_hcc_opts =
-#if x86_TARGET_ARCH
+#if i386_TARGET_ARCH
                -- on x86 the floating point regs have greater precision
                -- than a double, which leads to unpredictable results.
                -- By default, we turn this off with -ffloat-store unless
@@ -1393,9 +1396,9 @@ getOptionsFromSource file
                       | otherwise -> return []
 
 getOptionsFromStringBuffer :: StringBuffer -> FilePath -> [(Int,String)]
-getOptionsFromStringBuffer buffer@(StringBuffer _ len# _) fn = 
+getOptionsFromStringBuffer buffer@(StringBuffer _ len _) fn = 
   let 
-       ls = lines (lexemeToString buffer (I# len#))  -- lazy, so it's ok
+       ls = lines (lexemeToString buffer len)  -- lazy, so it's ok
   in
   look 1 ls
   where