fix stylecheck error with asyncdispatch (#19350)

* stylecheck usages part two: stdlib cleanup

typeinfo.nim: importCompilerProc => importcompilerproc

nre.nim: newLineFlags => newlineFlags

system.nim: JSRoot => JsRoot

ref #19319

* prefer importCompilerProc

* fix stylecheck error with asyncdispatch

it is a partial regression since #12842

* add tests

* don't use echo in tests

(cherry picked from commit 92e5573b20)
This commit is contained in:
flywind
2022-01-10 17:29:04 +08:00
committed by narimiran
parent 6365d8c39a
commit e22d494409
3 changed files with 36 additions and 1 deletions

View File

@@ -270,7 +270,8 @@ proc semTemplSymbol(c: PContext, n: PNode, s: PSym; isField: bool): PNode =
# Issue #12832
when defined(nimsuggest):
suggestSym(c.graph, n.info, s, c.graph.usageSym, false)
if {optStyleHint, optStyleError} * c.config.globalOptions != {}:
# field access (dot expr) will be handled by builtinFieldAccess
if not isField and {optStyleHint, optStyleError} * c.config.globalOptions != {}:
styleCheckUse(c.config, n.info, s)
proc semRoutineInTemplName(c: var TemplCtx, n: PNode): PNode =

View File

@@ -0,0 +1,17 @@
discard """
matrix: "--styleCheck:error --styleCheck:usages"
"""
import asyncdispatch
type
Name = object
id: int
template hello =
var iD = "string"
var name: Name
doAssert name.id == 0
doAssert iD == "string"
hello()

View File

@@ -0,0 +1,17 @@
discard """
action: reject
nimout: '''treject.nim(14, 13) Error: 'iD' should be: 'id' [field declared in treject.nim(9, 5)]'''
matrix: "--styleCheck:error --styleCheck:usages"
"""
type
Name = object
id: int
template hello =
var iD = "string"
var name: Name
echo name.iD
echo iD
hello()