Wie gesagt: bei mir geht es (gcc Version Dez. 2007) mit dem Simulator des AVR-Studio (unter XP-SP2); "count" wird korrekt geändert und die Änderung in "main()" auch erkannt.
Ich hatte neben den unsigned/short/bitfield-Parametern nur die folgenden Optionen gesetzt:
-Wall
-Os
-gdwarf-2
Hast Du mal nach Bugreports für Deine Entwicklungsumgebung gesucht?
Gruß
Fred
Meldungen keim Kompilieren/Linken:
avr-gcc.exe -mmcu=attiny2313 -Wall -gdwarf-2 -std=gnu99 -Os -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -MD -MP -MT cipher.o -MF dep/cipher.o.d -c ../cipher.c
avr-gcc.exe -mmcu=attiny2313 -Wl,-Map=cipher.map cipher.o -o cipher.elf
avr-objcopy -O ihex -R .eeprom cipher.elf cipher.hex
avr-objcopy -j .eeprom --set-section-flags=.eeprom="alloc,load" --change-section-lma .eeprom=0 --no-change-warnings -O ihex cipher.elf cipher.eep || exit 0
avr-objdump -h -S cipher.elf > cipher.lss
Lesezeichen