Groovy-Emacs-Modes / groovy-emacs-modes

A groovy major mode, grails minor mode, and a groovy inferior mode.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Error with elc file

bomgar opened this issue · comments

Error (use-package): groovy-mode/:catch: Symbol’s value as variable is void: groovy-postfix-operator-regex

I get this error when I start emacs. If I remove groovy-mode.elc it fixes the problem. Any ideas?

I'm seeing the same thing with Emacs 25.3.1 on OS X.

I'm also having the same issue and the same workaround fixes it.

GNU Emacs 25.1.1 (x86_64-pc-linux-gnu, GTK+ Version 3.22.11) of 2017-09-15, modified by Debian

Sounds like groovy--ends-with-token-p is getting called, without having groovy-expression-end-regexp loaded. I'm not sure why Emacs is using old, stale, .elc files.

I think any of these will fix it:

  • Remove the old groovy-mode.elc file.
  • Recompile groovy-mode.el M-x byte-compile-file.
  • Add (setq load-prefer-newer t) to your .emacs.d to ensure you never load stale .elc files.

Yes, I have the same issue since commit a1c45fa I think

Removing the byte-compiled file is the only solution. Recompiling it does not work.

I am pretty sure I introduced the error here:
#115

I think that putting

  (defconst groovy-postfix-operator-regex
    (rx (or "++" "--")))

outside the eval-and-compile fixes the problem.