Open eush77 opened 2 years ago
color-identifiers:refresh hangs on buffers with circular structures.
color-identifiers:refresh
Steps to reproduce:
Create an emacs-lisp-mode buffer.
emacs-lisp-mode
Add text containing reader syntax for a circular structure:
(-take 5 '#0=(1 . #0#))
Call color-identifiers:refresh.
The command hangs and does not return.
Backtrace:
Debugger entered--Lisp error: (quit) #f(compiled-function (sexp) #<bytecode 0x1577820639a9>)((1 . #1)) color-identifiers:elisp-declarations-in-sexp((1 . #1)) #f(compiled-function (sexp) #<bytecode 0x1577820639a9>)('(1 . #2)) color-identifiers:elisp-declarations-in-sexp('(1 . #2)) #f(compiled-function (sexp) #<bytecode 0x1577820639a9>)((-take 5 '(1 . #5))) color-identifiers:elisp-declarations-in-sexp((-take 5 '(1 . #5))) color-identifiers:elisp-get-declarations() color-identifiers:list-identifiers() color-identifiers:refresh() funcall-interactively(color-identifiers:refresh) call-interactively(color-identifiers:refresh record nil) command-execute(color-identifiers:refresh record) counsel-M-x-action("color-identifiers:refresh")
color-identifiers:refresh
hangs on buffers with circular structures.Steps to reproduce:
Create an
emacs-lisp-mode
buffer.Add text containing reader syntax for a circular structure:
Call
color-identifiers:refresh
.The command hangs and does not return.
Backtrace: