Hi I got a code base with the following indentation style for break within switch/case:
---------------%<--------------- #include <string.h> int main(void) { const char *c = "XX"; int out = 0; switch (c[0]) { case 'X': if (strcmp(c, "XX")) out = 1; break; /* ok */ case 'Y': if (strcmp(c, "XY") && !strcmp(c, "YY") ) out = 1; break; /* not ok ? */ } } ---------------%<--------------- With $ gcc --version gcc (GCC) 7.1.1 20170622 (Red Hat 7.1.1-3) I get the following with -Wall or -Wmisleading-indentation on: > d.c: In function 'main': > d.c:10:13: warning: this 'if' clause does not guard... > [-Wmisleading-indentation] > case 'Y': if (strcmp(c, "XY") && > ^~ > d.c:12:14: note: ...this statement, but the latter is misleadingly indented > as if it were guarded by the 'if' > ) out = 1; break; > ^~~~~ > d.c:6:7: warning: variable 'out' set but not used [-Wunused-but-set-variable] > int out = 0; > ^~~ Droping/aligning the second break on its own line silences the warning, but I see no reason to do so. Pls. advise! Stefan