diff options
author | Kyrill Briantsev <kyrab@mail.ru> | 2018-12-11 13:45:10 -0500 |
---|---|---|
committer | Ben Gamari <ben@smart-cactus.org> | 2018-12-11 14:23:22 -0500 |
commit | 21339c9f6bfb952a3a0b8de5ee649d46dfbf0d9b (patch) | |
tree | fd469e0492b50158a46bc4bc4bc973e7f55ff516 /docs | |
parent | d549c081f19925dd0e4c70d45bded0497c649d49 (diff) | |
download | haskell-21339c9f6bfb952a3a0b8de5ee649d46dfbf0d9b.tar.gz |
RTS linker: don't crash early when not finding extra-libraries
Allow GHCi to not crash when no assumed DLL is found in the standard
location. E.g. when loading the package built "dyn" way, we may well
have the package's DLL around, and it's the system linker which loads
necessary dependencies.
Why does this (partially) fix #11042? It's because we often (and when
having packages built `dyn` way -- almost always) don't need to load
anything recorded in the `extra-libraries` stanza, since if the package
DLL exists, GHCi linker simply calls the system linker (via `dlopen`/
`LoadLibrary` APIs) to load it and doesn't bother to load package
prelinked object file (if any) or package static library.
Thus, all "regular" (with no fancy low-level package content
manipulation) packages built "dyn" way should be OK after this fix.
Reviewers: hvr, bgamari, int-index
Reviewed By: bgamari, int-index
Subscribers: Phyx, int-index, rwbarton, carter
GHC Trac Issues: #11042
Differential Revision: https://phabricator.haskell.org/D5170
Diffstat (limited to 'docs')
-rw-r--r-- | docs/users_guide/using-warnings.rst | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/docs/users_guide/using-warnings.rst b/docs/users_guide/using-warnings.rst index fe3c8cb58c..6a6166bf0d 100644 --- a/docs/users_guide/using-warnings.rst +++ b/docs/users_guide/using-warnings.rst @@ -39,6 +39,7 @@ generally likely to indicate bugs in your program. These are: * :ghc-flag:`-Wdodgy-foreign-imports` * :ghc-flag:`-Winline-rule-shadowing` * :ghc-flag:`-Wunsupported-llvm-version` + * :ghc-flag:`-Wmissed-extra-shared-lib` * :ghc-flag:`-Wtabs` * :ghc-flag:`-Wunrecognised-warning-flags` * :ghc-flag:`-Winaccessible-code` @@ -1326,6 +1327,16 @@ of ``-W(no-)*``. Warn when using :ghc-flag:`-fllvm` with an unsupported version of LLVM. +.. ghc-flag:: -Wmissed-extra-shared-lib + :shortdesc: Warn when GHCi can't load a shared lib. + :type: dynamic + :reverse: -Wno-missed-extra-shared-lib + :category: + + Warn when GHCi can't load a shared lib it deduced it should load + when loading a package and analyzing the extra-libraries stanza + of the target package description. + .. ghc-flag:: -Wunticked-promoted-constructors :shortdesc: warn if promoted constructors are not ticked :type: dynamic |