fixes #1027; disallow templates to use ambiguous identifiers (#20631)

* test qualifiedLookUp in templates

* check later

* add testcase

* add 4errormsg

* Update tests/template/m1027a.nim

Co-authored-by: Clay Sweetser <Varriount@users.noreply.github.com>

* Update tests/template/m1027b.nim

Co-authored-by: Clay Sweetser <Varriount@users.noreply.github.com>

Co-authored-by: Andreas Rumpf <rumpf_a@web.de>
Co-authored-by: Clay Sweetser <Varriount@users.noreply.github.com>
This commit is contained in:
ringabout 2022-10-25 03:44:09 +08:00 • committed by GitHub
commit 064b72a59c
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 26 additions and 0 deletions

View file

@ -0,0 +1 @@
const version_str* = "mod a"

View file

@ -0,0 +1 @@
const version_str* = "mod b"

22
tests/template/t1027.nim Normal file
View file

@ -0,0 +1,22 @@
discard """
cmd: "nim check --hints:off $file"
errormsg: ""
nimout: '''
t1027.nim(20, 19) Error: ambiguous identifier: 'version_str' -- use one of the following:
m1027a.version_str: string
m1027b.version_str: string
'''
"""
import m1027a, m1027b
# bug #1027
template wrap_me(stuff): untyped =
echo "Using " & version_str
wrap_me("hey")