Menu

#66 aggressive loop optimizations warnings

v0.8.6
open
nobody
None
1
2019-11-05
2019-11-05
No

We are building the library inside Cypress PSoC Creator 4.2, using ARM GCC 5,4-2016-q2-update (targeting a PSoC 5LP MPU on a controller board), and we are seeing two warnings in tsm.c from gcc's -Waggressive-loop-optimizations:

tsm.c: In function 'tsm_transaction_idle_count':
tsm.c:124:25: warning: iteration 2 invokes undefined behavior [-Waggressive-loop-optimizations]
if ((TSM_List[i].InvokeID == 0) &&
^
tsm.c:123:5: note: containing loop
for (i = 0; i < MAX_TSM_TRANSACTIONS; i++) {
^
tsm.c: In function 'tsm_timer_milliseconds':
tsm.c:261:24: warning: iteration 2 invokes undefined behavior [-Waggressive-loop-optimizations]
if (TSM_List[i].state == TSM_STATE_AWAIT_CONFIRMATION) {
^
tsm.c:260:5: note: containing loop
for (i = 0; i < MAX_TSM_TRANSACTIONS; i++) {
^

A work around is to compile with -Wno-aggressive-loop-optimizations (which suppresses the warning) or -fno-aggressive-loop-optimizations, which turns off the aggressive analysis.

Discussion

Anonymous
Anonymous

Add attachments
Cancel





MongoDB Logo MongoDB