<html>
<head>
<style><!--
.hmmessage P
{
margin:0px;
padding:0px
}
body.hmmessage
{
font-size: 10pt;
font-family:Verdana
}
--></style>
</head>
<body class='hmmessage'>
These are more potential ABI breaking changes.<BR>
Not sure if they'd break pickles or not.<BR>
<BR>
<BR>
I suggest we can probably get by with platform-independent packing/alignment settings.<BR>
Align everything by its size, up to 8. ?<BR>
That is increased alignment for LONGINT and LONGFLOAT on some systems.<BR>
Which they probably should have been in the first place.<BR>
It would also increase alignment for obsolete M68K platforms.<BR>
<BR>
<BR>
I also suggest we need pragmas to declare something is packed/aligned<BR>
differently. But that might be avoided via C layers.<BR>
<BR>
<BR>
See, in mklib we have:<BR>
<BR>
<BR>
TYPE<BR> PIMAGE_SYMBOL = <* UNALIGNED *> UNTRACED REF IMAGE_SYMBOL;<BR> IMAGE_SYMBOL = RECORD<BR> N: ARRAY [0 .. 7] OF UINT8;<BR> Value : UINT32;<BR> SectionNumber : INT16;<BR> Type : UINT16;<BR> StorageClass : UINT8;<BR> NumberOfAuxSymbols : UINT8;<BR> END;<BR>
<BR>
CONST<BR> IMAGE_SIZEOF_SYMBOL = 18;<BR><BR>
<BR>
But BYTESIZE(IMAGE_SYMBOL) is probably 20 on all platforms (except maybe M68K ones).<BR>
<BR>
<BR>
Then Target.Int8, etc. could be constants.<BR>
Maybe not worth anything.<BR>
<BR>
<BR>
- Jay<BR> </body>
</html>