simavr icon indicating copy to clipboard operation
simavr copied to clipboard

Overflow error in MCU_SPEED?

Open spoorcc opened this issue 7 years ago • 1 comments

I want to use simavr for simulating atmega328p which runs at 16MHz. When specifying 16000000 for AVR_MCU, I get an overflow error for AVR_MCU_LONG.

AVR_MCU( 16000000UL, "atmega328p");

Compile message:

 error: large integer implicitly truncated to unsigned type [-Werror=overflow]
 AVR_MCU( 16000000UL, "atmega328p");
          ^
/usr/include/simavr/avr/avr_mcu_section.h:120:10: note: in definition of macro 'AVR_MCU_LONG'
   .val = _val,\
          ^~~~
/home/ben/Programming/porthos-motor-control/bld/bin/toggle-led_atmega328p_vcd_trace.c:12:1: note: in expansion of macro 'AVR_MCU'
 AVR_MCU( 16000000, "atmega328p");
 ^~~~~~~
cc1: all warnings being treated as errors
make[2]: *** [bin/CMakeFiles/toggle-led-atmega328p.elf.dir/build.make:63: bin/CMakeFiles/toggle-led-atmega328p.elf.dir/toggle-led_atmega328p_vcd_trace.c.obj] Error 1
make[1]: *** [CMakeFiles/Makefile2:222: bin/CMakeFiles/toggle-led-atmega328p.elf.dir/all] Error 2

I use avr-gcc for compiling


$ avr-gcc -v
Using built-in specs.
Reading specs from /usr/lib/gcc/avr/6.2.0/device-specs/specs-avr2
COLLECT_GCC=avr-gcc
COLLECT_LTO_WRAPPER=/usr/lib/gcc/avr/6.2.0/lto-wrapper
Target: avr
Configured with: /build/avr-gcc/src/gcc-6-20160929/configure --disable-install-libiberty --disable-libssp --disable-libstdcxx-pch --disable-libunwind-exceptions --disable-linker-build-id --disable-nls --disable-werror --disable-__cxa_atexit --enable-checking=release --enable-clocale=gnu --enable-gnu-unique-object --enable-gold --enable-languages=c,c++ --enable-ld=default --enable-lto --enable-plugin --enable-shared --infodir=/usr/share/info --libdir=/usr/lib --libexecdir=/usr/lib --mandir=/usr/share/man --prefix=/usr --target=avr --with-as=/usr/bin/avr-as --with-gnu-as --with-gnu-ld --with-ld=/usr/bin/avr-ld --with-plugin-ld=ld.gold --with-system-zlib --with-isl --enable-gnu-indirect-function
Thread model: single
gcc version 6.2.0 (GCC) 

spoorcc avatar Dec 04 '16 13:12 spoorcc

ANyone ver managed to reproduce that?

buserror avatar Jan 10 '18 10:01 buserror