Paul Eggert writes: > Yes, inserting 'default: emacs_abort ();' switches from static to > dynamic checking, which is less reliable. Although 'default: emacs_abort > ();' is sometimes the best one can do, it's better to avoid it when > possible. > > I use 'default: eassume (false);' more often than 'default: emacs_abort > ();', though for a completely different purpose: to tell GCC something > that it's not smart enough to figure out on its own, so that GCC can do > better static checking elsewhere. Thanks, that's helpful. Based on the above, I came up with the attached patch for pdumper.c. But could you explain your last paragraph above? In my attached patch, there is one removal of 'default: eassume(false)'; how can I know if it's worth keeping or not?