1
0
Fork 0
mirror of git://git.code.sf.net/p/cdesktopenv/code synced 2025-03-09 15:50:02 +00:00

Fix many GCC -Wimplicit-fallthrough warnings (#243)

This commit adds '/* FALLTHROUGH */' comments to fix many
GCC warnings when compiling with -Wimplicit-fallthrough.
Additionally, the existing fallthrough comments have been
changed for consistency.
This commit is contained in:
Johnothan King 2021-03-30 13:49:20 -07:00 committed by GitHub
parent f30da49564
commit ed478ab7e3
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
73 changed files with 271 additions and 158 deletions

View file

@ -2278,6 +2278,7 @@ main(int argc, char** argv)
break; break;
default: default:
report(2, "unknown option", s, (unsigned long)0); report(2, "unknown option", s, (unsigned long)0);
/* FALLTHROUGH */
case '?': case '?':
usage(); usage();
break; break;

View file

@ -1013,7 +1013,7 @@ ppfsm __PARAM__((int op, register char* s), (op, s)) __OTORP__(int op; register
case 023: case 023:
for (c = 0; c <= 255; c++) for (c = 0; c <= 255; c++)
rp[c] = n; rp[c] = n;
/* FALLTHROUGH */
case 002: case 002:
_pp_fsmtab[(0+28)][fp->state+1] = n < 0 ? ~n : n; _pp_fsmtab[(0+28)][fp->state+1] = n < 0 ? ~n : n;
@ -2110,7 +2110,7 @@ astlicense __PARAM__((char* p, int size, char* file, char* options, int cc1, int
break; break;
case -1: case -1:
c = 12; c = 12;
/* FALLTHROUGH */
default: default:
notice.type = c; notice.type = c;
notice.item[1].data = lic[lic[c].quote].data; notice.item[1].data = lic[lic[c].quote].data;
@ -2899,7 +2899,7 @@ lex __PARAM__((register Proto_t* proto, register long flags), (proto, flags)) __
if ((n = ip - bp - 1) > 0) if ((n = ip - bp - 1) > 0)
{ {
ip = bp; ip = bp;
do switch( n) { default : memcopy( op, ip, n); op += n; ip += n; break; case 7 : * op++ = * ip++; case 6 : * op++ = * ip++; case 5 : * op++ = * ip++; case 4 : * op++ = * ip++; case 3 : * op++ = * ip++; case 2 : * op++ = * ip++; case 1 : * op++ = * ip++; case 0 : break; } while (0); do switch( n) { default : memcopy( op, ip, n); op += n; ip += n; break; case 7 : * op++ = * ip++; /* FALLTHROUGH */ case 6 : * op++ = * ip++; /* FALLTHROUGH */ case 5 : * op++ = * ip++; /* FALLTHROUGH */ case 4 : * op++ = * ip++; /* FALLTHROUGH */ case 3 : * op++ = * ip++; /* FALLTHROUGH */ case 2 : * op++ = * ip++; /* FALLTHROUGH */ case 1 : * op++ = * ip++; /* FALLTHROUGH */ case 0 : break; } while (0);
ip++; ip++;
} }
state = ~state; state = ~state;
@ -3534,11 +3534,11 @@ lex __PARAM__((register Proto_t* proto, register long flags), (proto, flags)) __
break; break;
case ((( ((( ((( ((( ((( (( 'i')-('a'-1)))<<5)+(( 'n')-('a'-1))))<<5)+(( 'c')-('a'-1))))<<5)+(( 'l')-('a'-1))))<<5)+(( 'u')-('a'-1))))<<5)+(( 'd')-('a'-1))): case ((( ((( ((( ((( ((( (( 'i')-('a'-1)))<<5)+(( 'n')-('a'-1))))<<5)+(( 'c')-('a'-1))))<<5)+(( 'l')-('a'-1))))<<5)+(( 'u')-('a'-1))))<<5)+(( 'd')-('a'-1))):
if (*ip == 'e') ip++; if (*ip == 'e') ip++;
/* FALLTHROUGH */
case ((( ((( ((( ((( ((( (( 'd')-('a'-1)))<<5)+(( 'e')-('a'-1))))<<5)+(( 'f')-('a'-1))))<<5)+(( 'i')-('a'-1))))<<5)+(( 'n')-('a'-1))))<<5)+(( 'e')-('a'-1))): case ((( ((( ((( ((( ((( (( 'd')-('a'-1)))<<5)+(( 'e')-('a'-1))))<<5)+(( 'f')-('a'-1))))<<5)+(( 'i')-('a'-1))))<<5)+(( 'n')-('a'-1))))<<5)+(( 'e')-('a'-1))):
case ((( ((( ((( ((( ((( (( 'p')-('a'-1)))<<5)+(( 'r')-('a'-1))))<<5)+(( 'a')-('a'-1))))<<5)+(( 'g')-('a'-1))))<<5)+(( 'm')-('a'-1))))<<5)+(( 'a')-('a'-1))): case ((( ((( ((( ((( ((( (( 'p')-('a'-1)))<<5)+(( 'r')-('a'-1))))<<5)+(( 'a')-('a'-1))))<<5)+(( 'g')-('a'-1))))<<5)+(( 'm')-('a'-1))))<<5)+(( 'a')-('a'-1))):
if (*ip < 'a' || *ip > 'z') break; if (*ip < 'a' || *ip > 'z') break;
/* FALLTHROUGH */
default: default:
flags |= (1L<<12)|(1L<<15); flags |= (1L<<12)|(1L<<15);
im = bp - 1; im = bp - 1;
@ -4260,7 +4260,7 @@ if !defined(va_start)\n\
call = 0; call = 0;
break; break;
} }
/* FALLTHROUGH */
case (0401+0): case (0401+0):
fsm_id: fsm_id:
@ -5161,7 +5161,7 @@ main __PARAM__((int argc, char** argv), (argc, argv)) __OTORP__(int argc; char**
continue; continue;
default: default:
proto_error(((char*)0), 2, file, "unknown option"); proto_error(((char*)0), 2, file, "unknown option");
/* FALLTHROUGH */
case '?': case '?':
b = "Usage: proto [-dfhinprstvzP+S] [-C directory] [-e package] [-l file]\n [-o \"name='value' ...\"] [-L file] file ...\n"; b = "Usage: proto [-dfhinprstvzP+S] [-C directory] [-e package] [-l file]\n [-o \"name='value' ...\"] [-L file] file ...\n";
write(2, b, sstrlen( b)); write(2, b, sstrlen( b));

View file

@ -2983,6 +2983,7 @@ int flush;
strm->adler = state->check = REVERSE(hold); strm->adler = state->check = REVERSE(hold);
INITBITS(); INITBITS();
state->mode = DICT; state->mode = DICT;
/* FALLTHROUGH */
case DICT: case DICT:
if (state->havedict == 0) { if (state->havedict == 0) {
RESTORE(); RESTORE();
@ -2990,8 +2991,10 @@ int flush;
} }
strm->adler = state->check = adler32(0L, Z_NULL, 0); strm->adler = state->check = adler32(0L, Z_NULL, 0);
state->mode = TYPE; state->mode = TYPE;
/* FALLTHROUGH */
case TYPE: case TYPE:
if (flush == Z_BLOCK) goto inf_leave; if (flush == Z_BLOCK) goto inf_leave;
/* FALLTHROUGH */
case TYPEDO: case TYPEDO:
if (state->last) { if (state->last) {
BYTEBITS(); BYTEBITS();
@ -3037,6 +3040,7 @@ int flush;
state->length)); state->length));
INITBITS(); INITBITS();
state->mode = COPY; state->mode = COPY;
/* FALLTHROUGH */
case COPY: case COPY:
copy = state->length; copy = state->length;
if (copy) { if (copy) {
@ -3072,6 +3076,7 @@ int flush;
Tracev((stderr, "inflate: table sizes ok\n")); Tracev((stderr, "inflate: table sizes ok\n"));
state->have = 0; state->have = 0;
state->mode = LENLENS; state->mode = LENLENS;
/* FALLTHROUGH */
case LENLENS: case LENLENS:
while (state->have < state->ncode) { while (state->have < state->ncode) {
NEEDBITS(3); NEEDBITS(3);
@ -3093,6 +3098,7 @@ int flush;
Tracev((stderr, "inflate: code lengths ok\n")); Tracev((stderr, "inflate: code lengths ok\n"));
state->have = 0; state->have = 0;
state->mode = CODELENS; state->mode = CODELENS;
/* FALLTHROUGH */
case CODELENS: case CODELENS:
while (state->have < state->nlen + state->ndist) { while (state->have < state->nlen + state->ndist) {
for (;;) { for (;;) {
@ -3167,6 +3173,7 @@ int flush;
} }
Tracev((stderr, "inflate: codes ok\n")); Tracev((stderr, "inflate: codes ok\n"));
state->mode = LEN; state->mode = LEN;
/* FALLTHROUGH */
case LEN: case LEN:
if (have >= 6 && left >= 258) { if (have >= 6 && left >= 258) {
RESTORE(); RESTORE();
@ -3210,6 +3217,7 @@ int flush;
} }
state->extra = (unsigned)(this.op) & 15; state->extra = (unsigned)(this.op) & 15;
state->mode = LENEXT; state->mode = LENEXT;
/* FALLTHROUGH */
case LENEXT: case LENEXT:
if (state->extra) { if (state->extra) {
NEEDBITS(state->extra); NEEDBITS(state->extra);
@ -3218,6 +3226,7 @@ int flush;
} }
Tracevv((stderr, "inflate: length %u\n", state->length)); Tracevv((stderr, "inflate: length %u\n", state->length));
state->mode = DIST; state->mode = DIST;
/* FALLTHROUGH */
case DIST: case DIST:
for (;;) { for (;;) {
this = state->distcode[BITS(state->distbits)]; this = state->distcode[BITS(state->distbits)];
@ -3243,6 +3252,7 @@ int flush;
state->offset = (unsigned)this.val; state->offset = (unsigned)this.val;
state->extra = (unsigned)(this.op) & 15; state->extra = (unsigned)(this.op) & 15;
state->mode = DISTEXT; state->mode = DISTEXT;
/* FALLTHROUGH */
case DISTEXT: case DISTEXT:
if (state->extra) { if (state->extra) {
NEEDBITS(state->extra); NEEDBITS(state->extra);
@ -3263,6 +3273,7 @@ int flush;
} }
Tracevv((stderr, "inflate: distance %u\n", state->offset)); Tracevv((stderr, "inflate: distance %u\n", state->offset));
state->mode = MATCH; state->mode = MATCH;
/* FALLTHROUGH */
case MATCH: case MATCH:
if (left == 0) goto inf_leave; if (left == 0) goto inf_leave;
copy = out - left; copy = out - left;
@ -3318,6 +3329,7 @@ int flush;
} }
#ifdef GUNZIP #ifdef GUNZIP
state->mode = LENGTH; state->mode = LENGTH;
/* FALLTHROUGH */
case LENGTH: case LENGTH:
if (state->wrap && state->flags) { if (state->wrap && state->flags) {
NEEDBITS(32); NEEDBITS(32);
@ -3331,6 +3343,7 @@ int flush;
} }
#endif #endif
state->mode = DONE; state->mode = DONE;
/* FALLTHROUGH */
case DONE: case DONE:
ret = Z_STREAM_END; ret = Z_STREAM_END;
goto inf_leave; goto inf_leave;

View file

@ -1037,6 +1037,7 @@ b_pty(int argc, char** argv, Shbltin_t* context)
continue; continue;
case 'l': case 'l':
log = opt_info.arg; log = opt_info.arg;
/* FALLTHROUGH */
case 'm': case 'm':
messages = opt_info.arg; messages = opt_info.arg;
continue; continue;

View file

@ -128,7 +128,7 @@ int b_getopts(int argc,char *argv[],Shbltin_t *context)
if(mode==0) if(mode==0)
errormsg(SH_DICT,ERROR_usage(2), "%s", opt_info.arg); errormsg(SH_DICT,ERROR_usage(2), "%s", opt_info.arg);
opt_info.option[1] = '?'; opt_info.option[1] = '?';
/* FALL THRU */ /* FALLTHROUGH */
case ':': case ':':
key[0] = opt_info.option[1]; key[0] = opt_info.option[1];
if(strmatch(opt_info.arg,"*unknown*")) if(strmatch(opt_info.arg,"*unknown*"))

View file

@ -89,6 +89,7 @@ int b_hist(int argc,char *argv[], Shbltin_t *context)
range[++indx] = flag; range[++indx] = flag;
break; break;
} }
/* FALLTHROUGH */
case ':': case ':':
errormsg(SH_DICT,2, "%s", opt_info.arg); errormsg(SH_DICT,2, "%s", opt_info.arg);
break; break;

View file

@ -798,6 +798,7 @@ static int extend(Sfio_t* sp, void* v, Sffmt_t* fe)
fe->flags |=SFFMT_ALTER; fe->flags |=SFFMT_ALTER;
} }
} }
/* FALLTHROUGH */
case 'b': case 'b':
case 's': case 's':
case 'B': case 'B':
@ -837,12 +838,14 @@ static int extend(Sfio_t* sp, void* v, Sffmt_t* fe)
case 'u': case 'u':
case 'U': case 'U':
longmax = LDBL_ULLONG_MAX; longmax = LDBL_ULLONG_MAX;
/* FALLTHROUGH */
case '.': case '.':
if(fe->size==2 && strchr("bcsqHPRQTZ",*fe->form)) if(fe->size==2 && strchr("bcsqHPRQTZ",*fe->form))
{ {
value->ll = ((unsigned char*)argp)[0]; value->ll = ((unsigned char*)argp)[0];
break; break;
} }
/* FALLTHROUGH */
case 'd': case 'd':
case 'D': case 'D':
case 'i': case 'i':
@ -1096,6 +1099,7 @@ static int fmtvecho(const char *string, struct printf *pp)
c <<= 3; c <<= 3;
c |= (*cp-'0'); c |= (*cp-'0');
} }
/* FALLTHROUGH */
default: default:
cp--; cp--;
} }

