diff options
Diffstat (limited to 'tests/run/tmultim2.nim')
-rwxr-xr-x | tests/run/tmultim2.nim | 36 |
1 files changed, 0 insertions, 36 deletions
diff --git a/tests/run/tmultim2.nim b/tests/run/tmultim2.nim deleted file mode 100755 index 956b22647..000000000 --- a/tests/run/tmultim2.nim +++ /dev/null @@ -1,36 +0,0 @@ -discard """ - file: "tmultim2.nim" - output: "collide: unit, thing collide: unit, thing collide: thing, unit" -""" -# Test multi methods - -type - TThing = object - TUnit = object of TThing - x: int - TParticle = object of TThing - a, b: int - -method collide(a, b: TThing) {.inline.} = - quit "to override!" - -method collide(a: TThing, b: TUnit) {.inline.} = - write stdout, "collide: thing, unit " - -method collide(a: TUnit, b: TThing) {.inline.} = - write stdout, "collide: unit, thing " - -proc test(a, b: TThing) {.inline.} = - collide(a, b) - -var - a: TThing - b, c: TUnit -collide(b, c) # ambiguous (unit, thing) or (thing, unit)? -> prefer unit, thing! -test(b, c) -collide(a, b) -#OUT collide: unit, thing collide: unit, thing collide: thing, unit - - - - |