I think jgc interprets 0x200 as strict pointer.
Then jgc will track the smart pointer with gc_add_grey(), and crash.
I think it's correct.