View file

@ -599,6 +599,7 @@ int sh_readline(register Shell_t *shp,char **names, volatile int fd, int flags,s
case S_ERR: case S_ERR:
cp++; cp++;
/* FALLTHROUGH */
case S_EOF: case S_EOF:
/* check for end of buffer */ /* check for end of buffer */
if(val && *val) if(val && *val)
@ -660,7 +661,7 @@ int sh_readline(register Shell_t *shp,char **names, volatile int fd, int flags,s
#endif /* SHOPT_MULTIBYTE */ #endif /* SHOPT_MULTIBYTE */
if(c!=S_DELIM) if(c!=S_DELIM)
break; break;
/* FALL THRU */ /* FALLTHROUGH */
case S_DELIM: case S_DELIM:
if(!del) if(!del)
@ -671,7 +672,7 @@ int sh_readline(register Shell_t *shp,char **names, volatile int fd, int flags,s
while((c=shp->ifstable[*cp++])==S_SPACE); while((c=shp->ifstable[*cp++])==S_SPACE);
break; break;
} }
/* FALL THRU */ /* FALLTHROUGH */
case 0: case 0:
if(val==0 || was_escape) if(val==0 || was_escape)

View file

@ -166,7 +166,7 @@ int b_test(int argc, char *argv[],Shbltin_t *context)
if(!not) if(!not)
break; break;
argv++; argv++;
/* fall through */ /* FALLTHROUGH */
case 4: case 4:
{ {
register int op = sh_lookup(cp=argv[2],shtab_testops); register int op = sh_lookup(cp=argv[2],shtab_testops);
@ -434,6 +434,7 @@ int test_unop(Shell_t *shp,register int op,register const char *arg)
return(*arg == 0); return(*arg == 0);
case 's': case 's':
sfsync(sfstdout); sfsync(sfstdout);
/* FALLTHROUGH */
case 'O': case 'O':
case 'G': case 'G':
if(*arg==0 || test_stat(arg,&statb)<0) if(*arg==0 || test_stat(arg,&statb)<0)

View file

@ -211,6 +211,7 @@ int b_kill(int argc,char *argv[],Shbltin_t *context)
goto endopts; goto endopts;
case 'L': case 'L':
usemenu = -1; usemenu = -1;
/* FALLTHROUGH */
case 'l': case 'l':
flag |= L_FLAG; flag |= L_FLAG;
break; break;

View file

@ -256,6 +256,7 @@ int b_typeset(int argc,register char *argv[],Shbltin_t *context)
tdata.argnum = (int)opt_info.num; tdata.argnum = (int)opt_info.num;
break; break;
} }
/* FALLTHROUGH */
case 'F': case 'F':
case 'X': case 'X':
if(!opt_info.arg || (tdata.argnum = opt_info.num) <0) if(!opt_info.arg || (tdata.argnum = opt_info.num) <0)
@ -1230,6 +1231,7 @@ static int unall(int argc, char **argv, register Dt_t *troot, Shell_t* shp)
break; break;
case 'n': case 'n':
nflag = NV_NOREF; nflag = NV_NOREF;
/* FALLTHROUGH */
case 'v': case 'v':
troot = shp->var_tree; troot = shp->var_tree;
break; break;

View file

@ -109,7 +109,7 @@ int b_whence(int argc,char *argv[],Shbltin_t *context)
{ {
case 'a': case 'a':
flags |= A_FLAG; flags |= A_FLAG;
/* FALL THRU */ /* FALLTHROUGH */
case 'v': case 'v':
flags |= V_FLAG; flags |= V_FLAG;
break; break;

View file

@ -190,7 +190,7 @@ static char *find_begin(char outbuff[], char *last, int endchar, int *type)
case '~': case '~':
if(*cp=='(') if(*cp=='(')
break; break;
/* fall through */ /* FALLTHROUGH */
default: default:
if(c && c==endchar) if(c && c==endchar)
return(xp); return(xp);

View file

@ -566,6 +566,7 @@ update:
case KILLCHAR : case KILLCHAR :
cur = 0; cur = 0;
oadjust = -1; oadjust = -1;
/* FALLTHROUGH */
case cntl('K') : case cntl('K') :
if(oadjust >= 0) if(oadjust >= 0)
{ {
@ -983,6 +984,7 @@ static int escape(register Emacs_t* ep,register genchar *out,int count)
if(ch=='\n') if(ch=='\n')
ed_ungetchar(ep->ed,'\n'); ed_ungetchar(ep->ed,'\n');
#endif /* SHOPT_EDPREDICT */ #endif /* SHOPT_EDPREDICT */
/* FALLTHROUGH */
/* file name expansion */ /* file name expansion */
case ESC : case ESC :
#if SHOPT_EDPREDICT #if SHOPT_EDPREDICT
@ -1001,6 +1003,7 @@ static int escape(register Emacs_t* ep,register genchar *out,int count)
} }
#endif /* SHOPT_EDPREDICT */ #endif /* SHOPT_EDPREDICT */
i = '\\'; /* filename completion */ i = '\\'; /* filename completion */
/* FALLTHROUGH */
case '*': /* filename expansion */ case '*': /* filename expansion */
case '=': /* escape = - list all matching file names */ case '=': /* escape = - list all matching file names */
ep->mark = cur; ep->mark = cur;
@ -1144,6 +1147,7 @@ static int escape(register Emacs_t* ep,register genchar *out,int count)
ed_ungetchar(ep->ed,i); ed_ungetchar(ep->ed,i);
} }
i = '_'; i = '_';
/* FALLTHROUGH */
default: default:
/* look for user defined macro definitions */ /* look for user defined macro definitions */

View file

@ -250,6 +250,7 @@ int hist_expand(const char *ln, char **xp)
if(!isdigit(*(cp+1))) if(!isdigit(*(cp+1)))
goto string_event; goto string_event;
cp++; cp++;
/* FALLTHROUGH */
case '0': /* reference by number */ case '0': /* reference by number */
case '1': case '1':
case '2': case '2':
@ -273,6 +274,7 @@ int hist_expand(const char *ln, char **xp)
case '?': case '?':
cp++; cp++;
flag |= HIST_QUESTION; flag |= HIST_QUESTION;
/* FALLTHROUGH */
string_event: string_event:
default: default:
/* read until end of string or word designator/modifier */ /* read until end of string or word designator/modifier */
@ -376,6 +378,7 @@ getline:
sfseek(wm, 0, SEEK_SET); sfseek(wm, 0, SEEK_SET);
goto skip; goto skip;
} }
/* FALLTHROUGH */
default: default:
skip2: skip2:
cp--; cp--;

