summary refs log tree commit diff stats
path: root/tests/generics/timpl_ast.nim
diff options
context:
space:
mode:
Diffstat (limited to 'tests/generics/timpl_ast.nim')
-rw-r--r--tests/generics/timpl_ast.nim35
1 files changed, 0 insertions, 35 deletions
diff --git a/tests/generics/timpl_ast.nim b/tests/generics/timpl_ast.nim
index 97fe128cd..016128e30 100644
--- a/tests/generics/timpl_ast.nim
+++ b/tests/generics/timpl_ast.nim
@@ -43,38 +43,3 @@ block: # issues #9899, ##14708
     macro parse(s: static string) =
       result = parseStmt(s)
     parse("type " & implRepr(Option))
-
-block: # issue #22639
-  type
-    Spectrum[N: static int] = object
-      data: array[N, float]
-    AngleInterpolator = object
-      data: seq[Spectrum[60]]
-  proc initInterpolator(num: int): AngleInterpolator =
-    result = AngleInterpolator()
-    for i in 0 ..< num:
-      result.data.add Spectrum[60]()
-  macro genCompatibleTuple(t: typed): untyped =
-    let typ = t.getType[1].getTypeImpl[2]
-    result = nnkTupleTy.newTree()
-    for i, ch in typ: # is `nnkObjectTy`
-      result.add nnkIdentDefs.newTree(ident(ch[0].strVal), # ch is `nnkIdentDefs`
-                                      ch[1],
-                                      newEmptyNode())
-  proc fullSize[T: object | tuple](x: T): int =
-    var tmp: genCompatibleTuple(T)
-    result = 0
-    for field, val in fieldPairs(x):
-      result += sizeof(val)
-    doAssert result == sizeof(tmp)
-
-  let reflectivity = initInterpolator(1)
-  for el in reflectivity.data:
-    doAssert fullSize(el) == sizeof(el)
-  doAssert fullSize(reflectivity.data[0]) == sizeof(reflectivity.data[0])
-  doAssert genCompatibleTuple(Spectrum[60]) is tuple[data: array[60, float]]
-  doAssert genCompatibleTuple(Spectrum[120]) is tuple[data: array[120, float]]
-  type Foo[T] = object
-    data: T
-  doAssert genCompatibleTuple(Foo[int]) is tuple[data: int]
-  doAssert genCompatibleTuple(Foo[float]) is tuple[data: float]