summary refs log tree commit diff stats
path: root/tests/concepts/t3330.nim
diff options
context:
space:
mode:
Diffstat (limited to 'tests/concepts/t3330.nim')
-rw-r--r--tests/concepts/t3330.nim47
1 files changed, 19 insertions, 28 deletions
diff --git a/tests/concepts/t3330.nim b/tests/concepts/t3330.nim
index 067e81133..901f8d2f4 100644
--- a/tests/concepts/t3330.nim
+++ b/tests/concepts/t3330.nim
@@ -1,55 +1,47 @@
 discard """
+matrix: "--mm:refc"
 errormsg: "type mismatch: got <Bar[system.int]>"
-disabled: "32bit"
 nimout: '''
-t3330.nim(78, 4) Error: type mismatch: got <Bar[system.int]>
+t3330.nim(70, 4) Error: type mismatch: got <Bar[system.int]>
 but expected one of:
 proc test(foo: Foo[int])
   first type mismatch at position: 1
   required type for foo: Foo[int]
   but expression 'bar' is of type: Bar[system.int]
-t3330.nim(63, 8) Hint: Non-matching candidates for add(k, string, T)
-proc add(x: var string; y: string)
+t3330.nim(55, 8) Hint: Non-matching candidates for add(k, string, T)
+proc add(x: var string; y: char)
   first type mismatch at position: 1
   required type for x: var string
   but expression 'k' is of type: Alias
-proc add[T](x: var seq[T]; y: openArray[T])
-  first type mismatch at position: 1
-  required type for x: var seq[T]
-  but expression 'k' is of type: Alias
-proc add(result: var string; x: float)
-  first type mismatch at position: 1
-  required type for result: var string
-  but expression 'k' is of type: Alias
-proc add[T](x: var seq[T]; y: T)
-  first type mismatch at position: 1
-  required type for x: var seq[T]
-  but expression 'k' is of type: Alias
 proc add(x: var string; y: cstring)
   first type mismatch at position: 1
   required type for x: var string
   but expression 'k' is of type: Alias
-proc add(x: var string; y: char)
+proc add(x: var string; y: string)
   first type mismatch at position: 1
   required type for x: var string
   but expression 'k' is of type: Alias
-proc add(result: var string; x: int64)
+proc add[T](x: var seq[T]; y: openArray[T])
+  first type mismatch at position: 1
+  required type for x: var seq[T]
+  but expression 'k' is of type: Alias
+proc add[T](x: var seq[T]; y: sink T)
   first type mismatch at position: 1
-  required type for result: var string
+  required type for x: var seq[T]
   but expression 'k' is of type: Alias
 
-t3330.nim(63, 8) template/generic instantiation of `add` from here
-t3330.nim(70, 6) Foo: 'bar.value' cannot be assigned to
-t3330.nim(63, 8) template/generic instantiation of `add` from here
-t3330.nim(71, 6) Foo: 'bar.x' cannot be assigned to
+t3330.nim(55, 8) template/generic instantiation of `add` from here
+t3330.nim(62, 6) Foo: 'bar.value' cannot be assigned to
+t3330.nim(55, 8) template/generic instantiation of `add` from here
+t3330.nim(63, 6) Foo: 'bar.x' cannot be assigned to
 
 expression: test(bar)'''
 """
 
-# Note: currently disabled on 32bit because the candidates are presented in
-# different order on travis with `NIM_COMPILE_TO_CPP=false CPU=i386`;
-# a possible fix would be to sort the candidates by proc signature or
-# declaration location
+
+
+
+
 
 
 
@@ -76,4 +68,3 @@ proc test(foo: Foo[int]) =
 
 var bar = Bar[int]()
 bar.test()
-