View file

@ -836,6 +836,7 @@ static int cntlmode(Vi_t *vp)
case BAD: case BAD:
/*** no match ***/ /*** no match ***/
ed_ringbell(); ed_ringbell();
/* FALLTHROUGH */
default: default:
if( vp->u_column == INVALID ) if( vp->u_column == INVALID )
@ -956,6 +957,7 @@ static int cntlmode(Vi_t *vp)
if(vp->repeat_set==0) if(vp->repeat_set==0)
goto vcommand; goto vcommand;
#endif /* KSHELL */ #endif /* KSHELL */
/* FALLTHROUGH */
case 'G': /** goto command repeat **/ case 'G': /** goto command repeat **/
if(vp->repeat_set==0) if(vp->repeat_set==0)
@ -1014,11 +1016,13 @@ static int cntlmode(Vi_t *vp)
} }
refresh(vp,INPUT); refresh(vp,INPUT);
} }
/* FALLTHROUGH */
case '\n': /** send to shell **/ case '\n': /** send to shell **/
#if SHOPT_EDPREDICT #if SHOPT_EDPREDICT
if(!vp->ed->hlist) if(!vp->ed->hlist)
return(ENTER); return(ENTER);
/* FALLTHROUGH */
case '\t': /** bring choice to edit **/ case '\t': /** bring choice to edit **/
if(vp->ed->hlist) if(vp->ed->hlist)
{ {
@ -1045,6 +1049,7 @@ static int cntlmode(Vi_t *vp)
if(c=='[') if(c=='[')
continue; continue;
} }
/* FALLTHROUGH */
default: default:
ringbell: ringbell:
ed_ringbell(); ed_ringbell();
@ -1519,6 +1524,7 @@ static void getline(register Vi_t* vp,register int mode)
if( cur_virt != INVALID ) if( cur_virt != INVALID )
continue; continue;
vp->addnl = 0; vp->addnl = 0;
/* FALLTHROUGH */
case '\n': /** newline or return **/ case '\n': /** newline or return **/
if( mode != SEARCH ) if( mode != SEARCH )
@ -1552,7 +1558,7 @@ static void getline(register Vi_t* vp,register int mode)
} }
vp->ed->e_tabcount = 0; vp->ed->e_tabcount = 0;
} }
/* FALL THRU*/ /* FALLTHROUGH */
default: default:
if( mode == REPLACE ) if( mode == REPLACE )
{ {
@ -1610,7 +1616,7 @@ static int mvcursor(register Vi_t* vp,register int motion)
tcur_virt = vp->repeat-1; tcur_virt = vp->repeat-1;
if(tcur_virt <= last_virt) if(tcur_virt <= last_virt)
break; break;
/* fall through */ /* FALLTHROUGH */
case '$': /** End of line **/ case '$': /** End of line **/
tcur_virt = last_virt; tcur_virt = last_virt;
@ -1748,6 +1754,7 @@ static int mvcursor(register Vi_t* vp,register int motion)
case 'f': /** find new char forward **/ case 'f': /** find new char forward **/
bound = last_virt; bound = last_virt;
incr = 1; incr = 1;
/* FALLTHROUGH */
case 'T': /** find up to new char backward **/ case 'T': /** find up to new char backward **/
case 'F': /** find new char backward **/ case 'F': /** find new char backward **/
@ -2444,10 +2451,12 @@ addin:
if(vp->ed->e_tabcount!=1) if(vp->ed->e_tabcount!=1)
return(BAD); return(BAD);
c = '='; c = '=';
/* FALLTHROUGH */
case '*': /** do file name expansion in place **/ case '*': /** do file name expansion in place **/
case '\\': /** do file name completion in place **/ case '\\': /** do file name completion in place **/
if( cur_virt == INVALID ) if( cur_virt == INVALID )
return(BAD); return(BAD);
/* FALLTHROUGH */
case '=': /** list file name expansions **/ case '=': /** list file name expansions **/
save_v(vp); save_v(vp);
i = last_virt; i = last_virt;
@ -2528,10 +2537,12 @@ addin:
while(i = *p++); while(i = *p++);
return(APPEND); return(APPEND);
} }
/* FALLTHROUGH */
case 'A': /** append to end of line **/ case 'A': /** append to end of line **/
cur_virt = last_virt; cur_virt = last_virt;
sync_cursor(vp); sync_cursor(vp);
/* FALLTHROUGH */
case 'a': /** append **/ case 'a': /** append **/
if( fold(mode) == 'A' ) if( fold(mode) == 'A' )
@ -2551,6 +2562,7 @@ addin:
case 'I': /** insert at beginning of line **/ case 'I': /** insert at beginning of line **/
cur_virt = first_virt; cur_virt = first_virt;
sync_cursor(vp); sync_cursor(vp);
/* FALLTHROUGH */
case 'i': /** insert **/ case 'i': /** insert **/
if( fold(mode) == 'I' ) if( fold(mode) == 'I' )
@ -2627,6 +2639,7 @@ deleol:
vp->ocur_virt = INVALID; vp->ocur_virt = INVALID;
--cur_virt; --cur_virt;
} }
/* FALLTHROUGH */
case 'p': /** print **/ case 'p': /** print **/
if( p[0] == '\0' ) if( p[0] == '\0' )

