HHID のサンプルソースコードで・・

an_r01an2236xx0127_usb パッケージで・・

gcc-6.4.0 で r_usb_hhid_driver.c をコンパイルすると・・・

※「nonOS/RX65N_2MB」

以下のエラーが出ます。

> ../r_usb/hhid/src/r_usb_hhid_driver.c:734:45: error: iteration 5 invokes undefined behavior [-Werror=aggressive-loop-optimizations]
             g_usb_hhid_protocol[ptr->ip][i] = 0;
             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~
../r_usb/hhid/src/r_usb_hhid_driver.c:732:9: note: within this loop
         for (i =0; i< (USB_MAXDEVADDR + 1); i++)
         ^~~
../r_usb/hhid/src/r_usb_hhid_driver.c: In function 'usb_hhid_driver_start':
../r_usb/hhid/src/r_usb_hhid_driver.c:813:45: error: iteration 5 invokes undefined behavior [-Werror=aggressive-loop-optimizations]
             g_usb_hhid_protocol[ptr->ip][i] = 0;
             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~
../r_usb/hhid/src/r_usb_hhid_driver.c:811:9: note: within this loop
         for (i =0; i< (USB_MAXDEVADDR + 1); i++)

※配列は、「USB_MAXDEVADDR」の大きさで宣言されているのに、for 文のループは、わざわざ+1して、1回多いように思います。

Parents Reply Children
No Data