diff options
-rwxr-xr-x | lib/pure/hashes.nim | 4 | ||||
-rw-r--r-- | tests/run/thashes.nim | 7 |
2 files changed, 11 insertions, 0 deletions
diff --git a/lib/pure/hashes.nim b/lib/pure/hashes.nim index 9c086c675..ac6d3c3ce 100755 --- a/lib/pure/hashes.nim +++ b/lib/pure/hashes.nim @@ -122,3 +122,7 @@ proc hash*[T: tuple](x: T): THash = result = result !& hash(f) result = !$result +proc hash*(x: float): THash {.inline.} = + var y = x + 1.0 + result = cast[ptr THash](addr(y))[] + diff --git a/tests/run/thashes.nim b/tests/run/thashes.nim new file mode 100644 index 000000000..2b418c4cd --- /dev/null +++ b/tests/run/thashes.nim @@ -0,0 +1,7 @@ +import unittest +import hashes + +suite "hashes": + suite "hashing": + test "0.0 and -0.0 should have the same hash value": + check hash(0.0) == hash(-0.0) \ No newline at end of file |