This commit was generated by cvs2svn to compensate for changes in r1776,
[chise/xemacs-chise.git.1] / src / chartab.c
index a6292b4..470993b 100644 (file)
@@ -38,6 +38,7 @@ Boston, MA 02111-1307, USA.  */
 
 #include "buffer.h"
 #include "chartab.h"
+#include "commands.h"
 #include "syntax.h"
 
 Lisp_Object Qchar_tablep, Qchar_table;
@@ -97,7 +98,7 @@ mark_char_table_entry (Lisp_Object obj, void (*markobj) (Lisp_Object))
 
   for (i = 0; i < 96; i++)
     {
-      markobj (cte->level2[i]);
+      (markobj) (cte->level2[i]);
     }
   return Qnil;
 }
@@ -138,17 +139,17 @@ mark_char_table (Lisp_Object obj, void (*markobj) (Lisp_Object))
   int i;
 
   for (i = 0; i < NUM_ASCII_CHARS; i++)
-    markobj (ct->ascii[i]);
+    (markobj) (ct->ascii[i]);
 #ifdef MULE
   for (i = 0; i < NUM_LEADING_BYTES; i++)
-    markobj (ct->level1[i]);
+    (markobj) (ct->level1[i]);
 #endif
   return ct->mirror_table;
 }
 
 /* WARNING: All functions of this nature need to be written extremely
    carefully to avoid crashes during GC.  Cf. prune_specifiers()
-   and prune_weak_hash_tables(). */
+   and prune_weak_hashtables(). */
 
 void
 prune_syntax_tables (int (*obj_marked_p) (Lisp_Object))
@@ -159,7 +160,7 @@ prune_syntax_tables (int (*obj_marked_p) (Lisp_Object))
        !GC_NILP (rest);
        rest = XCHAR_TABLE (rest)->next_table)
     {
-      if (! obj_marked_p (rest))
+      if (! ((*obj_marked_p) (rest)))
        {
          /* This table is garbage.  Remove it from the list. */
          if (GC_NILP (prev))
@@ -176,7 +177,6 @@ char_table_type_to_symbol (enum char_table_type type)
 {
   switch (type)
   {
-  default: abort();
   case CHAR_TABLE_TYPE_GENERIC:  return Qgeneric;
   case CHAR_TABLE_TYPE_SYNTAX:   return Qsyntax;
   case CHAR_TABLE_TYPE_DISPLAY:  return Qdisplay;
@@ -185,6 +185,9 @@ char_table_type_to_symbol (enum char_table_type type)
   case CHAR_TABLE_TYPE_CATEGORY: return Qcategory;
 #endif
   }
+
+  abort ();
+  return Qnil; /* not reached */
 }
 
 static enum char_table_type
@@ -549,15 +552,13 @@ Reset a char table to its default state.
   switch (ct->type)
     {
     case CHAR_TABLE_TYPE_CHAR:
-      fill_char_table (ct, make_char (0));
-      break;
     case CHAR_TABLE_TYPE_DISPLAY:
     case CHAR_TABLE_TYPE_GENERIC:
 #ifdef MULE
     case CHAR_TABLE_TYPE_CATEGORY:
-#endif /* MULE */
       fill_char_table (ct, Qnil);
       break;
+#endif /* MULE */
 
     case CHAR_TABLE_TYPE_SYNTAX:
       fill_char_table (ct, make_int (Sinherit));
@@ -581,7 +582,7 @@ and 'syntax.  See `valid-char-table-type-p'.
   Lisp_Object obj;
   enum char_table_type ty = symbol_to_char_table_type (type);
 
-  ct = alloc_lcrecord_type (struct Lisp_Char_Table, &lrecord_char_table);
+  ct = alloc_lcrecord_type (struct Lisp_Char_Table, lrecord_char_table);
   ct->type = ty;
   if (ty == CHAR_TABLE_TYPE_SYNTAX)
     {
@@ -611,7 +612,7 @@ make_char_table_entry (Lisp_Object initval)
   int i;
   struct Lisp_Char_Table_Entry *cte =
     alloc_lcrecord_type (struct Lisp_Char_Table_Entry,
-                        &lrecord_char_table_entry);
+                        lrecord_char_table_entry);
 
   for (i = 0; i < 96; i++)
     cte->level2[i] = initval;
@@ -628,7 +629,7 @@ copy_char_table_entry (Lisp_Object entry)
   int i;
   struct Lisp_Char_Table_Entry *ctenew =
     alloc_lcrecord_type (struct Lisp_Char_Table_Entry,
-                        &lrecord_char_table_entry);
+                        lrecord_char_table_entry);
 
   for (i = 0; i < 96; i++)
     {
@@ -658,7 +659,7 @@ as OLD-TABLE.  The values will not themselves be copied.
 
   CHECK_CHAR_TABLE (old_table);
   ct = XCHAR_TABLE (old_table);
-  ctnew = alloc_lcrecord_type (struct Lisp_Char_Table, &lrecord_char_table);
+  ctnew = alloc_lcrecord_type (struct Lisp_Char_Table, lrecord_char_table);
   ctnew->type = ct->type;
 
   for (i = 0; i < NUM_ASCII_CHARS; i++)
@@ -774,7 +775,7 @@ get_non_ascii_char_table_value (struct Lisp_Char_Table *ct, int leading_byte,
 
 #endif /* MULE */
 
-Lisp_Object
+static Lisp_Object
 get_char_table (Emchar ch, struct Lisp_Char_Table *ct)
 {
 #ifdef MULE
@@ -986,10 +987,6 @@ canonicalize_char_table_value (Lisp_Object value, enum char_table_type type)
          CHECK_CHAR_COERCE_INT (cdr);
          return Fcons (car, cdr);
        }
-      break;
-    case CHAR_TABLE_TYPE_CHAR:
-      CHECK_CHAR_COERCE_INT (value);
-      break;
     default:
       break;
     }
@@ -1750,11 +1747,6 @@ syms_of_chartab (void)
   DEFSUBR (Fcategory_table_value_p);
 #endif /* MULE */
 
-}
-
-void
-vars_of_chartab (void)
-{
   /* DO NOT staticpro this.  It works just like Vweak_hash_tables. */
   Vall_syntax_tables = Qnil;
 }