>>> I would agree with your assessment, but the other part that I >>> cannot figure, >>> is why have a switch statement? It does nothing except fall >>> straight through >>> to the default case. >> >>It doesn't for the numbers 0..9. > > Hang on, there is no mention of code between the switch, and the default, > so > I imagine that is all empty. Hence the switch statement will generate a > label to the default, which will always be executed, and in my mind the > code > generated by the switch statement should be optimised out by the compiler > for this reason. Hence the code becomes an if ... else ... construct only, > which as Wouter noted handles 0..9. There is no code to handle cases > outside > these numbers at all. > > what have I missed ? The the single statement that follows the 'switch( )' starts with 'default:' and ends with the semicolon that terminates the else clause of the if. > Bob said >>And, you are also right about the mailroom reassignment. > > You mean the originator of the code did get re-assigned, or did you wish > he > had been :)) Luckily, this is only an example of such evil, and was never actually perpetrated on anyone. Bob Ammerman RAm Systems -- http://www.piclist.com PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist