[racket] bug? bit-vector equal problem

From: Mark Wallace (lotabout at gmail.com)
Date: Tue Aug 19 21:50:06 EDT 2014

It seems that "equal?" misbehave on bit-vectors when the size is less 
then 9. Below is a small test case that show this bug? maybe.

Can you guys help to test whether it's only happening on my machine?

#lang racket

(require data/bit-vector)

(define bv1 (make-bit-vector 8 #t))
(define bv2 (make-bit-vector 8 #f))
(equal? bv1 bv2)                       ; => #t
(bit-vector-set! bv1 5 #f)
(equal? bv1 bv2)                       ; => #t


(define bv3 (make-bit-vector 9 #t))
(define bv4 (make-bit-vector 9 #f))
(equal? bv3 bv4)                       ; => #f
(bit-vector-set! bv3 5 #f)
(equal? bv3 bv4)                       ; => #f


Racket version:

$ racket --version
Welcome to Racket v6.0.

$ uname -a
Linux darkstar 3.10.30 #2 SMP Fri Feb 14 19:46:22 CST 2014 x86_64 
Intel(R) Core(TM) i3-2120 CPU @ 3.30GHz GenuineIntel GNU/Linux

Posted on the users mailing list.