Cygwin struct alignment

Brian Ford
Mon Dec 29 16:35:00 GMT 2008

On Mon, 29 Dec 2008, John Emmas wrote:

> Yesterday I spent some time looking into this but didn't come to any
> hard & fast conclusions.   Variables themselves seem to correlate very well
> between MSVC and Cygwin (even 'long' which I thought was different).  But
> when calculating structure alignment (manually) sometimes Cygwin gave
> closer results to what I expected and sometime MSVC was closer.

The only major difference I'm aware of is that Cygwin defaults to 8 byte
alignment for long long and double for performance reasons, while MSVC
defaults to 4 byte alignment for those types I believe.

> Before I try Ralph's suggestion I'd like (if possible) to try building both
> versions with struct packing disabled.  This is fairly simple to do with
> Microsoft's compiler (I just set the member alignment to '1 byte') but can
> it be done for my Cygwin compiler - e.g. with a compiler option or a #pragma
> or whatever?

Google attribute packed as I don't remember the exact syntax, but I fail
to see how this actually helps your cause.

Brian Ford
Staff Realtime Software Engineer
VITAL - Visual Simulation Systems
FlightSafety International
the best safety device in any aircraft is a well-trained crew...

Unsubscribe info:
Problem reports:

More information about the Cygwin mailing list