diff options
author | Aditya Siram <aditya.siram@gmail.com> | 2022-12-13 08:57:07 -0600 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-12-13 22:57:07 +0800 |
commit | 2564b5c938602e4f8820d2ed2b778c6d4f1d0cd5 (patch) | |
tree | 833f176cd33e2cfb6e597d0804d529f74729bd5b /tests/generics/tgenerics_issues.nim | |
parent | e4aadcf1c1b39a5fef55ce9f164b3251c44ca000 (diff) | |
download | Nim-2564b5c938602e4f8820d2ed2b778c6d4f1d0cd5.tar.gz |
Fix #20416. Enable the recursion limit for ref/ptr types. (#21092)
Diffstat (limited to 'tests/generics/tgenerics_issues.nim')
-rw-r--r-- | tests/generics/tgenerics_issues.nim | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/tests/generics/tgenerics_issues.nim b/tests/generics/tgenerics_issues.nim index db7a16569..3068a22f2 100644 --- a/tests/generics/tgenerics_issues.nim +++ b/tests/generics/tgenerics_issues.nim @@ -872,3 +872,23 @@ block: # Ensure no segfault from constraint a = Regex[int]() b = Regex[bool]() c = MyOtherType[seq[int]]() + +block: # https://github.com/nim-lang/Nim/issues/20416 + type + Item[T] = object + link:ptr Item[T] + data:T + + KVSeq[A,B] = seq[(A,B)] + + MyTable[A,B] = object + data: KVSeq[A,B] + + Container[T] = object + a: MyTable[int,ref Item[T]] + + proc p1(sg:Container) = discard # Make sure that a non parameterized 'Container' argument still compiles + + proc p2[T](sg:Container[T]) = discard + var v : Container[int] + p2(v) |