diff --git a/src/Juvix/Compiler/Concrete/Translation/FromParsed/Analysis/Scoping.hs b/src/Juvix/Compiler/Concrete/Translation/FromParsed/Analysis/Scoping.hs index a51525e63a..1e254786f9 100644 --- a/src/Juvix/Compiler/Concrete/Translation/FromParsed/Analysis/Scoping.hs +++ b/src/Juvix/Compiler/Concrete/Translation/FromParsed/Analysis/Scoping.hs @@ -612,7 +612,7 @@ checkImportNoPublic :: checkImportNoPublic import_@Import {..} = do massert (_importPublic == NoPublic) smodule <- readScopeModule import_ - let sname :: S.TopModulePath = smodule ^. scopedModulePath + let sname :: S.TopModulePath = set nameConcrete _importModulePath (smodule ^. scopedModulePath) sname' :: S.Name = set S.nameConcrete (topModulePathToName _importModulePath) sname scopedModule :: ScopedModule = set scopedModuleName sname' smodule exportInfoOriginal = scopedModule ^. scopedModuleExportInfo @@ -638,7 +638,8 @@ checkImportNoPublic import_@Import {..} = do _importAsName = qual', _importOpen = importOpen', _importUsingHiding = usingHiding', - .. + _importKw, + _importPublic } where addModuleToScope :: ScopedModule -> Sem r () diff --git a/test/Scope/Positive.hs b/test/Scope/Positive.hs index 2c27ecdafa..895e142829 100644 --- a/test/Scope/Positive.hs +++ b/test/Scope/Positive.hs @@ -265,5 +265,9 @@ tests = posTest "Scan name with 'import' prefix" $(mkRelDir "issue2929") + $(mkRelFile "main.juvix"), + posTest + "Proper formatting of import module path" + $(mkRelDir "issue2737") $(mkRelFile "main.juvix") ] diff --git a/tests/positive/issue2737/M.juvix b/tests/positive/issue2737/M.juvix new file mode 100644 index 0000000000..4e13b189ae --- /dev/null +++ b/tests/positive/issue2737/M.juvix @@ -0,0 +1,9 @@ +-- 1 +-- 2 +-- 3 +-- 4 +-- 5 +-- 6 +-- 7 +-- 8 +module M; diff --git a/tests/positive/issue2737/Package.juvix b/tests/positive/issue2737/Package.juvix new file mode 100644 index 0000000000..6a54fa0cd3 --- /dev/null +++ b/tests/positive/issue2737/Package.juvix @@ -0,0 +1,8 @@ +module Package; + +import PackageDescription.V2 open; + +package : Package := + defaultPackage@?{ + name := "issue2737" + }; diff --git a/tests/positive/issue2737/main.juvix b/tests/positive/issue2737/main.juvix new file mode 100644 index 0000000000..e357002b58 --- /dev/null +++ b/tests/positive/issue2737/main.juvix @@ -0,0 +1,5 @@ +module main; + +import M as N; + +-- comment at the end