A build error happened as follow (I upgrade to latest version db198e0e59bff0c1cb28a591928377f5a0e9d158), This patch will fix the build error. Error: error ("Eager macro-expansion failure: (wrong-type-argument symbolp 'find-function-mode)") signal(error ("Eager macro-expansion failure: (wrong-type-argument symbolp 'find-function-mode)")) error("Eager macro-expansion failure: %S" (wrong-type-argument symbolp 'find-function-mode)) internal-macroexpand-for-load((custom-declare-variable 'find-function-mode-lower-precedence `(funcall #',(lambda nil "" nil)) "If non-nil, `find-function-mode' defines keys in the global map.\nThis is for compatibility with the historical behavior of\nthe old `find-function-setup-keys'." :type 'boolean :version "31.1" :group 'find-function :set (lambda (symbol value) "hello" (let ((already-on (bound-and-true-p 'find-function-mode))) (when already-on (find-function-mode -1)) (set-default symbol value) (when already-on (find-function-mode 1))))) t) eval-buffer(# nil "/tmp/emacs-dbg/lisp/emacs-lisp/find-func.el" nil t) load-with-code-conversion("/tmp/emacs-dbg/lisp/emacs-lisp/find-func.el" "/tmp/emacs-dbg/lisp/emacs-lisp/find-func.el" nil t) require(find-func) eval-buffer(# nil "/tmp/emacs-dbg/lisp/cedet/mode-local.el" nil t) load-with-code-conversion("/tmp/emacs-dbg/lisp/cedet/mode-local.el" "/tmp/emacs-dbg/lisp/cedet/mode-local.el" nil t) require(mode-local) eval-buffer(# nil "/tmp/emacs-dbg/lisp/cedet/semantic/fw.el" nil t) load-with-code-conversion("/tmp/emacs-dbg/lisp/cedet/semantic/fw.el" "/tmp/emacs-dbg/lisp/cedet/semantic/fw.el" nil t) require(semantic/fw) eval-buffer(# nil "/tmp/emacs-dbg/lisp/cedet/semantic/tag.el" nil t) load-with-code-conversion("/tmp/emacs-dbg/lisp/cedet/semantic/tag.el" "/tmp/emacs-dbg/lisp/cedet/semantic/tag.el" nil t) require(semantic/tag) eval-buffer(# nil "/tmp/emacs-dbg/lisp/cedet/semantic.el" nil t) load-with-code-conversion("/tmp/emacs-dbg/lisp/cedet/semantic.el" "/tmp/emacs-dbg/lisp/cedet/semantic.el" nil t) require(semantic) eval-buffer(# nil "/tmp/emacs-dbg/lisp/cedet/semantic/bovine/grammar.el" nil t) load-with-code-conversion("/tmp/emacs-dbg/lisp/cedet/semantic/bovine/grammar.el" "/tmp/emacs-dbg/lisp/cedet/semantic/bovine/grammar.el" nil t) load("semantic/bovine/grammar" nil t) command-line-1(("--eval" "(setq load-prefer-newer t)" "-l" "semantic/bovine/grammar" "-f" "bovine-batch-make-parser" "-o" "../../lisp/cedet/semantic/bovine/c-by.el" "c.by")) command-line() normal-top-level() $ "../../src/emacs" "-batch" "--no-site-file" "--no-site-lisp" "--eval" "(setq load-prefer-newer t)" "-l" "semantic/bovine/grammar" "-f" "bovine-batch-make-parser" "-o" "../../lisp/cedet/semantic/bovine/c-by.el" "c.by"