IC: next steps (#16550)
* cleanups * ast.nim: cleanups * IC: no more sym.tab field, stored externally in the module graph * nimble compiles again * rodfiles: store bitwidth of integers and the endianness in the cookie because we serialize 'int' directly * rodfiles: added compilerproc and export sections * rodfiles: added all the missing sections * rodfiles: track the missing information * IC: architecture for lazy loading of proc bodies * make tests green again * completed the lazy loading of proc bodies * symbol lookup integration, part 1 * symbol lookup integration, part 2 * symbol lookup integration, part 3 * make tcompilerapi work again * rodfiles: fixed config change handling
This commit is contained in:
parent
0da4cb93d1
commit
796498525a
36 changed files with 653 additions and 400 deletions
|
|
@ -140,7 +140,7 @@ proc semEnum(c: PContext, n: PNode, prev: PType): PType =
|
|||
if result.sym != nil and sfExported in result.sym.flags:
|
||||
incl(e.flags, sfUsed)
|
||||
incl(e.flags, sfExported)
|
||||
if not isPure: strTableAdd(c.module.tab, e)
|
||||
if not isPure: exportSym(c, e)
|
||||
result.n.add symNode
|
||||
styleCheckDef(c.config, e)
|
||||
onDef(e.info, e)
|
||||
|
|
@ -779,7 +779,7 @@ proc semRecordNodeAux(c: PContext, n: PNode, check: var IntSet, pos: var int,
|
|||
n[i][1].info
|
||||
else:
|
||||
n[i].info
|
||||
suggestSym(c.config, info, f, c.graph.usageSym)
|
||||
suggestSym(c.graph, info, f, c.graph.usageSym)
|
||||
f.typ = typ
|
||||
f.position = pos
|
||||
f.options = c.config.options
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue