Mail Archives: djgpp/1996/07/08/01:16:48
On Sun, 7 Jul 1996, Alaric B. Williams wrote:
> It seems to be a structure packing problem... the ff.c in djtst claims
> that the offset of ff_name is 30; but the SAME test in my code returns
> 32. Why is the packing changing? I compile both sources with the same
> command line!
>
> Further examination shows that the fact that my file is a .cc and the
> ff.c file is a .c matters. Why does the packing change????? they both
> use the same include file dir.h, which lists the struct as being fully
> packed!
This is a known bug in GCC 2.7.2: the C++ compiler doesn't pack structs.
To work around, surround the declaration of the struct that needs to be
packed with these pragma's:
#pragma pack(1)
struct ...
...
...
#pragma pack()
- Raw text -