-
- Downloads
Merge 'faulty unsigned comparisons'
Fix faulty error handling due to always-false unsigned comparisons. `-Wtype-limits` revealed three errors in the firmware: ../pycardium/modules/sys_leds.c: In function 'mp_leds_get_rocket': ../pycardium/modules/sys_leds.c:207:10: warning: comparison is always false due to limited range of data type [-Wtype-limits] 207 | if (ret == -EINVAL) { | ^~ ../pycardium/mphalport.c: In function 'mp_hal_set_interrupt_char': ../pycardium/mphalport.c:115:8: warning: comparison is always true due to limited range of data type [-Wtype-limits] 115 | if (c != -1) { | ^~ ../epicardium/modules/bhi.c: In function 'epic_bhi160_enable_sensor': ../epicardium/modules/bhi.c:134:12: warning: comparison is always false due to limited range of data type [-Wtype-limits] 134 | if (vs_id < 0) { | ^ ../epicardium/modules/bhi.c: In function 'epic_bhi160_disable_sensor': ../epicardium/modules/bhi.c:191:12: warning: comparison is always false due to limited range of data type [-Wtype-limits] 191 | if (vs_id < 0) { | ^ Note that on the target platform `char` and `enum`s are unsigned. The compiler has probably removed all of these `if`s so far because the conditions were determined to always be false. See merge request card10/firmware!357
No related branches found
No related tags found
Please register or sign in to comment