Mailing-List: contact cygwin-developers-help AT sourceware DOT cygnus DOT com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-developers-owner AT sources DOT redhat DOT com Delivered-To: mailing list cygwin-developers AT sources DOT redhat DOT com X-Apparently-From: Message-ID: <3B2F450F.CBA93F2E@yahoo.com> Date: Tue, 19 Jun 2001 08:26:55 -0400 From: Earnie Boyd Reply-To: Cygwin Developers X-Mailer: Mozilla 4.76 [en] (WinNT; U) X-Accept-Language: en MIME-Version: 1.0 To: Cygwin Developers Subject: [Fwd: Re: [MinGW-dvlpr] [Fwd: Re: [LONG MAIL]: The story of the tiny TAPE_GET_MEDIA_PARAMETERS searching the man in the moon]] Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit --- Earnie Boyd wrote: > Ok, Danny, here's the whole story. > > -------- Original Message -------- > Subject: Re: [LONG MAIL]: The story of the tiny > TAPE_GET_MEDIA_PARAMETERS searching the man in the moon > Date: Mon, 18 Jun 2001 00:50:47 +0200 > From: Corinna Vinschen > Reply-To: cygdev > To: cygwin-developers AT cygwin DOT com > References: <20010615123907 DOT C324 AT cygbert DOT vinschen DOT de> > <20010615110027 DOT B15095 AT redhat DOT com> > <20010615171439 DOT M324 AT cygbert DOT vinschen DOT de> > <20010615111627 DOT D15179 AT redhat DOT com> > <20010615181008 DOT N324 AT cygbert DOT vinschen DOT de> > <20010615121316 DOT A15646 AT redhat DOT com> <3B2A7E1F DOT 1CE1D3D0 AT yahoo DOT com> > <20010615204318 DOT D31488 AT redhat DOT com> <3B2AB5EE DOT D6855F4A AT yahoo DOT com> > <20010615220227 DOT A509 AT redhat DOT com> > > On Fri, Jun 15, 2001 at 10:02:27PM -0400, Christopher Faylor wrote: > > On Fri, Jun 15, 2001 at 09:27:10PM -0400, Earnie Boyd wrote: > > >Christopher Faylor wrote: > > >> The problem is apparently that the native gcc compiler and a > cross > > >> compiler seem to disagree on default structure packing. > > > > > >Perhaps the -fnative-struct patch should be interesting to help? > > > > Perhaps, but the reason I forwarded it here is because I'm swamped > and > > don't have time for much investigation in strange (gcc) code. > > > > The theory is that someone in this cooperative project might be > interested > > in helping out. > > > > I'd hoped that Corinna would provide more details. She should be > back online > > on Monday. Maybe we'll hear from her then. > > I only can repeat the mail I originally sent to Chris. I actually > tried > to debug gcc on Friday but I don't know too much about gcc and I > didn't > find anything obvious in an hour or so. Nevertheless, I was a > somewhat > busy with my travel preparations on Friday. > > Ok, the original mail I sent to Chris so everyone can see at least > the > result of the problem: > > ============= SNIP ============= > > As I already mentioned I'm using the tier1-00r1p2 for cross > compiling. > And since that problem already exists in 1.3.2, I suspect that your > compiler which you're using for building Cygwin has the same problem. > > At least the current native gcc-2.95.3 doesn't have it. Otherwise > mt would have used the same wrong value of 28. > > The difference is only explainable by the pack algorithm. The > cross compiler uses a default structure packing of 4 Bytes and > the native gcc a default packing of 8 Bytes, probably. > ============= SNAP ============= > > Just a guess: Perhaps, the cross compiler uses the packing > algorithm of the HOST instead of the TARGET. > > Corinna > Another "Just a guess": If cross-compiler was built before's Mumit's changes to implemtation of #pragma(pack,[1248], then it may be misinterpreting some of the packing pragmas in current w32api. I am referring to these changes: + Fri Jul 2 22:13:14 1999 Mumit Khan + + * c-pragma.h (PRAGMA_INSERT_ATTRIBUTES): Delete macro. + (insert_pack_attributes): Delete prototype. + (enum pragma_state): Simplify. + + * c-pragma.c (struct align_stack): Lose num_pushes field. + (push_alignment): Remove redundant check for valid alignment; + always push on stack. + (pop_alignment): Update prototype. Implement combination rule. + (insert_pack_attributes): Lose. + (handle_pragma_token): Document syntax. Simplify pack(push/pop) + attributes and implement documented syntax. + + Sun Jul 4 13:18:23 1999 Mumit Khan + + * i386/cygwin.h (PCC_BITFIELD_TYPE_MATTERS): Fix typo and + define to be 1. + (GROUP_BITFIELDS_BY_ALIGN): Define. + IIRC, many of the packing pragmas were introduced into w32api headers in a Nov,1999 snapshot. Danny _________________________________________________________ Do You Yahoo!? Get your free @yahoo.com address at http://mail.yahoo.com