Erro Lisp: (erro “aninhamento Lisp excede` max-lisp-eval-depth '”) ao usar funções cl-

2

Recentemente, mudei computadores e atualizei para o Emacs 24.3 (de 24.2) ontem. Desde então, tenho recebido o que é essencialmente um erro de estouro de pilha:

Debugger entered--Lisp error: (error "Lisp nesting exceeds `max-lisp-eval-depth'")
  position(...)
  apply(position ...)
  position(...)
  apply(position ...)

  position(nil (#<buffer ssa.org> #<buffer  *Minibuf-1*> #<buffer  *Minibuf-0*> #<buffer  *code-conversion-work*> #<buffer  *Echo Area 0*> #<buffer  *Echo Area 1*> #<buffer  *doc-view conversion output*> #<buffer  *autoload*> #<buffer  *canonical address*> #<buffer  *extract address components*> #<buffer *Messages*>) :if #[(buf) "rq\210 \203\n    =\2051\306!\f\232\2051\307\310\311
!\"\312 \313\314\315#,)\207" [buf mode major-mode default-directory topdir name expand-file-name format "^%s\\(?:<[0-9]+>\\)?$" regexp-quote buffer-name nil t string-match start string regexp inhibit-changing-match-data] 4])
  apply(position nil (#<buffer ssa.org> #<buffer  *Minibuf-1*> #<buffer  *Minibuf-0*> #<buffer  *code-conversion-work*> #<buffer  *Echo Area 0*> #<buffer  *Echo Area 1*> #<buffer  *doc-view conversion output*> #<buffer  *autoload*> #<buffer  *canonical address*> #<buffer  *extract address components*> #<buffer *Messages*>) (:if #[(buf) "rq\210  \203\n    =\2051\306!\f\232\2051\307\310\311
!\"\312 \313\314\315#,)\207" [buf mode major-mode default-directory topdir name expand-file-name format "^%s\\(?:<[0-9]+>\\)?$" regexp-quote buffer-name nil t string-match start string regexp inhibit-changing-match-data] 4]))

  ...
  ...
  ...

  position(...)
  apply(position ...)
  position(...)
  apply(position ...)
  cl-position(...)
  apply(cl-position ...)
  cl-find(...)
  apply(cl-find ...)
  cl-find-if(...)
  magit-mode-get-buffer("*magit: %t*" magit-status-mode nil t)
  magit-mode-get-buffer-create("*magit: %t*" magit-status-mode)
  magit-mode-display-buffer("*magit: %t*" magit-status-mode pop-to-buffer)
  magit-status("/Users/sean/Dropbox/smp/")
  call-interactively(magit-status)
  (lambda nil (interactive) (call-interactively (quote magit-status)))()
  call-interactively((lambda nil (interactive) (call-interactively (quote magit-status))) nil nil)

Eu suspeito que este é um problema com o clpacote na 24.3, como eu vi recentemente em um pacote diferente (embora não me lembre qual).

  • Esse é um problema comum ao atualizar?
  • O que posso fazer para resolver isso?

O arquivo de log completo (tipo enorme) está disponível aqui para quem deseja inspecioná-lo, mas espero que tenha descrito os detalhes necessários neste post.

Sean Allred
fonte

Respostas:

2

Isso parece um problema com uma definição circular.

Eu acho que o problema é que você compilou o magit com a versão anterior do emacs; você deve recompilar o magit com o novo emacs e o problema desaparecerá.

sds
fonte
Excluir os dois cl-libe magit, fechar o emacs, reabrir e reinstalar magit(apenas) fez o truque. Obrigado!
Sean Allred 26/02
4

Suponho que este seja um problema cl-lib. Se você já instalou o cl-lib via package.el, desinstale o cl-lib e tente novamente. Pacotes do Emacs 24.3 cl-lib.el. O pacote cl-lib é para o Emacs mais antigo (<24.3).

syohex
fonte
11
Eu só queria agradecer por esta resposta - ainda era muito útil para resolver :) Eu só aceitei a outra resposta porque ela dava um porquê (e porque eu nunca pensaria que precisava reinstalar magitisso). Lamento ter apenas uma votação a dar!
Sean Allred 26/02