This is the mail archive of the cygwin@sourceware.cygnus.com
mailing list for the Cygwin project. See the Cygwin
home page for more information.
cygwin or egcs bug ?
- To: egcs mailing list <egcs@cygnus.com>, CygWin32 <cygwin@sourceware.cygnus.com>
- Subject: cygwin or egcs bug ?
- From: Brendan Simon <brendan@dgs.monash.edu.au>
- Date: Tue, 27 Apr 1999 08:19:04 +0000
- Organization: CTAM Pty Ltd
- Reply-To: brendan@dgs.monash.edu.au
The following code compiles fine with gcc-2.7.2.3 (using linux) but
barfs with an internal compiler error when using egcs-1.1.2 (using
Mingw32 or Cygwin32). I haven't tried it with linux egcs yet but I will
try that when I get home tonight.
The error message is
"/home/noer/src/b20/comp-tools/devo/gcc/expr.c:2468: Internal compiler
error in function emit_move_insn_1"
Is this a bug or have I got some kind of weird code that should be
changed to be more portable ?
Any ideas or patches ??
Thanks,
Brendan Simon.
struct GEN_REG
{
volatile unsigned long status[4];
volatile unsigned long control[4];
};
struct DEV
{
volatile GEN_REG genReg;
};
#define DevPtr ( (volatile DEV * const) 0x1000000 )
int main()
{
// This works OK.
DevPtr->genReg.status[0] = 0x00000000;
DevPtr->genReg.status[1] = 0x00000000;
DevPtr->genReg.status[2] = 0x00000000;
DevPtr->genReg.status[3] = 0x00000000;
// This causes compiler to barf !!!
for( int i = 0; i < 4; i++ )
{
DevPtr->genReg.status[i] = 0x00000000;
}
return 0;
}
--
Want to unsubscribe from this list?
Send a message to cygwin-unsubscribe@sourceware.cygnus.com