Unbreak compilation of derived cc-mode modes
* lisp/progmodes/cc-defs.el (c-lang-defconst-eval-immediately): Use `macroexpand-all' instead of `cl-macroexpand-all'. * lisp/progmodes/cc-langs.el: Change comments from `cl-macroexpand-all' to `macroexpand-all'
This commit is contained in:
parent
ba1ed52f0c
commit
fb32e9f8f3
3 changed files with 13 additions and 9 deletions
|
@ -1,3 +1,11 @@
|
|||
2014-07-14 Daniel Colascione <dancol@dancol.org>
|
||||
|
||||
* progmodes/cc-langs.el: Change comments from `cl-macroexpand-all'
|
||||
to `macroexpand-all'
|
||||
|
||||
* progmodes/cc-defs.el (c-lang-defconst-eval-immediately):
|
||||
Use `macroexpand-all' instead of `cl-macroexpand-all'.
|
||||
|
||||
2014-07-12 Paul Eggert <eggert@cs.ucla.edu>
|
||||
|
||||
Fix bug: C-x v v discarded existing log message (Bug#17884).
|
||||
|
|
|
@ -1836,12 +1836,9 @@ system."
|
|||
immediately, i.e. at the same time as the `c-lang-defconst' form
|
||||
itself is evaluated."
|
||||
;; Evaluate at macro expansion time, i.e. in the
|
||||
;; `cl-macroexpand-all' inside `c-lang-defconst'.
|
||||
;; `macroexpand-all' inside `c-lang-defconst'.
|
||||
(eval form))
|
||||
|
||||
;; Only used at compile time - suppress "might not be defined at runtime".
|
||||
(declare-function cl-macroexpand-all "cl" (form &optional env))
|
||||
|
||||
(defmacro c-lang-defconst (name &rest args)
|
||||
"Set the language specific values of the language constant NAME.
|
||||
The second argument can optionally be a docstring. The rest of the
|
||||
|
@ -1883,7 +1880,7 @@ constant. A file is identified by its base name."
|
|||
|
||||
(let* ((sym (intern (symbol-name name) c-lang-constants))
|
||||
;; Make `c-lang-const' expand to a straightforward call to
|
||||
;; `c-get-lang-constant' in `cl-macroexpand-all' below.
|
||||
;; `c-get-lang-constant' in `macroexpand-all' below.
|
||||
;;
|
||||
;; (The default behavior, i.e. to expand to a call inside
|
||||
;; `eval-when-compile' should be equivalent, since that macro
|
||||
|
@ -1946,7 +1943,7 @@ constant. A file is identified by its base name."
|
|||
;; reason, but we also use this expansion handle
|
||||
;; `c-lang-defconst-eval-immediately' and to register
|
||||
;; dependencies on the `c-lang-const's in VAL.)
|
||||
(setq val (cl-macroexpand-all val))
|
||||
(setq val (macroexpand-all val))
|
||||
|
||||
(setq bindings (cons (cons assigned-mode val) bindings)
|
||||
args (cdr args))))
|
||||
|
|
|
@ -213,7 +213,6 @@ the evaluated constant value at compile time."
|
|||
;; These are defined in cl as aliases to the cl- versions.
|
||||
;(declare-function delete-duplicates "cl-seq" (cl-seq &rest cl-keys) t)
|
||||
;(declare-function mapcan "cl-extra" (cl-func cl-seq &rest cl-rest) t)
|
||||
;(declare-function cl-macroexpand-all "cl" (form &optional env))
|
||||
|
||||
(eval-and-compile
|
||||
;; Some helper functions used when building the language constants.
|
||||
|
@ -3185,7 +3184,7 @@ accomplish that conveniently."
|
|||
`(lambda ()
|
||||
|
||||
;; This let sets up the context for `c-mode-var' and similar
|
||||
;; that could be in the result from `cl-macroexpand-all'.
|
||||
;; that could be in the result from `macroexpand-all'.
|
||||
(let ((c-buffer-is-cc-mode ',mode)
|
||||
current-var source-eval)
|
||||
(c-make-emacs-variables-local)
|
||||
|
@ -3195,7 +3194,7 @@ accomplish that conveniently."
|
|||
(setq ,@(let ((c-buffer-is-cc-mode mode)
|
||||
(c-lang-const-expansion 'immediate))
|
||||
;; `c-lang-const' will expand to the evaluated
|
||||
;; constant immediately in `cl-macroexpand-all'
|
||||
;; constant immediately in `macroexpand-all'
|
||||
;; below.
|
||||
(cl-mapcan
|
||||
(lambda (init)
|
||||
|
|
Loading…
Add table
Reference in a new issue