Fix `equal?' on bytevectors.
* libguile/bytevectors.c (bytevector_equal_p): New function.
* test-suite/tests/bytevectors.test ("2.3 Operations on Bytes and
Octets")["equal?"]: New test.
This commit is contained in:
parent
b242715b28
commit
55bf8cb7af
2 changed files with 11 additions and 1 deletions
|
|
@ -300,6 +300,11 @@ SCM_SMOB_PRINT (scm_tc16_bytevector, print_bytevector,
|
|||
return 1;
|
||||
}
|
||||
|
||||
SCM_SMOB_EQUALP (scm_tc16_bytevector, bytevector_equal_p, bv1, bv2)
|
||||
{
|
||||
return scm_bytevector_eq_p (bv1, bv2);
|
||||
}
|
||||
|
||||
SCM_SMOB_FREE (scm_tc16_bytevector, free_bytevector, bv)
|
||||
{
|
||||
|
||||
|
|
|
|||
|
|
@ -123,7 +123,12 @@
|
|||
(bytevector-sint-set! b 0 -16 (endianness big) 2)
|
||||
(bytevector-sint-set! b 1 -16 (endianness little) 2)
|
||||
(equal? (bytevector->u8-list b)
|
||||
'(#xff #xf0 #xff)))))
|
||||
'(#xff #xf0 #xff))))
|
||||
|
||||
(pass-if "equal?"
|
||||
(let ((bv1 (u8-list->bytevector (iota 123)))
|
||||
(bv2 (u8-list->bytevector (iota 123))))
|
||||
(equal? bv1 bv2))))
|
||||
|
||||
|
||||
(with-test-prefix "2.4 Operations on Integers of Arbitrary Size"
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue