summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorDavid Krause <enthus1ast@users.noreply.github.com>2017-08-17 13:38:10 +0200
committerAndreas Rumpf <rumpf_a@web.de>2017-08-17 13:38:10 +0200
commit0e276be301aa235cc81f033d66020234f7018db3 (patch)
treee5a36ccf4555f40e6f9a576a537cdf1cbbbab8b8
parent5c7ae1407425d8a595ea8841b669e30e61e29307 (diff)
downloadNim-0e276be301aa235cc81f033d66020234f7018db3.tar.gz
fixes #6250 (#6251)
-rw-r--r--lib/pure/collections/tables.nim16
1 files changed, 15 insertions, 1 deletions
diff --git a/lib/pure/collections/tables.nim b/lib/pure/collections/tables.nim
index 5b6701a12..b1e046120 100644
--- a/lib/pure/collections/tables.nim
+++ b/lib/pure/collections/tables.nim
@@ -648,7 +648,7 @@ proc `==`*[A, B](s, t: OrderedTable[A, B]): bool =
     var nxtt = t.data[ht].next
     var nxts = s.data[hs].next
     if isFilled(t.data[ht].hcode) and isFilled(s.data[hs].hcode):
-      if (s.data[hs].key != t.data[ht].key) and (s.data[hs].val != t.data[ht].val):
+      if (s.data[hs].key != t.data[ht].key) or (s.data[hs].val != t.data[ht].val):
         return false
     ht = nxtt
     hs = nxts
@@ -1311,3 +1311,17 @@ when isMainModule:
     assert a == c
 
 
+  block: #6250
+    let
+      a = {3: 1}.toOrderedTable
+      b = {3: 2}.toOrderedTable
+    assert ((a == b) == false)
+    assert ((b == a) == false)
+
+  block: #6250
+    let
+      a = {3: 2}.toOrderedTable
+      b = {3: 2}.toOrderedTable
+    assert ((a == b) == true)
+    assert ((b == a) == true)    
+