diff options
Diffstat (limited to 'ffi.c')
-rw-r--r-- | ffi.c | 11 |
1 files changed, 11 insertions, 0 deletions
@@ -2882,6 +2882,9 @@ static val make_ffi_type_struct(val syntax, val lisp_type, tft->incomplete = 1; + setcheck(obj, syntax); + setcheck(obj, lisp_type); + sethash(ffi_struct_tag_hash, cadr(syntax), obj); for (i = 0; i < nmemb; i++) { @@ -2897,6 +2900,9 @@ static val make_ffi_type_struct(val syntax, val lisp_type, memb[i].mname = slot; memb[i].mtft = mtft; + setcheck(obj, slot); + setcheck(obj, type); + if (mtft->bitfield) { ucnum size = mtft->size; ucnum bits_type = 8 * size; @@ -3045,6 +3051,8 @@ static val make_ffi_type_union(val syntax, val use_existing, val self) tft->incomplete = 1; + setcheck(obj, syntax); + sethash(ffi_struct_tag_hash, cadr(syntax), obj); for (i = 0; i < nmemb; i++) { @@ -3058,6 +3066,9 @@ static val make_ffi_type_union(val syntax, val use_existing, val self) memb[i].mtft = mtft; memb[i].offs = 0; + setcheck(obj, slot); + setcheck(obj, type); + if (most_align < (ucnum) mtft->align) most_align = mtft->align; |