Skip to content

AROS: ABI compatibility update structure TETask (ABI/BC break)

magorium requested to merge magorium/fpc-source:AROS-ABI-break-TETask into main

These changes break Binary Compatibility between ABIv0 and ABIv1 and for ABIv1.

Record TETask was not compliant to ABIv1 because field et_Compatibility is only required for ABIv0 (https://github.com/deadw00d/AROS/commit/06538a17900b3e6c45d053128957fba8668c2c15).

The first commit brings structure TETask up to date to unit exec (exec.pas) inside the RTL (execd.inc) as it was (literally) based on the MorphOS version.

The second commit updates record TETask for both RTL (execd.inc) and unit exec (exec.pas) so that field et_Compatibility is only present for ABIv0.

The impact of these changes should be minimal because all relevant fields are still accessible (some located at another offset) and code should never rely on the size of this structure.

Recompilation for ABIv1 required when it makes use of certain field members of record structure TETask.

Edited by magorium

Merge request reports