the error is in the struct accessors, they end up containing literal FOREIGN-STRUCT-SLOT objects without a MAKE-LOAD-FORM.
i've added a test that exhibits this problem:
https://github.com/cffi/cffi/commit/4310a7a7d774af06a63df3a30183293ba08756f1
the fix is not trivial, i gave up.
i tried to make it expand into a form that looks up the struct and the slot at load-time (in a MAKE-LOAD-FORM), but the slots don't know about their structs, so i cannot walk up and then back down the hierarchy.