Ensure the flow through switch statements is clear
Ensure case clauses:
* Terminate with an unconditional break, return or goto statement.
* Use conditional break, return or goto statements as long as the end
of the case clause is unreachable; such case clauses must terminate
with assert(0) /* Unreachable */ or an unconditional __dead2 function
call
* Only fallthough when doing otherwise would result in less
readable/maintainable code; such case clauses must terminate with a
/* Fallthrough */ comment to make it clear this is the case and
indicate that a fallthrough is intended.
This reduces the chance of bugs appearing due to unintended flow through a
switch statement
Change-Id: I70fc2d1f4fd679042397dec12fd1982976646168
Signed-off-by: Daniel Boulby <daniel.boulby@arm.com>
diff --git a/bl1/bl1_fwu.c b/bl1/bl1_fwu.c
index 25be577..28b9eb9 100644
--- a/bl1/bl1_fwu.c
+++ b/bl1/bl1_fwu.c
@@ -86,11 +86,9 @@
case FWU_SMC_UPDATE_DONE:
bl1_fwu_done((void *)x1, NULL);
- /* We should never return from bl1_fwu_done() */
- break;
default:
- assert(0);
+ assert(0); /* Unreachable */
break;
}
@@ -747,7 +745,7 @@
case IMAGE_STATE_EXECUTED:
default:
- assert(0);
+ assert(0); /* Unreachable */
break;
}