Gast
#928318
Hallo,
übersetzt man folgenden Code mit dem avr-gcc (ich benutze avr-gcc (GCC)
3.4.6) erhält man folgende Fehlermeldung:
[pre]
bash:/tmp$ avr-gcc test.c -Wall
test.c:4: warning: left shift count >= width of type
[/pre}
Code:
[c]
#define _AVR_ATmega8_ 1
#include <stdint.h>
uint32_t N=(1<<20);
int main()
{
while(1);
}
[/c}
Das ist ganz offensichtlich totaler Blödsinn, da 1<<20 locker in einen
32-Bit Datentyp passen würde. Leider ist es aber eben nicht nur eine
Warnung -sondern der Typ wird tatsächlich auch falsch berechnet - weil
nach dem 16. Bit abgeschnitten.
Kann mir jemand diesen Fehler, vielleicht mit einem etwas neuerern
Compiler, bestätigen?
Danke,
Martin L.
PS: Warum gehen die Formatierungen nicht?
