emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] Changes to emacs/src/eval.c


From: Juanma Barranquero
Subject: [Emacs-diffs] Changes to emacs/src/eval.c
Date: Mon, 13 Jun 2005 20:38:23 -0400

Index: emacs/src/eval.c
diff -c emacs/src/eval.c:1.241 emacs/src/eval.c:1.242
*** emacs/src/eval.c:1.241      Wed Jun  8 22:33:36 2005
--- emacs/src/eval.c    Tue Jun 14 00:38:22 2005
***************
*** 722,756 ****
  
  
  DEFUN ("defvaralias", Fdefvaralias, Sdefvaralias, 2, 3, 0,
!        doc: /* Make SYMBOL a variable alias for symbol ALIASED.
! Setting the value of SYMBOL will subsequently set the value of ALIASED,
! and getting the value of SYMBOL will return the value ALIASED has.
! Third arg DOCSTRING, if non-nil, is documentation for SYMBOL.  If it is
! omitted or nil, SYMBOL gets the documentation string of ALIASED, or of the
! variable at the end of the chain of aliases, if ALIASED is itself an alias.
! The return value is ALIASED.  */)
!      (symbol, aliased, docstring)
!      Lisp_Object symbol, aliased, docstring;
  {
    struct Lisp_Symbol *sym;
  
!   CHECK_SYMBOL (symbol);
!   CHECK_SYMBOL (aliased);
  
!   if (SYMBOL_CONSTANT_P (symbol))
      error ("Cannot make a constant an alias");
  
!   sym = XSYMBOL (symbol);
    sym->indirect_variable = 1;
!   sym->value = aliased;
!   sym->constant = SYMBOL_CONSTANT_P (aliased);
!   LOADHIST_ATTACH (symbol);
    if (!NILP (docstring))
!     Fput (symbol, Qvariable_documentation, docstring);
    else
!     Fput (symbol, Qvariable_documentation, Qnil);
  
!   return aliased;
  }
  
  
--- 722,757 ----
  
  
  DEFUN ("defvaralias", Fdefvaralias, Sdefvaralias, 2, 3, 0,
!        doc: /* Make NEW-ALIAS a variable alias for symbol BASE-VARIABLE.
! Setting the value of NEW-ALIAS will subsequently set the value of 
BASE-VARIABLE,
!  and getting the value of NEW-ALIAS will return the value BASE-VARIABLE has.
! Third arg DOCSTRING, if non-nil, is documentation for NEW-ALIAS.  If it is
!  omitted or nil, NEW-ALIAS gets the documentation string of BASE-VARIABLE,
!  or of the variable at the end of the chain of aliases, if BASE-VARIABLE is
!  itself an alias.
! The return value is BASE-VARIABLE.  */)
!      (new_alias, base_variable, docstring)
!      Lisp_Object new_alias, base_variable, docstring;
  {
    struct Lisp_Symbol *sym;
  
!   CHECK_SYMBOL (new_alias);
!   CHECK_SYMBOL (base_variable);
  
!   if (SYMBOL_CONSTANT_P (new_alias))
      error ("Cannot make a constant an alias");
  
!   sym = XSYMBOL (new_alias);
    sym->indirect_variable = 1;
!   sym->value = base_variable;
!   sym->constant = SYMBOL_CONSTANT_P (base_variable);
!   LOADHIST_ATTACH (new_alias);
    if (!NILP (docstring))
!     Fput (new_alias, Qvariable_documentation, docstring);
    else
!     Fput (new_alias, Qvariable_documentation, Qnil);
  
!   return base_variable;
  }
  
  




reply via email to

[Prev in Thread] Current Thread [Next in Thread]