I observed the same behavior with gcc 4.7.2 on Linux/x86, CHICKEN master as of 445e245a54b56e232236c3a47ce4905ca79b2007:
$ gcc --version
gcc (Debian 4.7.2-5) 4.7.2
Copyright (C) 2012 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
The error is
======================================== lolevel tests ...
Error: assertion failed: (pair? some-foo)
Call history:
<syntax> (cons some-bar (quote #(1 2 3)))
<syntax> (quote #(1 2 3))
<syntax> (##core#quote #(1 2 3))
<eval> (object-become! (list (cons some-foo (quote (1 2 3))) (cons some-bar (quote #(1 2 3)))))
<eval> (list (cons some-foo (quote (1 2 3))) (cons some-bar (quote #(1 2 3))))
<eval> (cons some-foo (quote (1 2 3)))
<eval> (cons some-bar (quote #(1 2 3)))
<syntax> (assert (pair? some-foo))
<syntax> (##core#if (##core#check (pair? some-foo)) (##core#undefined) (##sys#error "assertion failed" (##cor......
<syntax> (##core#check (pair? some-foo))
<syntax> (pair? some-foo)
<syntax> (##core#undefined)
<syntax> (##sys#error "assertion failed" (##core#quote (pair? some-foo)))
<syntax> (##core#quote (pair? some-foo))
<eval> (pair? some-foo)
<eval> (##sys#error "assertion failed" (##core#quote (pair? some-foo))) <--
make[1]: *** [check] Error 70
make[1]: Leaving directory `/home/mario/src/chicken-core'
make: *** [check] Error 2
I pretty printed some-foo after object-become! and it printed #<unprintable object>