summaryrefslogtreecommitdiffstats
path: root/mpi
diff options
context:
space:
mode:
authorKaz Kylheku <kaz@kylheku.com>2022-05-20 00:41:52 -0700
committerKaz Kylheku <kaz@kylheku.com>2022-05-20 00:41:52 -0700
commit2536072b64006004c2999005a1961025725f8bfa (patch)
tree1d96491f3f5578520afa9fd602026d8a71874a7f /mpi
parent0069c0b05d810c001c1ab9947b1f8f333caede14 (diff)
downloadtxr-2536072b64006004c2999005a1961025725f8bfa.tar.gz
txr-2536072b64006004c2999005a1961025725f8bfa.tar.bz2
txr-2536072b64006004c2999005a1961025725f8bfa.zip
ffi: bugfix: clone of type points to old self.
* ffi.c (ffi_type_copy, ffi_type_copy_new_ops): The cloned txr_ffi_type structure must have a self member which points to the new cobj, not the original one. Otherwise things are inconsistent. For instance if the clone is being made for the purposes of adjusting alignment, any operation which chases the self pointer will be accessing incorrect attributes. One example of this is (alignof foo.bar) where if bar is the clone of a type, this will incorrectly report the alignment of the original from which bar was cloned, and the original alignment, not the adjusted alignment is reported.
Diffstat (limited to 'mpi')
0 files changed, 0 insertions, 0 deletions