<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=iso-8859-15">
<META content="MSHTML 6.00.6000.16608" name=GENERATOR></HEAD>
<BODY style="MARGIN: 4px 4px 1px; FONT: 10pt Tahoma">
<DIV>I agree with Rodney.</DIV>
<DIV>Regards,</DIV>
<DIV>Randy<BR><BR>>>> "Rodney M. Bates" <rodney.bates@wichita.edu> 2/22/2008 5:01 PM >>><BR>But pickles are working below the type safety of the language, copying<BR>bits around. True, pickles will only build an object in the reading<BR>program with the same type it had in the writing program. But the<BR>layout of fields can be different, even with the same type, for example,<BR>due to integer size, or as you say, endianness. Pickles has to be able<BR>to reconstruct the bit layout of a type both as it was on the writing<BR>machine and as it is on the reading machine.<BR><BR>If anything LAZYALIGN is written to a pickle, then it's already broken,<BR>because pickles will have the wrong idea about where the bits of the<BR>fields are located and will garble bits. Pickles always recomputes<BR>bit layouts as the compiler would for STRICTALIGN.<BR><BR>Which means, if you never pickle anything that is LAZYALIGN, you won't<BR>invoke this brokenness. And it sounds like nobody is doing that, so<BR>it's not broken for current uses.<BR><BR>Darko wrote:<BR>> I don't think breaking pickles is at issue at all since the alignment <BR>> issues don't change the meaning of a type, only its layout in memory on <BR>> a particular platform, akin to endian issues.<BR>> <BR>>-- <BR>-------------------------------------------------------------<BR>Rodney M. Bates, retired assistant professor<BR>Dept. of Computer Science, Wichita State University<BR>Wichita, KS 67260-0083<BR>316-978-3922<BR>rodney.bates@wichita.edu<BR><BR></DIV></BODY></HTML>