]> git.eshelyaron.com Git - emacs.git/commitdiff
(buffer_slot_type_mismatch): Take just the offset as argument. Only check
authorKarl Heuer <kwzh@gnu.org>
Wed, 12 Oct 1994 05:14:30 +0000 (05:14 +0000)
committerKarl Heuer <kwzh@gnu.org>
Wed, 12 Oct 1994 05:14:30 +0000 (05:14 +0000)
against types that are actually used.

src/buffer.c

index ccc0e1acf8be1b40b5f161cab412ba356c7fd772..0fd2e61f63e087547a2f95b1cdceb712df86647d 100644 (file)
@@ -2424,32 +2424,26 @@ evaporate_overlays (pos)
     Fdelete_overlay (XCONS (hit_list)->car);
 }
 \f
-/* Somebody has tried to store NEWVAL into the buffer-local slot with
-   offset XUINT (valcontents), and NEWVAL has an unacceptable type.  */
+/* Somebody has tried to store a value with an unacceptable type
+   into the buffer-local slot with offset OFFSET.  */
 void
-buffer_slot_type_mismatch (valcontents, newval)
-     Lisp_Object valcontents, newval;
+buffer_slot_type_mismatch (offset)
+     int offset;
 {
-  unsigned int offset = XUINT (valcontents);
-  unsigned char *symbol_name =
-    (XSYMBOL (*(Lisp_Object *)(offset + (char *)&buffer_local_symbols))
-     ->name->data);
+  Lisp_Object sym;
   char *type_name;
-  
+  sym = *(Lisp_Object *)(offset + (char *)&buffer_local_symbols);
   switch (XINT (*(Lisp_Object *)(offset + (char *)&buffer_local_types)))
     {
     case Lisp_Int:     type_name = "integers";  break;
     case Lisp_String:  type_name = "strings";   break;
-    case Lisp_Misc:    type_name = "markers";   break;
     case Lisp_Symbol:  type_name = "symbols";   break;
-    case Lisp_Cons:    type_name = "lists";     break;
-    case Lisp_Vector:  type_name = "vectors";   break;
     default:
       abort ();
     }
 
   error ("only %s should be stored in the buffer-local variable %s",
-        type_name, symbol_name);
+        type_name, XSYMBOL (sym)->name->data);
 }
 \f
 init_buffer_once ()