micro-opt: replace stmGetEnclosingTRec() with a field access
[ghc-hetmet.git] / compiler / ghci / Linker.lhs
index 4c85ac6..a7e9492 100644 (file)
@@ -528,7 +528,7 @@ dieWith span msg = ghcError (ProgramError (showSDoc (mkLocMessage span msg)))
 checkNonStdWay :: DynFlags -> SrcSpan -> IO (Maybe String)
 checkNonStdWay dflags srcspan = do
   let tag = buildTag dflags
-  if null tag then return Nothing else do
+  if null tag || tag == "dyn" then return Nothing else do
   let default_osuf = phaseInputExt StopLn
   if objectSuf dflags == default_osuf
        then failNonStd srcspan
@@ -1024,7 +1024,7 @@ linkPackage dflags pkg
        let dlls = [ dll | DLL dll    <- classifieds ]
            objs = [ obj | Object obj <- classifieds ]
 
-       maybePutStr dflags ("Loading package " ++ display (package pkg) ++ " ... ")
+       maybePutStr dflags ("Loading package " ++ display (sourcePackageId pkg) ++ " ... ")
 
        -- See comments with partOfGHCi
        when (packageName pkg `notElem` partOfGHCi) $ do
@@ -1048,7 +1048,7 @@ linkPackage dflags pkg
         maybePutStr dflags "linking ... "
         ok <- resolveObjs
        if succeeded ok then maybePutStrLn dflags "done."
-             else ghcError (InstallationError ("unable to load package `" ++ display (package pkg) ++ "'"))
+             else ghcError (InstallationError ("unable to load package `" ++ display (sourcePackageId pkg) ++ "'"))
 
 load_dyn :: [FilePath] -> FilePath -> IO ()
 load_dyn dirs dll = do r <- loadDynamic dirs dll