[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Plan B for fixing 5.8.2 binary API



On Mon, 13 Oct 2003 14:45:53 -0400, Chip Salzenberg <chip@debian.org>
wrote:

>According to Jan Dubois:
>> For ActivePerl, binary compatibility is even more restrictive: I
>> also care about forward compatibility, compiling modules with 5.8.1
>> and having them work with 5.8.0.
>
>Then, as you probably realize, you could not have enabled hash seeding
>even if this bug had not existed; if you had left it enabled, XS DLLs
>would reference at least one new external symbol (PL_hash_seed).

Yes, I realized that.  Otherwise I would use USE_HASH_SEED_EXPLICIT and
just rebuild the whole PPM repository with 5.8.1 before we release the
corresponding ActivePerl.  Then people could enable it explicitly if they
did a clean install.  Alas, that breaks binary compatibility.

>> This won't work if the 5.8.1 headers redefine standard functions as
>> macros to new APIs because the dynamic loader will not find those
>> when loading into 5.8.0.
>
>So if NO_HASH_SEED is defined, renaming is verboten?  OK.  In that
>case it would be a no-op, so just avoiding it is better anyway.

Yes, thanks!

Cheers,
-Jan



Reply to: