diff options
author | Matthew Pickering <matthewtpickering@gmail.com> | 2021-12-06 11:44:18 +0000 |
---|---|---|
committer | Marge Bot <ben+marge-bot@smart-cactus.org> | 2021-12-09 04:27:11 -0500 |
commit | 803eefb1109564f4dbabd80721cd45ce7268c4a2 (patch) | |
tree | cc7bcc8ece06758953dbae423ed9553b1f0ab156 /compiler/GHC/Driver/Make.hs | |
parent | aafa5079bd49a55f5c71664ddb95ffcb9d8ca102 (diff) | |
download | haskell-803eefb1109564f4dbabd80721cd45ce7268c4a2.tar.gz |
package imports: Take into account package visibility when renaming
In 806e49ae the package imports refactoring code was modified to rename
package imports. There was a small oversight which meant the code didn't
account for module visibility. This patch fixes that oversight.
In general the "lookupPackageName" function is unsafe to use as it
doesn't account for package visiblity/thinning/renaming etc, there is
just one use in the compiler which would be good to audit.
Fixes #20779
Diffstat (limited to 'compiler/GHC/Driver/Make.hs')
-rw-r--r-- | compiler/GHC/Driver/Make.hs | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/compiler/GHC/Driver/Make.hs b/compiler/GHC/Driver/Make.hs index 209a6a9e76..3a37a06809 100644 --- a/compiler/GHC/Driver/Make.hs +++ b/compiler/GHC/Driver/Make.hs @@ -1955,7 +1955,7 @@ getPreprocessedImports hsc_env src_fn mb_phase maybe_buf = do mimps <- getImports popts imp_prelude pi_hspp_buf pi_hspp_fn src_fn return (first (mkMessages . fmap mkDriverPsHeaderMessage . getMessages) mimps) let rn_pkg_qual = renameRawPkgQual (hsc_unit_env hsc_env) - let rn_imps = fmap (first rn_pkg_qual) + let rn_imps = fmap (\(pk, lmn@(L _ mn)) -> (rn_pkg_qual mn pk, lmn)) let pi_srcimps = rn_imps pi_srcimps' let pi_theimps = rn_imps pi_theimps' return PreprocessedImports {..} |