Hello,

The following piece of code cause an ICE to happen.

typedef struct {
unsigned long maskbits:20;
char extra;
} MYSTRUCT;

MYSTRUCT mys = {0};

void test_ice(void)
{
   unisgned  long lvar = 0x0f;

    mys.maskbits = lvar;   // <<== ICE here
}

kees:$ msp430-gcc -mmcu=msp430f449 -c mspgcc_ice.c
mspgcc_ice.c: In function 'test_ice':
mspgcc_ice.c:13:15: internal compiler error: in convert_move, at expr.c:437
Please submit a full bug report,
with preprocessed source if appropriate.
See <http://gcc.gnu.org/bugs.html> for instructions.

msp430-gcc (GCC) 4.7.0 20120322 (mspgcc dev 20120911)
Copyright (C) 2012 Free Software Foundation, Inc.

smaller bitfields work well. I don't know if later mspgcc versions
does ICE here too.

Kees

------------------------------------------------------------------------------
Open source business process management suite built on Java and Eclipse
Turn processes into business applications with Bonita BPM Community Edition
Quickly connect people, data, and systems into organized workflows
Winner of BOSSIE, CODIE, OW2 and Gartner awards
http://p.sf.net/sfu/Bonitasoft
_______________________________________________
Mspgcc-users mailing list
Mspgcc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mspgcc-users

Reply via email to