foreign-type-size implementation