Mercurial > emacs
comparison src/eval.c @ 36817:d37840301629
(specbind): Call store_symval_forwarding with BUF null.
author | Gerd Moellmann <gerd@gnu.org> |
---|---|
date | Thu, 15 Mar 2001 09:43:16 +0000 |
parents | 6d423e4621ef |
children | 451c5848dd13 |
comparison
equal
deleted
inserted
replaced
36816:f8cbdb29cbe6 | 36817:d37840301629 |
---|---|
2948 else | 2948 else |
2949 specpdl_ptr->symbol = symbol; | 2949 specpdl_ptr->symbol = symbol; |
2950 | 2950 |
2951 specpdl_ptr++; | 2951 specpdl_ptr++; |
2952 if (BUFFER_OBJFWDP (ovalue) || KBOARD_OBJFWDP (ovalue)) | 2952 if (BUFFER_OBJFWDP (ovalue) || KBOARD_OBJFWDP (ovalue)) |
2953 store_symval_forwarding (symbol, ovalue, value); | 2953 store_symval_forwarding (symbol, ovalue, value, NULL); |
2954 else | 2954 else |
2955 set_internal (symbol, value, 0, 1); | 2955 set_internal (symbol, value, 0, 1); |
2956 } | 2956 } |
2957 } | 2957 } |
2958 | 2958 |
2988 (*specpdl_ptr->func) (specpdl_ptr->old_value); | 2988 (*specpdl_ptr->func) (specpdl_ptr->old_value); |
2989 /* Note that a "binding" of nil is really an unwind protect, | 2989 /* Note that a "binding" of nil is really an unwind protect, |
2990 so in that case the "old value" is a list of forms to evaluate. */ | 2990 so in that case the "old value" is a list of forms to evaluate. */ |
2991 else if (NILP (specpdl_ptr->symbol)) | 2991 else if (NILP (specpdl_ptr->symbol)) |
2992 Fprogn (specpdl_ptr->old_value); | 2992 Fprogn (specpdl_ptr->old_value); |
2993 /* If the symbol is a list, it is really | 2993 /* If the symbol is a list, it is really (SYMBOL BINDING_BUFFER |
2994 (SYMBOL BINDING_BUFFER . CURRENT_BUFFER) | 2994 . CURRENT_BUFFER) and it indicates we bound a variable that |
2995 and it indicates we bound a variable that has | 2995 has buffer-local bindings. BINDING_BUFFER nil means that the |
2996 buffer-local bindings. */ | 2996 variable had the default value when it was bound. */ |
2997 else if (CONSP (specpdl_ptr->symbol)) | 2997 else if (CONSP (specpdl_ptr->symbol)) |
2998 { | 2998 { |
2999 Lisp_Object symbol, buffer; | 2999 Lisp_Object symbol, buffer; |
3000 | 3000 |
3001 symbol = XCAR (specpdl_ptr->symbol); | 3001 symbol = XCAR (specpdl_ptr->symbol); |