aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMartin Stjernholm2002-11-16 01:37:44 +0000
committerMartin Stjernholm2002-11-16 01:37:44 +0000
commit6b5bbb986bb93e37356ddd408dd80593246e6c47 (patch)
tree8c4dc068b9d95dbc3ada9f522925fd39520bf620
parent2c26ee517f04bf37931718192e9a631c81a7cf8b (diff)
downloademacs-6b5bbb986bb93e37356ddd408dd80593246e6c47.tar.gz
emacs-6b5bbb986bb93e37356ddd408dd80593246e6c47.zip
(cc-bytecomp-defun): Fixed bug that caused existing function
definitions to be overridden by phonies when the bytecomp environment is restored.
-rw-r--r--lisp/ChangeLog6
-rw-r--r--lisp/progmodes/cc-bytecomp.el21
2 files changed, 15 insertions, 12 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index 324f92526f1..5e37056b161 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,9 @@
12002-11-16 Martin Stjernholm <bug-cc-mode@gnu.org>
2
3 * progmodes/cc-bytecomp.el (cc-bytecomp-defun): Fixed bug that
4 caused existing function definitions to be overridden by
5 phonies when the bytecomp environment is restored.
6
12002-11-15 Nick Roberts <nick@nick.uklinux.net> 72002-11-15 Nick Roberts <nick@nick.uklinux.net>
2 8
3 * toolbar/gud-break.pbm, toolbar/gud-cont.pbm, toolbar/gud-display.pbm, 9 * toolbar/gud-break.pbm, toolbar/gud-cont.pbm, toolbar/gud-display.pbm,
diff --git a/lisp/progmodes/cc-bytecomp.el b/lisp/progmodes/cc-bytecomp.el
index 6df60efef70..b0e33a97491 100644
--- a/lisp/progmodes/cc-bytecomp.el
+++ b/lisp/progmodes/cc-bytecomp.el
@@ -225,18 +225,15 @@ to silence the byte compiler. Don't use within `eval-when-compile'."
225 "Bind the symbol as a function during compilation of the file, 225 "Bind the symbol as a function during compilation of the file,
226to silence the byte compiler. Don't use within `eval-when-compile'." 226to silence the byte compiler. Don't use within `eval-when-compile'."
227 `(eval-when-compile 227 `(eval-when-compile
228 (if (not (assq ',fun cc-bytecomp-original-functions)) 228 (if (fboundp ',fun)
229 (setq cc-bytecomp-original-functions 229 nil
230 (cons (list ',fun 230 (if (not (assq ',fun cc-bytecomp-original-functions))
231 nil 231 (setq cc-bytecomp-original-functions
232 (if (fboundp ',fun) 232 (cons (list ',fun nil 'unbound)
233 (symbol-function ',fun) 233 cc-bytecomp-original-functions)))
234 'unbound)) 234 (if (and (cc-bytecomp-is-compiling)
235 cc-bytecomp-original-functions))) 235 (= cc-bytecomp-load-depth 0))
236 (if (and (cc-bytecomp-is-compiling) 236 (fset ',fun 'cc-bytecomp-ignore)))))
237 (= cc-bytecomp-load-depth 0)
238 (not (fboundp ',fun)))
239 (fset ',fun 'cc-bytecomp-ignore))))
240 237
241(put 'cc-bytecomp-defmacro 'lisp-indent-function 'defun) 238(put 'cc-bytecomp-defmacro 'lisp-indent-function 'defun)
242(defmacro cc-bytecomp-defmacro (fun &rest temp-macro) 239(defmacro cc-bytecomp-defmacro (fun &rest temp-macro)