fixes #22208; Ambiguous error when import modules with same names but… (#22211)

fixes #22208; Ambiguous error when import modules with same names but different aliases
This commit is contained in:
ringabout
2023-07-03 20:08:40 +08:00
committed by GitHub
parent 1ad618d96c
commit d9a24b9b81
6 changed files with 13 additions and 4 deletions

View File

@@ -250,7 +250,7 @@ proc importModuleAs(c: PContext; n: PNode, realModule: PSym, importHidden: bool)
result.options.incl optImportHidden
c.unusedImports.add((result, n.info))
c.importModuleMap[result.id] = realModule.id
c.importModuleLookup.mgetOrPut(realModule.name.id, @[]).addUnique realModule.id
c.importModuleLookup.mgetOrPut(result.name.id, @[]).addUnique realModule.id
proc transformImportAs(c: PContext; n: PNode): tuple[node: PNode, importHidden: bool] =
var ret: typeof(result)

3
parse/pragmas.nim Normal file
View File

@@ -0,0 +1,3 @@
# parse/pragmas.nim content
proc foo*() = discard

View File

@@ -1 +1 @@
proc fb* = echo "buzz!"
proc fb*: string = "buzz!"

View File

@@ -1 +1 @@
proc fb* = echo "fizz!"
proc fb*: string = "fizz!"

View File

@@ -6,4 +6,4 @@ import fizz/m21496, buzz/m21496
# bug #21496
m21496.fb()
discard m21496.fb()

6
tests/import/t22208.nim Normal file
View File

@@ -0,0 +1,6 @@
import fizz/m21496 as alas
import buzz/m21496
# bug #21496
doAssert m21496.fb() == "buzz!"