Files
Nim/tests/method/tvtable.nim
ringabout b5f5b74fc8 enable vtable implementation for C++ and make it an experimental feature (#23004)
follow up https://github.com/nim-lang/Nim/pull/22991

- [x] turning it into an experimental feature

---------

Co-authored-by: Andreas Rumpf <rumpf_a@web.de>
2023-11-30 14:05:45 +01:00

24 lines
445 B
Nim

discard """
targets: "c cpp"
"""
type FooBase = ref object of RootObj
dummy: int
type Foo = ref object of FooBase
value : float32
type Foo2 = ref object of Foo
change : float32
method bar(x: FooBase, a: float32) {.base.} =
discard
method bar(x: Foo, a: float32) =
x.value += a
method bar(x: Foo2, a: float32) =
x.value += a
proc test() =
var x = new Foo2
x.bar(2.3)
doAssert x.value <= 2.3
test()