View file

@ -216,13 +216,13 @@ int sh_argopts(int argc,register char *argv[], void *context)
ap->kiafile = opt_info.arg; ap->kiafile = opt_info.arg;
n = 'n'; n = 'n';
} }
/*FALLTHROUGH*/
#endif /* SHOPT_KIA */ #endif /* SHOPT_KIA */
#if SHOPT_REGRESS #if SHOPT_REGRESS
goto skip; goto skip;
case 'I': case 'I':
continue; continue;
#endif /* SHOPT_REGRESS */ #endif /* SHOPT_REGRESS */
/* FALLTHROUGH */
skip: skip:
default: default:
if(cp=strchr(optksh,n)) if(cp=strchr(optksh,n))

View file

@ -157,7 +157,7 @@ int _fcmbget(short *len)
{ {
case -1: case -1:
*len = 1; *len = 1;
/* fall through */ /* FALLTHROUGH */
case 0: case 0:
case 1: case 1:
c=fcget(); c=fcget();

View file

@ -470,7 +470,7 @@ int sh_lex(Lex_t* lp)
return(lp->token=EOFSYM); return(lp->token=EOFSYM);
n = S_NLTOK; n = S_NLTOK;
shp->inlineno--; shp->inlineno--;
/* FALL THRU */ /* FALLTHROUGH */
case S_NLTOK: case S_NLTOK:
/* check for here-document */ /* check for here-document */
if(lp->heredoc) if(lp->heredoc)
@ -491,7 +491,7 @@ int sh_lex(Lex_t* lp)
} }
lp->lex.reservok = !lp->lex.intest; lp->lex.reservok = !lp->lex.intest;
lp->lex.skipword = 0; lp->lex.skipword = 0;
/* FALL THRU */ /* FALLTHROUGH */
case S_NL: case S_NL:
/* skip over new-lines */ /* skip over new-lines */
lp->lex.last_quote = 0; lp->lex.last_quote = 0;
@ -502,6 +502,7 @@ int sh_lex(Lex_t* lp)
lp->comp_assign = 0; lp->comp_assign = 0;
return(lp->token='\n'); return(lp->token='\n');
} }
/* FALLTHROUGH */
case S_BLNK: case S_BLNK:
if(lp->lex.incase<=TEST_RE) if(lp->lex.incase<=TEST_RE)
continue; continue;
@ -686,7 +687,7 @@ int sh_lex(Lex_t* lp)
case S_NAME: case S_NAME:
if(!lp->lex.skipword) if(!lp->lex.skipword)
lp->lex.reservok *= 2; lp->lex.reservok *= 2;
/* FALL THRU */ /* FALLTHROUGH */
case S_TILDE: case S_TILDE:
if(c=='~' && mode==ST_NESTED) if(c=='~' && mode==ST_NESTED)
{ {
@ -697,6 +698,7 @@ int sh_lex(Lex_t* lp)
} }
continue; continue;
} }
/* FALLTHROUGH */
case S_RES: case S_RES:
if(!lp->lexd.dolparen) if(!lp->lexd.dolparen)
lp->lexd.first = fcseek(0)-LEN; lp->lexd.first = fcseek(0)-LEN;
@ -808,7 +810,7 @@ int sh_lex(Lex_t* lp)
wordflags |=(ARG_MAC|ARG_EXP); wordflags |=(ARG_MAC|ARG_EXP);
if(mode==ST_QUOTE) if(mode==ST_QUOTE)
ingrave = !ingrave; ingrave = !ingrave;
/* FALL THRU */ /* FALLTHROUGH */
case S_QUOTE: case S_QUOTE:
if(oldmode(lp)==ST_NONE && lp->lexd.arith) /* in ((...)) */ if(oldmode(lp)==ST_NONE && lp->lexd.arith) /* in ((...)) */
{ {
@ -914,10 +916,11 @@ int sh_lex(Lex_t* lp)
setchar(lp,c); setchar(lp,c);
continue; continue;
} }
/* FALL THRU */ /* FALLTHROUGH */
case S_ALP: case S_ALP:
if(c=='.' && endchar(lp)=='$') if(c=='.' && endchar(lp)=='$')
goto err; goto err;
/* FALLTHROUGH */
case S_SPC2: case S_SPC2:
case S_DIG: case S_DIG:
wordflags |= ARG_MAC; wordflags |= ARG_MAC;
@ -938,9 +941,11 @@ int sh_lex(Lex_t* lp)
case '!': case '!':
if(n!=S_ALP) if(n!=S_ALP)
goto dolerr; goto dolerr;
/* FALLTHROUGH */
case '#': case '#':
if(c=='#') if(c=='#')
n = S_ALP; n = S_ALP;
/* FALLTHROUGH */
case RBRACE: case RBRACE:
if(n==S_ALP) if(n==S_ALP)
{ {
@ -1150,7 +1155,7 @@ int sh_lex(Lex_t* lp)
continue; continue;
case S_EQ: case S_EQ:
assignment = lp->assignok; assignment = lp->assignok;
/* FALL THRU */ /* FALLTHROUGH */
case S_COLON: case S_COLON:
if(assignment) if(assignment)
{ {
@ -1254,7 +1259,7 @@ int sh_lex(Lex_t* lp)
} }
case S_PAT: case S_PAT:
wordflags |= ARG_EXP; wordflags |= ARG_EXP;
/* FALL THRU */ /* FALLTHROUGH */
case S_EPAT: case S_EPAT:
epat: epat:
if(fcgetc(n)==LPAREN && c!='[') if(fcgetc(n)==LPAREN && c!='[')
@ -1419,7 +1424,7 @@ breakloop:
case TEST_SEQ: case TEST_SEQ:
if(lp->lexd.warn && state[1]==0) if(lp->lexd.warn && state[1]==0)
errormsg(SH_DICT,ERROR_warn(0),e_lexobsolete3,shp->inlineno); errormsg(SH_DICT,ERROR_warn(0),e_lexobsolete3,shp->inlineno);
/* FALL THRU */ /* FALLTHROUGH */
default: default:
if(lp->lex.testop2) if(lp->lex.testop2)
{ {
@ -1434,7 +1439,7 @@ breakloop:
lp->token = TESTBINOP; lp->token = TESTBINOP;
return(lp->token); return(lp->token);
} }
/* FALLTHROUGH */
case TEST_OR: case TEST_AND: case TEST_OR: case TEST_AND:
case 0: case 0:
return(lp->token=0); return(lp->token=0);
@ -1649,7 +1654,7 @@ static int comsub(register Lex_t *lp, int endtok)
goto rbrace; goto rbrace;
if(c>0) if(c>0)
fcseek(-LEN); fcseek(-LEN);
/* fall through */ /* FALLTHROUGH */
default: default:
lp->lex.reservok = 1; lp->lex.reservok = 1;
} }

