Date: Mon, 8 Jul 1996 08:12:15 +0200 (IST) From: Eli Zaretskii To: "Alaric B. Williams" Cc: djgpp AT delorie DOT com Subject: Re: [_dos_]find{first|next} problem! In-Reply-To: <836767569.26385.0@abwillms.demon.co.uk> Message-Id: Mime-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII 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()