[Cython] bug report on cython-mode.el: freezes when using which-function-mode

Nathaniel Smith njs at vorpus.org
Sun Apr 24 04:15:26 EDT 2016


Hi all,

Bug report here -- trying to edit some cython code in emacs just now,
emacs was repeatedly freezing until I'd hit C-g repeatedly. Made
things literally unusable -- I couldn't type characters into the
buffer. M-x toggle-debug-on-quit gives the backtrace:

Debugger entered--Lisp error: (quit)
  syntax-ppss()
  python-nav-beginning-of-statement()
  cython-beginning-of-block()
  cython-current-defun()
  run-hook-with-args-until-success(cython-current-defun)
  which-function()
  which-func-update-1(#<window 3 on _http_parser.pyx>)
  which-func-update()
  apply(which-func-update nil)
  timer-event-handler([t 0 0 500000 t which-func-update nil idle 0])

Which strongly suggests that the problem has something to do with my
having which-function-mode enabled, and likely that something is wrong
with cython-current-defun. (which-function-mode is a minor mode built
into emacs.) Toggling which-function-mode off seems tentatively to
have fixed the problem. So there's a workaround, but really
cython-mode + which-function-mode shouldn't cause freezes :-).

Possible contributing factor: this emacs is built from a git snapshot
of master ("GNU Emacs 25.1.50.1 (x86_64-pc-linux-gnu, GTK+ Version
3.18.9) of 2016-04-22"), so it has the git versions of python-mode and
which-function-mode. (I'm just using the python.el that ships with
emacs, + elpy. But toggling elpy off didn't seem to affect the hangs.)
I don't know whether the same thing happens with released versions of
emacs.

-n

-- 
Nathaniel J. Smith -- https://vorpus.org


More information about the cython-devel mailing list