View file

@ -390,7 +390,7 @@ void sh_machere(Shell_t *shp,Sfio_t *infile, Sfio_t *outfile, char *string)
case S_EOF: case S_EOF:
if((c=fcfill()) > 0) if((c=fcfill()) > 0)
goto again; goto again;
/* FALL THRU */ /* FALLTHROUGH */
default: default:
regular: regular:
sfputc(outfile,'$'); sfputc(outfile,'$');
@ -464,6 +464,7 @@ static void copyto(register Mac_t *mp,int endch, int newquote)
case -1: /* illegal multi-byte char */ case -1: /* illegal multi-byte char */
case 0: case 0:
len = 1; len = 1;
/* FALLTHROUGH */
case 1: case 1:
n = state[*(unsigned char*)cp++]; n = state[*(unsigned char*)cp++];
break; break;
@ -643,6 +644,7 @@ static void copyto(register Mac_t *mp,int endch, int newquote)
goto pattern; goto pattern;
continue; continue;
} }
/* FALLTHROUGH */
case S_EOF: case S_EOF:
if(c) if(c)
{ {
@ -667,6 +669,7 @@ static void copyto(register Mac_t *mp,int endch, int newquote)
case S_QUOTE: case S_QUOTE:
if(mp->lit || mp->arith) if(mp->lit || mp->arith)
break; break;
/* FALLTHROUGH */
case S_LIT: case S_LIT:
if(mp->arith) if(mp->arith)
{ {
@ -729,6 +732,7 @@ static void copyto(register Mac_t *mp,int endch, int newquote)
cp = first = fcseek(0); cp = first = fcseek(0);
break; break;
} }
/* FALLTHROUGH */
case S_PAT: case S_PAT:
if(mp->pattern && !(mp->quote || mp->lit)) if(mp->pattern && !(mp->quote || mp->lit))
{ {
@ -1102,7 +1106,7 @@ retry1:
/* This code handles ${#} */ /* This code handles ${#} */
c = mode; c = mode;
mode = type = 0; mode = type = 0;
/* FALL THRU */ /* FALLTHROUGH */
case S_SPC1: case S_SPC1:
if(type==M_BRACE) if(type==M_BRACE)
{ {
@ -1129,7 +1133,7 @@ retry1:
goto retry1; goto retry1;
} }
} }
/* FALL THRU */ /* FALLTHROUGH */
case S_SPC2: case S_SPC2:
var = 0; var = 0;
*id = c; *id = c;

View file

@ -769,10 +769,12 @@ Namval_t *nv_create(const char *name, Dt_t *root, int flags, Namfun_t *dp)
sp = (char*)name+c; sp = (char*)name+c;
c = '.'; c = '.';
} }
/* FALLTHROUGH */
skip: skip:
case '+': case '+':
case '=': case '=':
*sp = 0; *sp = 0;
/* FALLTHROUGH */
case 0: case 0:
isref = 0; isref = 0;
dp->last = cp; dp->last = cp;

