Am I missing something?
Visit an empty buffer in a fresh --no-init emacs. Set debug-on-error
to true and type a control -f. An `end of buffer error will appear in the
echo area but no backtrace. Type control-x control-x and a `No mark set in
this buffer' error message appears and causes a backtrace.
Alternatively in the same circumstances, evaluate
(progn (setq aa 1) (forward-char 1) (setq bb 2))
The variable aa now has the value 1 and bb is undefined.
This seems to be true in emacs 21 on both Solaris and MacOs X.
Forward-char wasn't meant to produce an untrapped error was it?