• Tim Peters's avatar
    SF bug [#467145] Python 2.2a4 build problem on HPUX 11.0. · 9e4ca10c
    Tim Peters yazdı
    The platform requires 8-byte alignment for doubles, but the GC header
    was 12 bytes and that threw off the natural alignment of the double
    members of a subtype of complex.  The fix puts the GC header into a
    union with a double as the other member, to force no-looser-than
    double alignment of GC headers.  On boxes that require 8-byte alignment
    for doubles, this may add pad bytes to the GC header accordingly; ditto
    for platforms that *prefer* 8-byte alignment for doubles.  On platforms
    that don't care, it shouldn't change the memory layout (because the
    size of the old GC header is certainly greater than the size of a double
    on all platforms, so unioning with a double shouldn't change size or
    alignment on such boxes).
    9e4ca10c
objimpl.h 12.7 KB