on master help sign in
Fix bug in canonicalization of kernel names

Fix https://github.com/elm/compiler/issues/1767

commit1c0b433995ae62de92fd60f0a1ab2e21a655476e authorEvan Czaplicki <evancz@users.noreply.github.com> dateTue 28 Aug 2018, 12:29 (8 years ago) parent3da79c4
1 file changed+2−1
compiler/src/Canonicalize/Expression.hs+2−1
compiler/src/Canonicalize/Expression.hs+2−1
@@ -28,6 +28,7 @@ import qualified Canonicalize.Pattern as Pattern
2828import qualified Canonicalize.Type as Type
2929import qualified Data.Index as Index
3030import qualified Elm.Name as N
31+import qualified Elm.Package as Pkg
3132import qualified Reporting.Annotation as A
3233import qualified Reporting.Error.Canonicalize as Error
3334import qualified Reporting.Region as R
@@ -730,7 +731,7 @@ findVarQual region (Env.Env localHome vs _ _ _ qvs _ _) prefix name =
730731 Result.throw (Error.NotFoundVar region (Just prefix) name (toPossibleNames vs qvs))
731732
732733 Nothing ->
733− if ModuleName.isKernel prefix then
734+ if ModuleName.isKernel prefix && Pkg.isKernel (ModuleName._package localHome) then
734735 Result.ok $ Can.VarKernel (ModuleName.getKernel prefix) name
735736 else
736737 Result.throw (Error.NotFoundVar region (Just prefix) name (toPossibleNames vs qvs))