On Wed, Jul 24, 2013 at 05:09:06PM +0100, Nicholas Clark wrote: > On Wed, Jul 24, 2013 at 11:56:46AM -0400, bulk 88 wrote: > > ---------------------------------------- > > > From: xdg@xdg.me > > > Date: Wed, 24 Jul 2013 11:50:22 -0400 > > > Subject: Re: upcoming release of 5.18.1 > > > CC: perl5-porters@perl.org > > > > * The OP allocation code now returns correctly aligned memory in all > > > cases for "struct pmop". Previously it could return memory only > > > aligned to a 4-byte boundary, which is not correct for an ithreads > > > build with 64 bit IVs on some 32 bit platforms. Notably, this caused > > > the build to fail completely on sparc GNU/Linux. [RT #118055] > > > > > > > That would break ABI/XS between maint releases. > Why so? > > We've not changed any public headers, and we're *tightening* the alignment > constraint. Allocations are now 8 byte aligned (as they should have been all > along for that structure for those platforms), so anything only assuming the > previous 4 byte alignment will be fine. > > Also, it's been tested and fixes the crash on the affected platforms, and > hasn't broken any others. > > Hence I believe that it's suitable compatible to go in - XS extensions > compiled against v5.18.0 will still work when loaded by v5.18.1 We might be talking cross purposes here. There was an interim fixed, merged, which is what I'm describing above. There was then a second, "proper" fix, which changed the header files. Yes, that can't be merged because it breaks ABI/XS. Nicholas ClarkThread Previous | Thread Next