Geir Magnusson Jr. wrote:
> I'm working with Dan's bootVM to get to run on Windows, and have been 
> thinking about the use of -fpack-struct vs #pragm pack() vs just not 
> packing and writing code that is a little slower, and a little more 

I'd dispute that packing always produces faster code, but...

> verbose, but seemingly more robust and maintainable due to less 
> information about context needed to avoid surprises.
> 
> I've reconfirmed that packing structs is deadly when you want to call 
> into standard libs
> 
> struct stat foo;
> 
> stat("foo.txt", &foo);
> 
> does some bizarre things :)
> 
> So how do people deal with this these days?  I know fashions change, 
> and I haven't done C in anger for > 6 years...  (I still have the 
> shakes when looking at it - I'm past the screaming stage...)

Just use the compiler's default (ANSI) layout behavior, and then
explicitly pack a struct using pragmas only where required -- usually
for layout compatibility with an external binary.

As you illustrate above, packing somebody else's struct definition can
bring you into conflict with their binary's view of the world.

Tim

> geir
> 

-- 

Tim Ellison ([EMAIL PROTECTED])
IBM Java technology centre, UK.

Reply via email to