I found the source of the problem, some distel configuration code I shared across several machines.  Once I commented out these lines, all was well.<br><br>;; A number of the erlang-extended-mode key bindings are useful in the shell too
<br>;; (defconst distel-shell-keys<br>;;   '(("C-M-i"  erl-complete)<br>;;     ("M-?"    erl-complete)<br>;;     ("M-."     erl-find-source-under-point)<br>;;     ("M-,"     erl-find-source-unwind)
<br>;;     ("M-*"     erl-find-source-unwind)<br>;;     )<br>;;   "Additional keys to bind when in Erlang shell.")<br><br>;; (add-hook 'erlang-shell-mode-hook<br>;;       (lambda ()<br>;;         ;; add some Distel bindings to the Erlang shell
<br>;;         (dolist (spec distel-shell-keys)<br>;;          (define-key erlang-shell-mode-map (car spec) (cadr spec))))<br>;; )<br><br>When I get a chance I take a look at Lauri's suggestion, to see whether I can fix the problem more gracefully. Thanks to everyone for your help.
<br><br>