# HG changeset patch # User Richard M. Stallman # Date 776041033 0 # Node ID b6335ce87e16a3f07bac6cf77ff26ee9aa63f790 # Parent 0e699538d25606bcf784095d2ebbfd3a2053e990 (Fdefine_function, Fdefalias): Handle advice as in Ffset. (Qad_advice_info): Lisp and C names renamed from Qadvice_info. (Qad_activate): C name renamed from Qactivate_advice. diff -r 0e699538d256 -r b6335ce87e16 src/data.c --- a/src/data.c Thu Aug 04 22:33:36 1994 +0000 +++ b/src/data.c Thu Aug 04 22:57:13 1994 +0000 @@ -74,7 +74,7 @@ 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 @@ 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 @@ 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 @@ 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 @@ 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 @@ staticpro (&Qboundp); staticpro (&Qfboundp); staticpro (&Qcdr); - staticpro (&Qadvice_info); - staticpro (&Qactivate_advice); + staticpro (&Qad_advice_info); + staticpro (&Qad_activate); defsubr (&Seq); defsubr (&Snull);