1 /* bug-2235.c 2 */ 3 4 #include <testfwk.h> 5 6 #ifdef __SDCC_mcs51 7 __sfr32 __at (0xFCFBFAF9) SFR32; 8 #else 9 volatile unsigned long SFR32; 10 #endif 11 foo(unsigned long u1,unsigned long u2,unsigned long u3)12void foo(unsigned long u1, unsigned long u2, unsigned long u3) 13 { 14 u1; 15 u2; 16 u3; 17 } 18 19 /* This failed to compile due to iTemps getting SFR storage class */ testBug2235(void)20void testBug2235(void) 21 { 22 unsigned long U1, U2, U3; 23 24 U1 = 0xABCDEF01 + SFR32; 25 U2 = U1 + SFR32; 26 U3 = U2 + SFR32; 27 foo(U1, U2, U3); 28 ASSERT(1); 29 } 30