I believe the 'if we get something weird' comment block relates to the
default branch of the switch, _not_ the fall through from the case above
(extended message received that we end up rejecting). Ordering the
comments like you did just for GCC's sake is misleading.
The comment block should perhaps be moved after the default label. And
it would be nice if the reason for the fall through could be retained in
the comment.