summaryrefslogtreecommitdiff
path: root/compiler/ghci
diff options
context:
space:
mode:
authorTamar Christina <tamar@zhox.com>2017-01-15 13:07:36 +0000
committerTamar Christina <tamar@zhox.com>2017-01-15 13:07:36 +0000
commit331f88d0d878eae926b3c1c61a3ff344916b62ed (patch)
treeaa58aa1558ad924c4bb01ca77bc34943866c9a71 /compiler/ghci
parentf63c8ef33ec9666688163abe4ccf2d6c0428a7e7 (diff)
downloadhaskell-331f88d0d878eae926b3c1c61a3ff344916b62ed.tar.gz
Fix abort and import lib search on Windows
Summary: Apparently `sysErrorBelch` doesn't terminate the program anymore making previously unreachable code now execute. If a dll is not found the error message we return needs to be a heap value. Secondly also allow the pattern `lib<name>` to be allowed for finding an import library with the name `lib<name>.dll.a`. Test Plan: ./validate, new tests T13082_good and T13082_fail Reviewers: austin, RyanGlScott, hvr, erikd, simonmar, bgamari Reviewed By: RyanGlScott, bgamari Subscribers: thomie, #ghc_windows_task_force Differential Revision: https://phabricator.haskell.org/D2941 GHC Trac Issues: #13082
Diffstat (limited to 'compiler/ghci')
-rw-r--r--compiler/ghci/Linker.hs4
1 files changed, 3 insertions, 1 deletions
diff --git a/compiler/ghci/Linker.hs b/compiler/ghci/Linker.hs
index b50edca938..9252489617 100644
--- a/compiler/ghci/Linker.hs
+++ b/compiler/ghci/Linker.hs
@@ -1351,7 +1351,9 @@ locateLib hsc_env is_hs dirs lib
loading_profiled_hs_libs = interpreterProfiled dflags
loading_dynamic_hs_libs = interpreterDynamic dflags
- import_libs = [lib <.> "lib", "lib" ++ lib <.> "lib", "lib" ++ lib <.> "dll.a"]
+ import_libs = [ lib <.> "lib" , "lib" ++ lib <.> "lib"
+ , "lib" ++ lib <.> "dll.a", lib <.> "dll.a"
+ ]
hs_dyn_lib_name = lib ++ '-':programName dflags ++ projectVersion dflags
hs_dyn_lib_file = mkHsSOName platform hs_dyn_lib_name