aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorDmitry Antipov2014-07-02 19:22:49 +0400
committerDmitry Antipov2014-07-02 19:22:49 +0400
commite993f8d5d39431545ac0071655071a740534917b (patch)
treee9a697eef99b0a08e75f56e640b1c6b06b0f123f /src
parent15c1107a30c274e0d5451b4428efc613edabbdce (diff)
downloademacs-e993f8d5d39431545ac0071655071a740534917b.tar.gz
emacs-e993f8d5d39431545ac0071655071a740534917b.zip
* lisp.h (toplevel): Add compile-time assert to verify suitable member layout
in Lisp_Sub_Char_Table.
Diffstat (limited to 'src')
-rw-r--r--src/ChangeLog2
-rw-r--r--src/lisp.h6
2 files changed, 7 insertions, 1 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index 05916477140..bb514753bdb 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -6,6 +6,8 @@
6 (enum char_table_specials): Rename from CHAR_TABLE_STANDARD_SLOTS. 6 (enum char_table_specials): Rename from CHAR_TABLE_STANDARD_SLOTS.
7 Add SUB_CHAR_TABLE_OFFSET member. 7 Add SUB_CHAR_TABLE_OFFSET member.
8 (make_uninit_sub_char_table): New function. 8 (make_uninit_sub_char_table): New function.
9 (toplevel): Add compile-time assert to verify suitable member layout
10 in Lisp_Sub_Char_Table.
9 * alloc.c (mark_char_table): Add extra argument to denote char table 11 * alloc.c (mark_char_table): Add extra argument to denote char table
10 subtype. Adjust to match new layout of sub char-table. 12 subtype. Adjust to match new layout of sub char-table.
11 (mark_object): Always mark sub char-tables with mark_char_table. 13 (mark_object): Always mark sub char-tables with mark_char_table.
diff --git a/src/lisp.h b/src/lisp.h
index 3c4845ec79b..6af390604d6 100644
--- a/src/lisp.h
+++ b/src/lisp.h
@@ -1561,7 +1561,11 @@ CHAR_TABLE_EXTRA_SLOTS (struct Lisp_Char_Table *ct)
1561 - CHAR_TABLE_STANDARD_SLOTS); 1561 - CHAR_TABLE_STANDARD_SLOTS);
1562} 1562}
1563 1563
1564 1564/* Make sure that sub char-table contents slot
1565 is aligned on a multiple of Lisp_Objects. */
1566verify ((offsetof (struct Lisp_Sub_Char_Table, contents)
1567 - offsetof (struct Lisp_Sub_Char_Table, depth)) % word_size == 0);
1568
1565/*********************************************************************** 1569/***********************************************************************
1566 Symbols 1570 Symbols
1567 ***********************************************************************/ 1571 ***********************************************************************/