minor bug fixes to make some tests green

This commit is contained in:
Zahary Karadjov 2013-01-21 02:03:13 +02:00
commit 41cbd1c980
3 changed files with 8 additions and 4 deletions

View file

@ -603,11 +603,18 @@ type
PLib* = ref TLib
TSym* = object of TIdObj
# proc and type instantiations are cached in the generic symbol
case kind*: TSymKind
of skType: # generic instantiation caches
of skType:
typeInstCache*: seq[PType]
of routineKinds:
procInstCache*: seq[PInstantiation]
of skModule:
# modules keep track of the generic symbols they use from other modules.
# this is because in incremental compilation, when a module is about to
# be replaced with a newer version, we must decrement the usage count
# of all previously used generics.
usedGenerics*: seq[PInstantiation]
else: nil
magic*: TMagic

View file

@ -41,7 +41,6 @@ proc searchInstTypes(key: PType): PType =
return
for inst in genericTyp.sym.typeInstCache:
InternalAssert inst.sons.len == key.sons.len + 1
if inst.id == key.id: return inst
block MatchType:
for j in 1 .. high(key.sons):