]> git.eshelyaron.com Git - emacs.git/commitdiff
(Fdefine_function, Fdefalias): Handle advice as in Ffset.
authorRichard M. Stallman <rms@gnu.org>
Thu, 4 Aug 1994 22:57:13 +0000 (22:57 +0000)
committerRichard M. Stallman <rms@gnu.org>
Thu, 4 Aug 1994 22:57:13 +0000 (22:57 +0000)
(Qad_advice_info): Lisp and C names renamed from Qadvice_info.
(Qad_activate): C name renamed from Qactivate_advice.

src/data.c

index e00ab4dc5f8a7b4686ac7421349f6277f3ee8fc4..b0959a92e55c70104fa0e5aa3289ecec1722e3b1 100644 (file)
@@ -74,7 +74,7 @@ Lisp_Object Qchar_or_string_p, Qmarkerp, Qinteger_or_marker_p, Qvectorp;
 Lisp_Object Qbuffer_or_string_p;
 Lisp_Object Qboundp, Qfboundp;
 Lisp_Object Qcdr;
-Lisp_Object Qadvice_info, Qactivate_advice;
+Lisp_Object Qad_advice_info, Qad_activate;
 
 Lisp_Object Qrange_error, Qdomain_error, Qsingularity_error;
 Lisp_Object Qoverflow_error, Qunderflow_error;
@@ -556,9 +556,9 @@ DEFUN ("fset", Ffset, Sfset, 2, 2, 0,
                             Vautoload_queue);
   XSYMBOL (sym)->function = newdef;
   /* Handle automatic advice activation */
-  if (CONSP (XSYMBOL (sym)->plist) && !NILP (Fget (sym, Qadvice_info)))
+  if (CONSP (XSYMBOL (sym)->plist) && !NILP (Fget (sym, Qad_advice_info)))
     {
-      call2 (Qactivate_advice, sym, Fbyte_code_function_p (newdef));
+      call2 (Qad_activate, sym, Qnil);
       newdef = XSYMBOL (sym)->function;
     }
   return newdef;
@@ -577,6 +577,12 @@ Associates the function with the current load file, if any.")
     Vautoload_queue = Fcons (Fcons (sym, XSYMBOL (sym)->function),
                             Vautoload_queue);
   XSYMBOL (sym)->function = newdef;
+  /* Handle automatic advice activation */
+  if (CONSP (XSYMBOL (sym)->plist) && !NILP (Fget (sym, Qad_advice_info)))
+    {
+      call2 (Qad_activate, sym, Qnil);
+      newdef = XSYMBOL (sym)->function;
+    }
   LOADHIST_ATTACH (sym);
   return newdef;
 }
@@ -592,6 +598,12 @@ Associates the function with the current load file, if any.")
     Vautoload_queue = Fcons (Fcons (sym, XSYMBOL (sym)->function),
                             Vautoload_queue);
   XSYMBOL (sym)->function = newdef;
+  /* Handle automatic advice activation */
+  if (CONSP (XSYMBOL (sym)->plist) && !NILP (Fget (sym, Qad_advice_info)))
+    {
+      call2 (Qad_activate, sym, Qnil);
+      newdef = XSYMBOL (sym)->function;
+    }
   LOADHIST_ATTACH (sym);
   return newdef;
 }
@@ -2058,8 +2070,8 @@ syms_of_data ()
   Qcdr = intern ("cdr");
 
   /* Handle automatic advice activation */
-  Qadvice_info = intern ("advice-info");
-  Qactivate_advice = intern ("ad-activate");
+  Qad_advice_info = intern ("ad-advice-info");
+  Qad_activate = intern ("ad-activate");
 
   error_tail = Fcons (Qerror, Qnil);
 
@@ -2243,8 +2255,8 @@ syms_of_data ()
   staticpro (&Qboundp);
   staticpro (&Qfboundp);
   staticpro (&Qcdr);
-  staticpro (&Qadvice_info);
-  staticpro (&Qactivate_advice);
+  staticpro (&Qad_advice_info);
+  staticpro (&Qad_activate);
 
   defsubr (&Seq);
   defsubr (&Snull);