]> git.eshelyaron.com Git - emacs.git/commitdiff
Avoid aborts when trying to 'read' sub-char-tables
authorStefan Monnier <monnier@iro.umontreal.ca>
Tue, 4 Jul 2023 23:58:12 +0000 (19:58 -0400)
committerEli Zaretskii <eliz@gnu.org>
Sat, 8 Jul 2023 08:12:54 +0000 (11:12 +0300)
* src/data.c (Ftype_of): Support 'sub-char-table'.  (Bug#64450)
* src/lisp.h: Fix commentary of char-table.

src/data.c
src/lisp.h

index 9d7e7effdcdf30c05bb9f99dc55d589b8161cc6e..6de8e0cf1a1c5c524755d7525376fe5c5f93ed83 100644 (file)
@@ -269,10 +269,11 @@ for example, (type-of 1) returns `integer'.  */)
          return Qtreesit_compiled_query;
         case PVEC_SQLITE:
           return Qsqlite;
+        case PVEC_SUB_CHAR_TABLE:
+          return Qsub_char_table;
         /* "Impossible" cases.  */
        case PVEC_MISC_PTR:
         case PVEC_OTHER:
-        case PVEC_SUB_CHAR_TABLE:
         case PVEC_FREE: ;
         }
       emacs_abort ();
@@ -4215,6 +4216,7 @@ syms_of_data (void)
   DEFSYM (Qvector, "vector");
   DEFSYM (Qrecord, "record");
   DEFSYM (Qchar_table, "char-table");
+  DEFSYM (Qsub_char_table, "sub-char-table");
   DEFSYM (Qbool_vector, "bool-vector");
   DEFSYM (Qhash_table, "hash-table");
   DEFSYM (Qthread, "thread");
index f10bce86b45750443847ef95c3890bf8bcab6f5b..b18d0a69786d64239d0c74cdc2204a0f023e3475 100644 (file)
@@ -2011,9 +2011,7 @@ ASCII_CHAR_P (intmax_t c)
    range of characters.  A sub-char-table is like a vector, but with
    two integer fields between the header and Lisp data, which means
    that it has to be marked with some precautions (see mark_char_table
-   in alloc.c).  A sub-char-table appears only in an element of a
-   char-table, and there's no way to access it directly from a Lisp
-   program.  */
+   in alloc.c).  A sub-char-table appears in an element of a char-table.  */
 
 enum CHARTAB_SIZE_BITS
   {