[Mono-list] Marshaling on Mac

Andreas Färber andreas.faerber at web.de
Wed Aug 27 09:15:38 EDT 2008


Am 26.08.2008 um 10:19 schrieb silver83:

> 1. Is this the case for all / most of Carbon APIs ?

Mac68K seems to apply to ppc only, so no. To find out where it's  
necessary, check the header files on your system.

> 2. Is there a concentrated reference to find out the Packing value per
> "#pragma options
> align" setting ?

See the architecture-specific ABI documentation:
http://developer.apple.com/documentation/DeveloperTools/Conceptual/LowLevelABI/Articles/32bitPowerPC.html#/ 
/apple_ref/doc/uid/TP40002438-DontLinkElementID_1

Andreas

> Robert Jordan wrote:
>>
>> No. It's because UTCDateTime is defined within a `#pragma options
>> align=mac68k' section in its C header file.
>>
>> This means it doesn't have a default structure packing. IIRC,
>> "mac68k" packing means a packing of one, so your managed UTCDateTime
>> struct must be declared with:
>>
>> [StructLayout(LayoutKind.Sequential, Pack = 1)]
>>
>> Robert



More information about the Mono-list mailing list