wasamasa/zone-nyan

Debug entered--Lisp error: (void-variable progn)

Closed this issue · 2 comments

I get the following error the first time I try to run zone-nyan-preview from my scratch buffer (it only happens the first time, if I try a second time it works fine):

Debugger entered--Lisp error: (void-variable progn)
  #f(compiled-function () #<bytecode 0x31e5c75>)()
  eval-after-load-helper("/usr/share/emacs/26.1/lisp/play/zone.elc")
  run-hook-with-args(eval-after-load-helper "/usr/share/emacs/26.1/lisp/play/zone.elc")
  do-after-load-evaluation("/usr/share/emacs/26.1/lisp/play/zone.elc")
  zone()
  zone-nyan-preview()
  eval((zone-nyan-preview) nil)
  elisp--eval-last-sexp(nil)
  #f(compiled-function (eval-last-sexp-arg-internal) "Evaluate sexp before point; print value in the echo area.\nInteractively, with a non `-' prefix argument, print output into\ncurrent buffer.\n\nNormally, this function truncates long output according to the\nvalue of the variables `eval-expression-print-length' and\n`eval-expression-print-level'.  With a prefix argument of zero,\nhowever, there is no such truncation.  Such a prefix argument\nalso causes integers to be printed in several additional formats\n(octal, hexadecimal, and character when the prefix argument is\n-1 or the integer is `eval-expression-print-maximum-character' or\nless).\n\nIf `eval-expression-debug-on-error' is non-nil, which is the default,\nthis command arranges for all errors to enter the debugger." (interactive "P") #<bytecode 0x1f8cdb>)(nil)
  #f(compiled-function (&rest _it) #<bytecode 0x438a8d5>)()
  eval-sexp-fu-flash-doit-simple(#f(compiled-function (&rest _it) #<bytecode 0x438a8d5>) #f(compiled-function (&rest args2) #<bytecode 0x15728d1>) #f(compiled-function (&rest args2) #<bytecode 0x1577c01>))
  eval-sexp-fu-flash-doit(#f(compiled-function (&rest _it) #<bytecode 0x438a8d5>) #f(compiled-function (&rest args2) #<bytecode 0x15728d1>) #f(compiled-function (&rest args2) #<bytecode 0x1577c01>))
  esf-flash-doit(#f(compiled-function (&rest _it) #<bytecode 0x438a8d5>) #f(compiled-function (&rest args2) #<bytecode 0x15728d1>) #f(compiled-function (&rest args2) #<bytecode 0x1577c01>) #f(compiled-function (&rest args2) #<bytecode 0x1577bb1>))
  ad-Advice-eval-last-sexp(#f(compiled-function (eval-last-sexp-arg-internal) "Evaluate sexp before point; print value in the echo area.\nInteractively, with a non `-' prefix argument, print output into\ncurrent buffer.\n\nNormally, this function truncates long output according to the\nvalue of the variables `eval-expression-print-length' and\n`eval-expression-print-level'.  With a prefix argument of zero,\nhowever, there is no such truncation.  Such a prefix argument\nalso causes integers to be printed in several additional formats\n(octal, hexadecimal, and character when the prefix argument is\n-1 or the integer is `eval-expression-print-maximum-character' or\nless).\n\nIf `eval-expression-debug-on-error' is non-nil, which is the default,\nthis command arranges for all errors to enter the debugger." (interactive "P") #<bytecode 0x1f8cdb>) nil)
  apply(ad-Advice-eval-last-sexp #f(compiled-function (eval-last-sexp-arg-internal) "Evaluate sexp before point; print value in the echo area.\nInteractively, with a non `-' prefix argument, print output into\ncurrent buffer.\n\nNormally, this function truncates long output according to the\nvalue of the variables `eval-expression-print-length' and\n`eval-expression-print-level'.  With a prefix argument of zero,\nhowever, there is no such truncation.  Such a prefix argument\nalso causes integers to be printed in several additional formats\n(octal, hexadecimal, and character when the prefix argument is\n-1 or the integer is `eval-expression-print-maximum-character' or\nless).\n\nIf `eval-expression-debug-on-error' is non-nil, which is the default,\nthis command arranges for all errors to enter the debugger." (interactive "P") #<bytecode 0x1f8cdb>) nil)
  eval-last-sexp(nil)
  funcall-interactively(eval-last-sexp nil)
  call-interactively(eval-last-sexp)
  (save-excursion (let ((max 10)) (while (and (> max 0) (sp-point-in-string-or-comment)) (setq max (1- max)) (sp-up-sexp))) (sp-up-sexp arg) (call-interactively 'eval-last-sexp))
  (let ((evil-move-beyond-eol t)) (save-excursion (let ((max 10)) (while (and (> max 0) (sp-point-in-string-or-comment)) (setq max (1- max)) (sp-up-sexp))) (sp-up-sexp arg) (call-interactively 'eval-last-sexp)))
  spacemacs/eval-current-form-sp(1)
  funcall-interactively(spacemacs/eval-current-form-sp 1)
  call-interactively(spacemacs/eval-current-form-sp nil nil)
  command-execute(spacemacs/eval-current-form-sp)

I'm loading zone-nyan with use-package and I also see this in my *Warnings* buffer:

Error (use-package): window-purpose/:config: Symbol’s value as variable is void: progn

Let me guess, the error doesn't happen when not using Spacemacs? If yes, look into why window-purpose is throwing that error. It might be something as silly as using a bare progn keyword in the relevant use-package block.

Closing because this is most certainly something not happening with emacs -Q.