X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;ds=inline;f=ghc%2Fcompiler%2Fmain%2FMain.hs;h=bbdd8f88e2837d0824e5a783842284ee702a0ca8;hb=8c92ca4a29a3943b47ec931f18e77a302465aaed;hp=1731fa54a86df71136e1003b64f6396ea78cc99e;hpb=abbc5a0be1df84a33015470319062ed7a3aa3153;p=ghc-hetmet.git diff --git a/ghc/compiler/main/Main.hs b/ghc/compiler/main/Main.hs index 1731fa5..bbdd8f8 100644 --- a/ghc/compiler/main/Main.hs +++ b/ghc/compiler/main/Main.hs @@ -1,7 +1,7 @@ {-# OPTIONS -fno-warn-incomplete-patterns -optc-DNON_POSIX_SOURCE #-} ----------------------------------------------------------------------------- --- $Id: Main.hs,v 1.133 2003/09/23 14:33:00 simonmar Exp $ +-- $Id: Main.hs,v 1.136 2003/11/01 01:01:18 sof Exp $ -- -- GHC Driver program -- @@ -44,7 +44,7 @@ import DriverFlags ( buildStaticHscOpts, dynamic_flags, processArgs, static_flags) import DriverMkDepend ( beginMkDependHS, endMkDependHS ) -import DriverPhases ( isSourceFile ) +import DriverPhases ( isSourceFilename ) import DriverUtil ( add, handle, handleDyn, later, unknownFlagsErr ) import CmdLineOpts ( dynFlag, restoreDynFlags, @@ -212,7 +212,7 @@ main = Everything else is considered to be a linker object, and passed straight through to the linker. -} - looks_like_an_input m = isSourceFile m + looks_like_an_input m = isSourceFilename m || looksLikeModuleName m || '.' `notElem` m @@ -222,7 +222,9 @@ main = normal_fileish_paths = map normalisePath fileish_args (srcs, objs) = partition looks_like_an_input normal_fileish_paths - mapM_ (add v_Ld_inputs) objs + -- Note: have v_Ld_inputs maintain the order in which 'objs' occurred on + -- the command-line. + mapM_ (add v_Ld_inputs) (reverse objs) ---------------- Display banners and configuration ----------- showBanners mode conf_file static_opts @@ -332,9 +334,9 @@ doMake :: [String] -> IO () doMake [] = throwDyn (UsageError "no input files") doMake srcs = do dflags <- getDynFlags - state <- cmInit Batch - graph <- cmDepAnal state dflags srcs - (_, ok_flag, _) <- cmLoadModules state dflags graph + state <- cmInit Batch dflags + graph <- cmDepAnal state srcs + (_, ok_flag, _) <- cmLoadModules state graph when (failed ok_flag) (exitWith (ExitFailure 1)) return ()