fall through

( v.)

   (n. fallthrough, var.: fall-through)

   1.  To  exit a loop by exhaustion, i.e., by having fulfilled its exit
   condition  rather  than via a break or exception condition that exits
   from  the  middle  of it. This usage appears to be really old, dating
   from the 1940s and 1950s.

   2.  To  fail a test that would have passed control to a subroutine or
   some other distant portion of code.

   3. In C, `fall-through' occurs when the flow of execution in a switch
   statement  reaches  a case label other than by jumping there from the
   switch  header,  passing  a  point where one would normally expect to
   find a break. A trivial example:

   switch (color)
   {
   case GREEN:
      do_green();
      break;
   case PINK:
      do_pink();
      /* FALL THROUGH */
   case RED:
      do_red();
      break;
   default:
      do_blue();
      break;
   }

   The variant spelling /* FALL THRU */ is also common.

   The  effect  of  the above code is to do_green() when color is GREEN,
   do_red()  when  color is RED, do_blue() on any other color other than
   PINK,  and  (and  this  is  the  important  part)  do_pink() and then
   do_red()  when color is PINK. Fall-through is {considered harmful} by
   some,  though  there  are  contexts  (such  as  the  coding  of state
   machines)  in  which  it  is natural; it is generally considered good
   practice to include a comment highlighting the fall-through where one
   would normally expect a break. See also {Duff's device}.

[glossary]
[Reference(s) to this entry by made by: {Duff's device}]