diff options
author | Simon Marlow <marlowsd@gmail.com> | 2011-11-16 15:51:44 +0000 |
---|---|---|
committer | Simon Marlow <marlowsd@gmail.com> | 2011-11-16 15:52:07 +0000 |
commit | 07f6af72215bea70ad95c6b1278ed927cd9693e4 (patch) | |
tree | 2ee3d3772003e71a764013029004dbff981636ad /compiler/main/DriverPipeline.hs | |
parent | 66265ae0970b9d36b8847b75e176f0de4844690e (diff) | |
download | haskell-07f6af72215bea70ad95c6b1278ed927cd9693e4.tar.gz |
Give a warning when -rtsopts/-with-rtsopts are used with -no-hs-main
Diffstat (limited to 'compiler/main/DriverPipeline.hs')
-rw-r--r-- | compiler/main/DriverPipeline.hs | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/compiler/main/DriverPipeline.hs b/compiler/main/DriverPipeline.hs index 8103f66239..aaf9f0009c 100644 --- a/compiler/main/DriverPipeline.hs +++ b/compiler/main/DriverPipeline.hs @@ -1446,6 +1446,15 @@ mkExtraObjToLinkIntoBinary :: DynFlags -> [PackageId] -> IO FilePath mkExtraObjToLinkIntoBinary dflags dep_packages = do link_info <- getLinkInfo dflags dep_packages + let have_rts_opts_flags = + isJust (rtsOpts dflags) || case rtsOptsEnabled dflags of + RtsOptsSafeOnly -> False + _ -> True + + when (dopt Opt_NoHsMain dflags && have_rts_opts_flags) $ do + hPutStrLn stderr $ "Warning: -rtsopts and -with-rtsopts have no effect with -no-hs-main.\n" ++ + " Call hs_init_ghc() from your main() function to set these options." + mkExtraCObj dflags (showSDoc (vcat [main, link_opts link_info] <> char '\n')) -- final newline, to |