mirror of
https://github.com/nim-lang/Nim.git
synced 2026-02-13 23:03:36 +00:00
tiny progress on the name mangling
This commit is contained in:
@@ -116,6 +116,13 @@ proc mangleName(m: BModule; s: PSym): Rope =
|
||||
add(result, m.idOrSig(s))
|
||||
s.loc.r = result
|
||||
|
||||
template mangleParamName(m: BModule; s: PSym): Rope = mangleName(m, s)
|
||||
|
||||
when false:
|
||||
proc mangleName(p: BProc; s: PSym): Rope =
|
||||
assert s.kind in skLocalVars
|
||||
if sfGlobal in s.flags: return mangleName(p.module, s)
|
||||
if isKeyword(s.name): discard
|
||||
|
||||
const
|
||||
irrelevantForBackend = {tyGenericBody, tyGenericInst, tyGenericInvocation,
|
||||
@@ -393,7 +400,7 @@ proc genProcParams(m: BModule, t: PType, rettype, params: var Rope,
|
||||
var param = t.n.sons[i].sym
|
||||
if isCompileTimeOnly(param.typ): continue
|
||||
if params != nil: add(params, ~", ")
|
||||
fillLoc(param.loc, locParam, param.typ, mangleName(m, param),
|
||||
fillLoc(param.loc, locParam, param.typ, mangleParamName(m, param),
|
||||
param.paramStorageLoc)
|
||||
if ccgIntroducedPtr(param):
|
||||
add(params, getTypeDescWeak(m, param.typ, check))
|
||||
|
||||
@@ -56,7 +56,7 @@ type
|
||||
BProc* = ref TCProc
|
||||
TBlock*{.final.} = object
|
||||
id*: int # the ID of the label; positive means that it
|
||||
label*: Rope # generated text for the label
|
||||
label*: Rope # generated text for the label
|
||||
# nil if label is not used
|
||||
sections*: TCProcSections # the code beloging
|
||||
isLoop*: bool # whether block is a loop
|
||||
|
||||
Reference in New Issue
Block a user