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 Yes, the fix in ticket RT #118055 is suitable for maint and ought to go in. What might be confusing is that the subsequent fix in blead, commit 784e50c8, which used PADOFFSET instead of IV in the relevant structure, is not suitable for maint. -- Andy Dougherty doughera@lafayette.eduThread Previous | Thread Next