From: Glenn Morris Date: Wed, 19 Jun 2013 20:27:49 +0000 (-0400) Subject: * lisp/emacs-lisp/eieio.el (defclass): Make it eval-and-compile once more. X-Git-Tag: emacs-24.3.90~173^2^2~42^2~45^2~387^2~2016^2~35 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=3db52056f15cab9be1302b05b052664791a3f171;p=emacs.git * lisp/emacs-lisp/eieio.el (defclass): Make it eval-and-compile once more. --- diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 2eba6ef68c7..1097df4a74d 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,7 @@ +2013-06-19 Glenn Morris + + * emacs-lisp/eieio.el (defclass): Make it eval-and-compile once more. + 2013-06-19 Michael Albinus * net/tramp-adb.el (tramp-adb-get-toolbox): Remove function, it is diff --git a/lisp/emacs-lisp/eieio.el b/lisp/emacs-lisp/eieio.el index 3cdf1f078bd..fc5da3198f9 100644 --- a/lisp/emacs-lisp/eieio.el +++ b/lisp/emacs-lisp/eieio.el @@ -115,7 +115,12 @@ Options in CLOS not supported in EIEIO: Due to the way class options are set up, you can add any tags you wish, and reference them using the function `class-option'." - `(eieio-defclass ',name ',superclass ',slots ',options-and-doc)) + ;; This is eval-and-compile only to silence spurious compiler warnings + ;; about functions and variables not known to be defined. + ;; When eieio-defclass code is merged here and this becomes + ;; transparent to the compiler, the eval-and-compile can be removed. + `(eval-and-compile + (eieio-defclass ',name ',superclass ',slots ',options-and-doc))) ;;; CLOS style implementation of object creators.