Re: [avr-gcc-list] eeprom issue

2007-05-11 Thread Steve Franks
On 5/10/07, Gavin Jackson [EMAIL PROTECTED] wrote: Declaring the RAM variable as static would restrict it's scope to the module (read .c file) in which it's found according to the C standard. If one of your .c files was changing the variable and you could see those changes from the other .c file

Re: [avr-gcc-list] eeprom issue

2007-05-11 Thread David Brown
Steve Franks wrote: I think I may have finally found my first legitimate bug! Then, again, maybe not: It's not a bug, at least not in the compiler! Anyway, if you have a project with two C/C++ sources, both of which include the same header, and you have: static char temp_ee

RE: [avr-gcc-list] GCC does useless 16-bit operations

2007-05-11 Thread Eric Weddington
-Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] org] On Behalf Of [EMAIL PROTECTED] Sent: Thursday, May 10, 2007 9:28 PM To: avr-gcc-list@nongnu.org Subject: [avr-gcc-list] GCC does useless 16-bit operations For the C code: snip bloated code The C

Re: [avr-gcc-list] eeprom issue

2007-05-11 Thread David Kelly
On Fri, May 11, 2007 at 09:12:58AM +1200, Gavin Jackson wrote: Steve Since the .h file is pulled into each .c file, you would end up with two declarations for temp_ee, hence the two 0x0A values in your ee.hex file. If you remove the static keyword the compiler should complain that you have