do_something();
}
+In switch statements, to fall through from one case statement to another, use
+AFS_FALLTHROUGH to mark the intentional fall through. Do not use fall through
+comments (e.g. /* fallthrough */), as some compilers do not recognize them and
+will flag the case statement with an implied fallthrough warning.
+
+Use:
+
+ switch (x) {
+ case 1:
+ do_something();
+ AFS_FALLTHROUGH;
+ case 2:
+ do_something_else();
+ AFS_FALLTHROUGH;
+ default:
+ do_some_action();
+ }
+
+Instead of using fallthrough comments:
+
+ switch (x) {
+ case 1:
+ do_something();
+ /* fallthrough */
+ case 2:
+ do_something_else();
+ /* fallthrough */
+ default:
+ do_some_action();
+ }
+
+Or not marking the fall through:
+
+ switch (x) {
+ case 1:
+ do_something();
+ case 2:
+ do_something_else();
+ default:
+ do_some_action();
+ }
Dependencies required to build OpenAFS from source
--------------------------------------------------
Inhibited warnings
------------------
-
+uss/lex.i : fallthrough : clang fallthrough, flex generated code
+comerr/et_lex.lex.l : fallthrough : clang fallthrough, flex generated code
+ pragma set to ignored where included in
+ error_table.y
afs/afs_syscall.c : old-style
: strict-proto
: all (ukernel) : syscall pointer issues
libadmin/test/client.c : all : util_RPCStatsStateGet types
ubik/ubikclient.c : strict-protos : ubik_Call
volser/vol-dump.c : format : afs_sfsize_t
-
+rxkad/ticket5.c : format-truncation : inside included file v5der.c in the
+ function _heim_time2generalizedtime, the
+ two snprintf calls raise
+ format-truncation warnings due to the
+ arithmetic on tm_year and tm_mon fields
\ No newline at end of file