diff options
author | Zahary Karadjov <zahary@gmail.com> | 2017-03-24 15:53:56 +0200 |
---|---|---|
committer | Zahary Karadjov <zahary@gmail.com> | 2017-03-24 17:07:30 +0200 |
commit | d16557bbdb27a9022c39bdfc2d42295cc954724d (patch) | |
tree | 18315b570ec98518dee906e6f1141f923679f76d /tests/concepts | |
parent | f8c921dd25f71cb7ac5975d743ee36cdb424954b (diff) | |
download | Nim-d16557bbdb27a9022c39bdfc2d42295cc954724d.tar.gz |
close #2018
Diffstat (limited to 'tests/concepts')
-rw-r--r-- | tests/concepts/tmisc_issues.nim | 19 |
1 files changed, 17 insertions, 2 deletions
diff --git a/tests/concepts/tmisc_issues.nim b/tests/concepts/tmisc_issues.nim index 556e0b9f5..5fc4e2116 100644 --- a/tests/concepts/tmisc_issues.nim +++ b/tests/concepts/tmisc_issues.nim @@ -2,7 +2,9 @@ discard """ output: '''true true true -true''' +true +p has been called. +p has been called.''' """ # https://github.com/nim-lang/Nim/issues/1147 @@ -15,7 +17,7 @@ proc add*(self: var TTest, val: int) = type CAddable = concept x x[].add(int) -echo((ref TTest) is CAddable) +echo((ref TTest) is CAddable) # true # https://github.com/nim-lang/Nim/issues/1570 type ConcretePointOfFloat = object @@ -34,3 +36,16 @@ echo p1 is AbstractPointOfFloat # true echo p2 is AbstractPointOfFloat # true echo p2.x is float and p2.y is float # true +# https://github.com/nim-lang/Nim/issues/2018 +type ProtocolFollower = generic + true # not a particularly involved protocol + +type ImplementorA = object +type ImplementorB = object + +proc p[A: ProtocolFollower, B: ProtocolFollower](a: A, b: B) = + echo "p has been called." + +p(ImplementorA(), ImplementorA()) +p(ImplementorA(), ImplementorB()) + |