View file

@ -501,7 +501,7 @@ static Shnode_t *sh_cmd(Lex_t *lexp, register int sym, int flag)
{ {
case COOPSYM: /* set up a cooperating process */ case COOPSYM: /* set up a cooperating process */
type |= (FPIN|FPOU|FPCL|FCOOP); type |= (FPIN|FPOU|FPCL|FCOOP);
/* FALL THRU */ /* FALLTHROUGH */
case '&': case '&':
if(left) if(left)
{ {
@ -510,7 +510,7 @@ static Shnode_t *sh_cmd(Lex_t *lexp, register int sym, int flag)
left = left->par.partre; left = left->par.partre;
left = makeparent(lexp,TFORK|type, left); left = makeparent(lexp,TFORK|type, left);
} }
/* FALL THRU */ /* FALLTHROUGH */
case ';': case ';':
if(!left) if(!left)
sh_syntax(lexp); sh_syntax(lexp);
@ -520,6 +520,7 @@ static Shnode_t *sh_cmd(Lex_t *lexp, register int sym, int flag)
case EOFSYM: case EOFSYM:
if(sym==NL) if(sym==NL)
break; break;
/* FALLTHROUGH */
default: default:
if(sym && sym!=lexp->token) if(sym && sym!=lexp->token)
{ {
@ -1304,7 +1305,7 @@ static Shnode_t *item(Lex_t *lexp,int flag)
default: default:
if(io==0) if(io==0)
return(0); return(0);
/* FALLTHROUGH */
case ';': case ';':
if(io==0) if(io==0)
{ {
@ -1314,6 +1315,7 @@ static Shnode_t *item(Lex_t *lexp,int flag)
sh_syntax(lexp); sh_syntax(lexp);
showme = FSHOWME; showme = FSHOWME;
} }
/* FALLTHROUGH */
/* simple command */ /* simple command */
case 0: case 0:
t = (Shnode_t*)simple(lexp,flag,io); t = (Shnode_t*)simple(lexp,flag,io);

View file

@ -1218,11 +1218,12 @@ pid_t path_spawn(Shell_t *shp,const char *opath,register char **argv, char **env
#endif #endif
} }
} }
/* FALL THROUGH */
#ifdef ENAMETOOLONG #ifdef ENAMETOOLONG
/* FALLTHROUGH */
case ENAMETOOLONG: case ENAMETOOLONG:
#endif /* ENAMETOOLONG */ #endif /* ENAMETOOLONG */
#if !SHOPT_SUID_EXEC #if !SHOPT_SUID_EXEC
/* FALLTHROUGH */
case EPERM: case EPERM:
#endif #endif
shp->path_err = errno; shp->path_err = errno;
@ -1242,6 +1243,7 @@ pid_t path_spawn(Shell_t *shp,const char *opath,register char **argv, char **env
errormsg(SH_DICT,ERROR_system(ERROR_NOEXEC),"command -x: could not execute %s",path); errormsg(SH_DICT,ERROR_system(ERROR_NOEXEC),"command -x: could not execute %s",path);
return(pid); return(pid);
} }
/* FALLTHROUGH */
default: default:
errormsg(SH_DICT,ERROR_system(ERROR_NOEXEC),e_exec,path); errormsg(SH_DICT,ERROR_system(ERROR_NOEXEC),e_exec,path);
} }

View file

@ -238,6 +238,7 @@ Sfdouble_t arith_exec(Arith_t *ep)
continue; continue;
case A_ASSIGNOP1: case A_ASSIGNOP1:
node.emode |= ARITH_ASSIGNOP; node.emode |= ARITH_ASSIGNOP;
/* FALLTHROUGH */
case A_PUSHV: case A_PUSHV:
cp = roundptr(ep,cp,Sfdouble_t*); cp = roundptr(ep,cp,Sfdouble_t*);
dp = *((Sfdouble_t**)cp); dp = *((Sfdouble_t**)cp);
@ -282,6 +283,7 @@ Sfdouble_t arith_exec(Arith_t *ep)
continue; continue;
case A_ASSIGNOP: case A_ASSIGNOP:
node.nosub = lastsub; node.nosub = lastsub;
/* FALLTHROUGH */
case A_STORE: case A_STORE:
cp = roundptr(ep,cp,Sfdouble_t*); cp = roundptr(ep,cp,Sfdouble_t*);
dp = *((Sfdouble_t**)cp); dp = *((Sfdouble_t**)cp);
@ -532,7 +534,7 @@ static int gettok(register struct vars *vp)
op = A_DIG; op = A_DIG;
else else
op = A_REG; op = A_REG;
/*FALL THRU*/ /* FALLTHROUGH */
case A_DIG: case A_REG: case A_LIT: case A_DIG: case A_REG: case A_LIT:
keep: keep:
ungetchr(vp); ungetchr(vp);
@ -551,10 +553,10 @@ static int gettok(register struct vars *vp)
op -= 2; op -= 2;
break; break;
} }
/* FALL THRU */ /* FALLTHROUGH */
case A_NOT: case A_COLON: case A_NOT: case A_COLON:
c = '='; c = '=';
/* FALL THRU */ /* FALLTHROUGH */
case A_ASSIGN: case A_ASSIGN:
case A_TIMES: case A_TIMES:
case A_PLUS: case A_MINUS: case A_PLUS: case A_MINUS:
@ -608,7 +610,7 @@ again:
case A_PLUSPLUS: case A_PLUSPLUS:
c = A_LVALUE; c = A_LVALUE;
op = A_INCR|T_NOFLOAT; op = A_INCR|T_NOFLOAT;
/* FALL THRU */ /* FALLTHROUGH */
case A_TILDE: case A_TILDE:
op |= T_NOFLOAT; op |= T_NOFLOAT;
common: common:
@ -762,6 +764,7 @@ again:
case A_MINUSMINUS: case A_MINUSMINUS:
wasop=0; wasop=0;
op |= T_NOFLOAT; op |= T_NOFLOAT;
/* FALLTHROUGH */
case A_ASSIGN: case A_ASSIGN:
if(!lvalue.value) if(!lvalue.value)
ERROR(vp,e_notlvalue); ERROR(vp,e_notlvalue);
@ -827,7 +830,7 @@ again:
case A_AND: case A_OR: case A_XOR: case A_LSHIFT: case A_AND: case A_OR: case A_XOR: case A_LSHIFT:
case A_RSHIFT: case A_MOD: case A_RSHIFT: case A_MOD:
op |= T_NOFLOAT; op |= T_NOFLOAT;
/* FALL THRU */ /* FALLTHROUGH */
case A_PLUS: case A_MINUS: case A_TIMES: case A_DIV: case A_PLUS: case A_MINUS: case A_TIMES: case A_DIV:
case A_EQ: case A_NEQ: case A_LT: case A_LE: case A_EQ: case A_NEQ: case A_LT: case A_LE:
case A_GT: case A_GE: case A_POW: case A_GT: case A_GE: case A_POW:

