- # bug #1684
- type
- BaseType {.inheritable pure.} = object
- idx: int
- DerivedType* {.final pure.} = object of BaseType
- proc index*[Toohoo: BaseType](h: Toohoo): int {.inline.} = h.idx
- proc newDerived(idx: int): DerivedType {.inline.} = DerivedType(idx: idx)
- let d = newDerived(2)
- assert(d.index == 2)
|