summary refs log tree commit diff stats
path: root/tests/array
diff options
context:
space:
mode:
authorAndreas Rumpf <rumpf_a@web.de>2017-10-29 20:36:07 +0100
committerAndreas Rumpf <rumpf_a@web.de>2017-10-29 20:36:07 +0100
commitf1dab3908699aef2978b428ed9c15086a2c4bf8c (patch)
tree007c6279ea8a40d7bd602b2392e8f5557bc70df5 /tests/array
parentd52a1061b35bbd2abfbd062b08023d986dbafb3c (diff)
downloadNim-f1dab3908699aef2978b428ed9c15086a2c4bf8c.tar.gz
remove old implementation of the roof operator; make tests green again; close #6292
Diffstat (limited to 'tests/array')
-rw-r--r--tests/array/troof1.nim27
-rw-r--r--tests/array/troof2.nim10
-rw-r--r--tests/array/troof3.nim5
-rw-r--r--tests/array/troof4.nim37
4 files changed, 3 insertions, 76 deletions
diff --git a/tests/array/troof1.nim b/tests/array/troof1.nim
index 96669a121..9df012e6a 100644
--- a/tests/array/troof1.nim
+++ b/tests/array/troof1.nim
@@ -1,7 +1,6 @@
 discard """
   output: '''@[2, 3, 4]321
-9.0 4.0
-(a: 1.0, b: 2.0, c: 8.0)2.0'''
+9.0 4.0'''
 """
 
 proc foo[T](x, y: T): T = x
@@ -10,27 +9,3 @@ var a = @[1, 2, 3, 4]
 var b: array[3, array[2, float]] = [[1.0,2], [3.0,4], [8.0,9]]
 echo a[1.. ^1], a[^2], a[^3], a[^4]
 echo b[^1][^1], " ", (b[^2]).foo(b[^1])[^1]
-
-type
-  MyArray = object
-    a, b, c: float
-
-var
-  ma = MyArray(a: 1.0, b: 2.0, c: 3.0)
-
-proc len(x: MyArray): int = 3
-
-proc `[]=`(x: var MyArray; idx: range[0..2]; val: float) =
-  case idx
-  of 0: x.a = val
-  of 1: x.b = val
-  of 2: x.c = val
-
-proc `[]`(x: var MyArray; idx: range[0..2]): float =
-  case idx
-  of 0: result = x.a
-  of 1: result = x.b
-  of 2: result = x.c
-
-ma[^1] = 8.0
-echo ma, ma[^2]
diff --git a/tests/array/troof2.nim b/tests/array/troof2.nim
deleted file mode 100644
index e4b4f4b3c..000000000
--- a/tests/array/troof2.nim
+++ /dev/null
@@ -1,10 +0,0 @@
-discard """
-  errormsg: "invalid context for '^' as 'foo()' has side effects"
-  line: "9"
-"""
-# XXX This needs to be fixed properly!
-proc foo(): seq[int] {.sideEffect.} =
-  echo "ha"
-
-let f = foo()[^1]
-
diff --git a/tests/array/troof3.nim b/tests/array/troof3.nim
index 4b6e22223..efe0eafb8 100644
--- a/tests/array/troof3.nim
+++ b/tests/array/troof3.nim
@@ -1,8 +1,7 @@
 discard """
-  errormsg: "invalid context for '^' as len!=high+1 for 'a'"
-  line: "8"
+  output: '''c'''
 """
 
-var a: array[1..3, string]
+var a: array['a'..'c', string] = ["a", "b", "c"]
 
 echo a[^1]
diff --git a/tests/array/troof4.nim b/tests/array/troof4.nim
deleted file mode 100644
index 7a262d9de..000000000
--- a/tests/array/troof4.nim
+++ /dev/null
@@ -1,37 +0,0 @@
-discard """
-  errormsg: "no surrounding array access context for '^'"
-  line: "37"
-"""
-
-proc foo[T](x, y: T): T = x
-
-var a = @[1, 2, 3, 4]
-var b: array[3, array[2, float]] = [[1.0,2], [3.0,4], [8.0,9]]
-echo a[1.. ^1], a[^2], a[^3], a[^4]
-echo b[^1][^1], " ", (b[^2]).foo(b[^1])[^1]
-
-type
-  MyArray = object
-    a, b, c: float
-
-var
-  ma = MyArray(a: 1.0, b: 2.0, c: 3.0)
-
-proc len(x: MyArray): int = 3
-
-proc `[]=`(x: var MyArray; idx: range[0..2]; val: float) =
-  case idx
-  of 0: x.a = val
-  of 1: x.b = val
-  of 2: x.c = val
-
-proc `[]`(x: var MyArray; idx: range[0..2]): float =
-  case idx
-  of 0: result = x.a
-  of 1: result = x.b
-  of 2: result = x.c
-
-ma[^1] = 8.0
-echo ma, ma[^2]
-
-echo(^1)