View file

@ -1558,6 +1558,7 @@ int sh_exec(register const Shnode_t *t, int flags)
break; break;
} }
} }
/* FALLTHROUGH */
case TFORK: case TFORK:
{ {
register pid_t parent; register pid_t parent;
@ -1821,6 +1822,7 @@ int sh_exec(register const Shnode_t *t, int flags)
sh_done(shp,0); sh_done(shp,0);
} }
} }
/* FALLTHROUGH */
case TSETIO: case TSETIO:
{ {

View file

@ -1013,7 +1013,7 @@ findwrite(register Find_t* fp, const char* path, size_t len, const char* type)
else else
u = 0; u = 0;
sfputu(fp->fp, u); sfputu(fp->fp, u);
/*FALLTHROUGH...*/ /* FALLTHROUGH */
case FF_dir: case FF_dir:
d = n - fp->encode.prefix; d = n - fp->encode.prefix;
sfputl(fp->fp, d); sfputl(fp->fp, d);

View file

@ -380,6 +380,7 @@ again:
case '(': case '(':
if (!(gp->gl_flags & GLOB_AUGMENTED)) if (!(gp->gl_flags & GLOB_AUGMENTED))
continue; continue;
/* FALLTHROUGH */
case '*': case '*':
case '?': case '?':
meta = MATCH_META; meta = MATCH_META;

View file

@ -1462,13 +1462,16 @@ cklang(register Magic_t* mp, const char* file, char* buf, char* end, struct stat
case 4: case 4:
if (b < e && (*b++ & 0xc0) != 0x80) if (b < e && (*b++ & 0xc0) != 0x80)
break; break;
/* FALLTHROUGH */
case 3: case 3:
if (b < e && (*b++ & 0xc0) != 0x80) if (b < e && (*b++ & 0xc0) != 0x80)
break; break;
/* FALLTHROUGH */
case 2: case 2:
if (b < e && (*b++ & 0xc0) != 0x80) if (b < e && (*b++ & 0xc0) != 0x80)
break; break;
n = 1; n = 1;
/* FALLTHROUGH */
case 0: case 0:
if (b >= e) if (b >= e)
{ {

View file

@ -66,12 +66,19 @@ Sflong_t v; /* the value to be written */
{ switch(n) { switch(n)
{ {
case 8 : *ps++ = *s++; case 8 : *ps++ = *s++;
/* FALLTHROUGH */
case 7 : *ps++ = *s++; case 7 : *ps++ = *s++;
/* FALLTHROUGH */
case 6 : *ps++ = *s++; case 6 : *ps++ = *s++;
/* FALLTHROUGH */
case 5 : *ps++ = *s++; case 5 : *ps++ = *s++;
/* FALLTHROUGH */
case 4 : *ps++ = *s++; case 4 : *ps++ = *s++;
/* FALLTHROUGH */
case 3 : *ps++ = *s++; case 3 : *ps++ = *s++;
/* FALLTHROUGH */
case 2 : *ps++ = *s++; case 2 : *ps++ = *s++;
/* FALLTHROUGH */
case 1 : *ps++ = *s++; case 1 : *ps++ = *s++;
} }
f->next = ps; f->next = ps;

View file

@ -62,12 +62,19 @@ Sfulong_t m; /* the max value of the range */
{ switch(n) { switch(n)
{ {
case 8 : *ps++ = *s++; case 8 : *ps++ = *s++;
/* FALLTHROUGH */
case 7 : *ps++ = *s++; case 7 : *ps++ = *s++;
/* FALLTHROUGH */
case 6 : *ps++ = *s++; case 6 : *ps++ = *s++;
/* FALLTHROUGH */
case 5 : *ps++ = *s++; case 5 : *ps++ = *s++;
/* FALLTHROUGH */
case 4 : *ps++ = *s++; case 4 : *ps++ = *s++;
/* FALLTHROUGH */
case 3 : *ps++ = *s++; case 3 : *ps++ = *s++;
/* FALLTHROUGH */
case 2 : *ps++ = *s++; case 2 : *ps++ = *s++;
/* FALLTHROUGH */
case 1 : *ps++ = *s++; case 1 : *ps++ = *s++;
} }
f->next = ps; f->next = ps;

View file

@ -59,12 +59,19 @@ Sfulong_t v; /* the unsigned value to be written */
{ switch(n) { switch(n)
{ {
case 8 : *ps++ = *s++; case 8 : *ps++ = *s++;
/* FALLTHROUGH */
case 7 : *ps++ = *s++; case 7 : *ps++ = *s++;
/* FALLTHROUGH */
case 6 : *ps++ = *s++; case 6 : *ps++ = *s++;
/* FALLTHROUGH */
case 5 : *ps++ = *s++; case 5 : *ps++ = *s++;
/* FALLTHROUGH */
case 4 : *ps++ = *s++; case 4 : *ps++ = *s++;
/* FALLTHROUGH */
case 3 : *ps++ = *s++; case 3 : *ps++ = *s++;
/* FALLTHROUGH */
case 2 : *ps++ = *s++; case 2 : *ps++ = *s++;
/* FALLTHROUGH */
case 1 : *ps++ = *s++; case 1 : *ps++ = *s++;
} }
f->next = ps; f->next = ps;

View file

@ -1133,22 +1133,34 @@ typedef struct _sftab_
switch(n) \ switch(n) \
{ default : memcpy((Void_t*)to,(Void_t*)fr,n); to += n; fr += n; break; \ { default : memcpy((Void_t*)to,(Void_t*)fr,n); to += n; fr += n; break; \
case 7 : *to++ = *fr++; \ case 7 : *to++ = *fr++; \
/* FALLTHROUGH */ \
case 6 : *to++ = *fr++; \ case 6 : *to++ = *fr++; \
/* FALLTHROUGH */ \
case 5 : *to++ = *fr++; \ case 5 : *to++ = *fr++; \
/* FALLTHROUGH */ \
case 4 : *to++ = *fr++; \ case 4 : *to++ = *fr++; \
/* FALLTHROUGH */ \
case 3 : *to++ = *fr++; \ case 3 : *to++ = *fr++; \
/* FALLTHROUGH */ \
case 2 : *to++ = *fr++; \ case 2 : *to++ = *fr++; \
/* FALLTHROUGH */ \
case 1 : *to++ = *fr++; \ case 1 : *to++ = *fr++; \
} }
#define MEMSET(s,c,n) \ #define MEMSET(s,c,n) \
switch(n) \ switch(n) \
{ default : memset((Void_t*)s,(int)c,n); s += n; break; \ { default : memset((Void_t*)s,(int)c,n); s += n; break; \
case 7 : *s++ = c; \ case 7 : *s++ = c; \
/* FALLTHROUGH */ \
case 6 : *s++ = c; \ case 6 : *s++ = c; \
/* FALLTHROUGH */ \
case 5 : *s++ = c; \ case 5 : *s++ = c; \
/* FALLTHROUGH */ \
case 4 : *s++ = c; \ case 4 : *s++ = c; \
/* FALLTHROUGH */ \
case 3 : *s++ = c; \ case 3 : *s++ = c; \
/* FALLTHROUGH */ \
case 2 : *s++ = c; \ case 2 : *s++ = c; \
/* FALLTHROUGH */ \
case 1 : *s++ = c; \ case 1 : *s++ = c; \
} }

View file

@ -537,7 +537,7 @@ reg int local; /* a local call */
break; break;
} }
/* fall thru */ /* FALLTHROUGH */
case SF_READ: /* switching to SF_WRITE */ case SF_READ: /* switching to SF_WRITE */
if(wanted != SF_WRITE) if(wanted != SF_WRITE)

View file

@ -78,7 +78,7 @@ Sfio_t* f;
/* 2-way pipe, must clear read buffer */ /* 2-way pipe, must clear read buffer */
(void)_sfmode(f,SF_READ,1); (void)_sfmode(f,SF_READ,1);
/* fall through */ /* FALLTHROUGH */
case SF_READ: case SF_READ:
if(f->extent >= 0 && f->endb > f->next) if(f->extent >= 0 && f->endb > f->next)
{ f->here -= f->endb-f->next; { f->here -= f->endb-f->next;

View file

@ -303,7 +303,7 @@ Sfdisc_t* disc;
case SF_EDISC : case SF_EDISC :
if(!local && !(f->flags&SF_STRING)) if(!local && !(f->flags&SF_STRING))
goto do_continue; goto do_continue;
/* else fall thru */ /* FALLTHROUGH */
case SF_ESTACK : case SF_ESTACK :
SFMTXRETURN(f, -1); SFMTXRETURN(f, -1);
} }

View file

@ -178,7 +178,8 @@ int type; /* >0: scanf, =0: printf, -1: internal */
} }
else if(*form != '*') else if(*form != '*')
goto loop_flags; goto loop_flags;
else form += 1; /* drop thru below */ else form += 1;
/* FALLTHROUGH */
case '*' : case '*' :
form = sffmtint(form,&n); form = sffmtint(form,&n);

View file

@ -367,8 +367,9 @@ loop_fmt :
} }
else if(*form != '*') else if(*form != '*')
goto loop_flags; goto loop_flags;
do_star: do_star: /* for '*' */
form += 1; /* fall thru for '*' */ form += 1;
/* FALLTHROUGH */
case '*' : case '*' :
form = (*_Sffmtintf)(form,&n); form = (*_Sffmtintf)(form,&n);
if(*form == '$') if(*form == '$')
@ -674,6 +675,7 @@ loop_fmt :
case 'S': case 'S':
flags = (flags & ~(SFFMT_TYPES|SFFMT_LDOUBLE)) | SFFMT_LONG; flags = (flags & ~(SFFMT_TYPES|SFFMT_LDOUBLE)) | SFFMT_LONG;
/* FALLTHROUGH */
case 's': case 's':
#if _has_multibyte && defined(mbwidth) #if _has_multibyte && defined(mbwidth)
wc = (flags & SFFMT_LDOUBLE) && mbwide(); wc = (flags & SFFMT_LDOUBLE) && mbwide();
@ -833,6 +835,7 @@ loop_fmt :
case 'C': case 'C':
flags = (flags & ~(SFFMT_TYPES|SFFMT_LDOUBLE)) | SFFMT_LONG; flags = (flags & ~(SFFMT_TYPES|SFFMT_LDOUBLE)) | SFFMT_LONG;
/* FALLTHROUGH */
case 'c': case 'c':
#if _has_multibyte && defined(mbwidth) #if _has_multibyte && defined(mbwidth)
wc = (flags & SFFMT_LDOUBLE) && mbwide(); wc = (flags & SFFMT_LDOUBLE) && mbwide();
@ -959,6 +962,7 @@ loop_fmt :
goto int_arg; goto int_arg;
case 'X': case 'X':
ssp = "0123456789ABCDEF"; ssp = "0123456789ABCDEF";
/* FALLTHROUGH */
case 'x': case 'x':
base = 16; n_s = 15; n = 4; base = 16; n_s = 15; n = 4;
flags &= ~(SFFMT_SIGN|SFFMT_BLANK); flags &= ~(SFFMT_SIGN|SFFMT_BLANK);
@ -974,6 +978,7 @@ loop_fmt :
goto d_format; goto d_format;
case 'u': case 'u':
flags &= ~(SFFMT_SIGN|SFFMT_BLANK); flags &= ~(SFFMT_SIGN|SFFMT_BLANK);
/* FALLTHROUGH */
case 'd': case 'd':
d_format: d_format:
#if _PACKAGE_ast #if _PACKAGE_ast

View file

@ -238,7 +238,7 @@ Sfdisc_t* disc;
case SF_EDISC : case SF_EDISC :
if(!local && !(f->flags&SF_STRING)) if(!local && !(f->flags&SF_STRING))
goto do_continue; goto do_continue;
/* else fall thru */ /* FALLTHROUGH */
case SF_ESTACK : case SF_ESTACK :
SFMTXRETURN(f, (ssize_t)(-1)); SFMTXRETURN(f, (ssize_t)(-1));
} }

View file

@ -63,9 +63,13 @@ wc2utf8(register char* s, register uint32_t w)
switch (ops[i].shift) switch (ops[i].shift)
{ {
case 30: *s++ = 0x80 | ((w >> 24) & 0x3f); case 30: *s++ = 0x80 | ((w >> 24) & 0x3f);
/* FALLTHROUGH */
case 24: *s++ = 0x80 | ((w >> 18) & 0x3f); case 24: *s++ = 0x80 | ((w >> 18) & 0x3f);
/* FALLTHROUGH */
case 18: *s++ = 0x80 | ((w >> 12) & 0x3f); case 18: *s++ = 0x80 | ((w >> 12) & 0x3f);
/* FALLTHROUGH */
case 12: *s++ = 0x80 | ((w >> 6) & 0x3f); case 12: *s++ = 0x80 | ((w >> 6) & 0x3f);
/* FALLTHROUGH */
case 6: *s++ = 0x80 | (w & 0x3f); case 6: *s++ = 0x80 | (w & 0x3f);
} }
return s - b; return s - b;

View file

@ -384,6 +384,7 @@ scan(register const char* s, char** e, const char* format, char** f, Time_t t, l
u = 0; u = 0;
if (d == 'q') if (d == 'q')
continue; continue;
/* FALLTHROUGH */
case 'z': case 'z':
if ((zp = tmzone(s, &u, u, &m))) if ((zp = tmzone(s, &u, u, &m)))
{ {