emacs-diffs
[Top][All Lists]
Advanced

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

master a9420c89da9: Avoid aborts when trying to 'read' sub-char-tables


From: Eli Zaretskii
Subject: master a9420c89da9: Avoid aborts when trying to 'read' sub-char-tables
Date: Sat, 8 Jul 2023 04:13:43 -0400 (EDT)

branch: master
commit a9420c89da925f5a34acfd0a5c016a1de0ea7581
Author: Stefan Monnier <monnier@iro.umontreal.ca>
Commit: Eli Zaretskii <eliz@gnu.org>

    Avoid aborts when trying to 'read' sub-char-tables
    
    * src/data.c (Ftype_of): Support 'sub-char-table'.  (Bug#64450)
    * src/lisp.h: Fix commentary of char-table.
---
 src/data.c | 4 +++-
 src/lisp.h | 4 +---
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/data.c b/src/data.c
index 9d7e7effdcd..6de8e0cf1a1 100644
--- a/src/data.c
+++ b/src/data.c
@@ -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");
diff --git a/src/lisp.h b/src/lisp.h
index f10bce86b45..b18d0a69786 100644
--- a/src/lisp.h
+++ b/src/lisp.h
@@ -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
   {



reply via email to

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