aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPaul Eggert2019-04-09 15:42:10 -0700
committerPaul Eggert2019-04-09 15:43:34 -0700
commit44a39e3e761c0774cd1bb9360db7f49e1d66ec06 (patch)
tree2538050092690dc2f06983101ae17f33f05b88df
parent85fbdf027dc03e606c7c4532162148891e41d786 (diff)
downloademacs-44a39e3e761c0774cd1bb9360db7f49e1d66ec06.tar.gz
emacs-44a39e3e761c0774cd1bb9360db7f49e1d66ec06.zip
Remove dmpstruct.h
The hassles of updating the dmpstruct.h-using code bit me again. These updates are more trouble than they’re worth. See: https://lists.gnu.org/r/emacs-devel/2019-03/msg00122.html As I’m the main person who’s made changes in this area since dmpstruct.h was introduced, I’m the most motivated to clean up the situation. * make-dist (possibly_non_vc_files): Remove src/dmpstruct.h. * src/Makefile.in (dmpstruct_headers, dmpstruct.h): Remove. (pdumper.o): Do not depend on dmpstruct.h. (mostlyclean): Do not remove dmpstruct.h. * src/dmpstruct.awk: Remove. * src/pdumper.c: Do not include dmpstruct.h. (CHECK_STRUCTS): Remove. All uses removed.
-rw-r--r--.gitignore1
-rwxr-xr-xmake-dist2
-rw-r--r--src/Makefile.in10
-rwxr-xr-xsrc/dmpstruct.awk45
-rw-r--r--src/pdumper.c89
5 files changed, 2 insertions, 145 deletions
diff --git a/.gitignore b/.gitignore
index 355824f3903..bd5a8e79471 100644
--- a/.gitignore
+++ b/.gitignore
@@ -187,7 +187,6 @@ src/emacs-[0-9]*
187src/temacs 187src/temacs
188src/temacs.in 188src/temacs.in
189src/fingerprint.c 189src/fingerprint.c
190src/dmpstruct.h
191src/*.pdmp 190src/*.pdmp
192 191
193# Character-set info. 192# Character-set info.
diff --git a/make-dist b/make-dist
index 4e18d77a87b..821895a0053 100755
--- a/make-dist
+++ b/make-dist
@@ -366,7 +366,7 @@ possibly_non_vc_files="
366 $top_level_ChangeLog 366 $top_level_ChangeLog
367 MANIFEST aclocal.m4 configure 367 MANIFEST aclocal.m4 configure
368 admin/charsets/jisx2131-filter 368 admin/charsets/jisx2131-filter
369 src/config.in src/dmpstruct.h src/emacs-module.h 369 src/config.in src/emacs-module.h
370 src/fingerprint.c 370 src/fingerprint.c
371"$( 371"$(
372 find admin doc etc lisp \ 372 find admin doc etc lisp \
diff --git a/src/Makefile.in b/src/Makefile.in
index dee3a534db3..10b2da319b2 100644
--- a/src/Makefile.in
+++ b/src/Makefile.in
@@ -456,14 +456,6 @@ ALLOBJS = $(FIRSTFILE_OBJ) $(VMLIMIT_OBJ) $(obj) $(otherobj)
456all: emacs$(EXEEXT) $(pdmp) $(OTHER_FILES) 456all: emacs$(EXEEXT) $(pdmp) $(OTHER_FILES)
457.PHONY: all 457.PHONY: all
458 458
459dmpstruct_headers=$(srcdir)/lisp.h $(srcdir)/buffer.h \
460 $(srcdir)/intervals.h $(srcdir)/charset.h $(srcdir)/bignum.h
461pdumper.o: dmpstruct.h
462dmpstruct.h: $(srcdir)/dmpstruct.awk
463dmpstruct.h: $(libsrc)/make-fingerprint$(EXEEXT) $(dmpstruct_headers)
464 $(AM_V_GEN)POSIXLY_CORRECT=1 awk -f $(srcdir)/dmpstruct.awk \
465 $(dmpstruct_headers) > $@
466
467AUTO_DEPEND = @AUTO_DEPEND@ 459AUTO_DEPEND = @AUTO_DEPEND@
468DEPDIR = deps 460DEPDIR = deps
469ifeq ($(AUTO_DEPEND),yes) 461ifeq ($(AUTO_DEPEND),yes)
@@ -681,7 +673,7 @@ ns-app: emacs$(EXEEXT) $(pdmp)
681 673
682mostlyclean: 674mostlyclean:
683 rm -f temacs$(EXEEXT) core ./*.core \#* ./*.o 675 rm -f temacs$(EXEEXT) core ./*.core \#* ./*.o
684 rm -f temacs.in$(EXEEXT) fingerprint.c dmpstruct.h 676 rm -f temacs.in$(EXEEXT) fingerprint.c
685 rm -f emacs.pdmp 677 rm -f emacs.pdmp
686 rm -f ../etc/DOC 678 rm -f ../etc/DOC
687 rm -f bootstrap-emacs$(EXEEXT) $(bootstrap_pdmp) 679 rm -f bootstrap-emacs$(EXEEXT) $(bootstrap_pdmp)
diff --git a/src/dmpstruct.awk b/src/dmpstruct.awk
deleted file mode 100755
index 55626cf8b21..00000000000
--- a/src/dmpstruct.awk
+++ /dev/null
@@ -1,45 +0,0 @@
1# Copyright (C) 2018-2019 Free Software Foundation, Inc.
2#
3# This file is part of GNU Emacs.
4#
5# GNU Emacs is free software: you can redistribute it and/or modify
6# it under the terms of the GNU General Public License as published by
7# the Free Software Foundation, either version 3 of the License, or (at
8# your option) any later version.
9#
10# GNU Emacs is distributed in the hope that it will be useful,
11# but WITHOUT ANY WARRANTY; without even the implied warranty of
12# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13# GNU General Public License for more details.
14#
15# You should have received a copy of the GNU General Public License
16# along with GNU Emacs. If not, see <https://www.gnu.org/licenses/>.
17
18BEGIN {
19 print "/* Generated by dmpstruct.awk */"
20 print "#ifndef EMACS_DMPSTRUCT_H"
21 print "#define EMACS_DMPSTRUCT_H"
22 struct_name = ""
23 tmpfile = "dmpstruct.tmp"
24}
25# Match a type followed by optional syntactic whitespace
26/^(enum|struct|union) [a-zA-Z0-9_]+([\t ]|\/\*.*\*\/)*$/ {
27 struct_name = $2
28 close (tmpfile)
29}
30/^(enum|struct|union) [a-zA-Z0-9_]+([\t ]|\/\*.*\*\/)*$/, /^( )?};$/ {
31 print $0 > tmpfile
32}
33/^( )?} *(GCALIGNED_STRUCT)? *;$/ {
34 if (struct_name != "") {
35 fflush (tmpfile)
36 cmd = "../lib-src/make-fingerprint -r " tmpfile
37 cmd | getline hash
38 close (cmd)
39 printf "#define HASH_%s_%.10s\n", struct_name, hash
40 struct_name = ""
41 }
42}
43END {
44 print "#endif /* EMACS_DMPSTRUCT_H */"
45}
diff --git a/src/pdumper.c b/src/pdumper.c
index cb2915cb203..68c412d47cd 100644
--- a/src/pdumper.c
+++ b/src/pdumper.c
@@ -46,8 +46,6 @@ along with GNU Emacs. If not, see <https://www.gnu.org/licenses/>. */
46#include "thread.h" 46#include "thread.h"
47#include "bignum.h" 47#include "bignum.h"
48 48
49#include "dmpstruct.h"
50
51/* 49/*
52 TODO: 50 TODO:
53 51
@@ -68,16 +66,6 @@ along with GNU Emacs. If not, see <https://www.gnu.org/licenses/>. */
68 66
69#ifdef HAVE_PDUMPER 67#ifdef HAVE_PDUMPER
70 68
71/* CHECK_STRUCTS being true makes the build break if we notice
72 changes to the source defining certain Lisp structures we dump. If
73 you change one of these structures, check that the pdumper code is
74 still valid, and update the pertinent hash lower down in this file
75 (pdumper.c) by manually copying the value from the dmpstruct.h
76 generated from your new code. */
77#ifndef CHECK_STRUCTS
78# define CHECK_STRUCTS 1
79#endif
80
81#if __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 7) 69#if __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 7)
82# pragma GCC diagnostic error "-Wconversion" 70# pragma GCC diagnostic error "-Wconversion"
83# pragma GCC diagnostic error "-Wshadow" 71# pragma GCC diagnostic error "-Wshadow"
@@ -2043,9 +2031,6 @@ dump_pseudovector_lisp_fields (struct dump_context *ctx,
2043static dump_off 2031static dump_off
2044dump_cons (struct dump_context *ctx, const struct Lisp_Cons *cons) 2032dump_cons (struct dump_context *ctx, const struct Lisp_Cons *cons)
2045{ 2033{
2046#if CHECK_STRUCTS && !defined (HASH_Lisp_Cons_00EEE63F67)
2047# error "Lisp_Cons changed. See CHECK_STRUCTS comment."
2048#endif
2049 struct Lisp_Cons out; 2034 struct Lisp_Cons out;
2050 dump_object_start (ctx, &out, sizeof (out)); 2035 dump_object_start (ctx, &out, sizeof (out));
2051 dump_field_lv (ctx, &out, cons, &cons->u.s.car, WEIGHT_STRONG); 2036 dump_field_lv (ctx, &out, cons, &cons->u.s.car, WEIGHT_STRONG);
@@ -2058,9 +2043,6 @@ dump_interval_tree (struct dump_context *ctx,
2058 INTERVAL tree, 2043 INTERVAL tree,
2059 dump_off parent_offset) 2044 dump_off parent_offset)
2060{ 2045{
2061#if CHECK_STRUCTS && !defined (HASH_interval_1B38941C37)
2062# error "interval changed. See CHECK_STRUCTS comment."
2063#endif
2064 /* TODO: output tree breadth-first? */ 2046 /* TODO: output tree breadth-first? */
2065 struct interval out; 2047 struct interval out;
2066 dump_object_start (ctx, &out, sizeof (out)); 2048 dump_object_start (ctx, &out, sizeof (out));
@@ -2102,9 +2084,6 @@ dump_interval_tree (struct dump_context *ctx,
2102static dump_off 2084static dump_off
2103dump_string (struct dump_context *ctx, const struct Lisp_String *string) 2085dump_string (struct dump_context *ctx, const struct Lisp_String *string)
2104{ 2086{
2105#if CHECK_STRUCTS && !defined (HASH_Lisp_String_86FEA6EC7C)
2106# error "Lisp_String changed. See CHECK_STRUCTS comment."
2107#endif
2108 /* If we have text properties, write them _after_ the string so that 2087 /* If we have text properties, write them _after_ the string so that
2109 at runtime, the prefetcher and cache will DTRT. (We access the 2088 at runtime, the prefetcher and cache will DTRT. (We access the
2110 string before its properties.). 2089 string before its properties.).
@@ -2148,10 +2127,6 @@ dump_string (struct dump_context *ctx, const struct Lisp_String *string)
2148static dump_off 2127static dump_off
2149dump_marker (struct dump_context *ctx, const struct Lisp_Marker *marker) 2128dump_marker (struct dump_context *ctx, const struct Lisp_Marker *marker)
2150{ 2129{
2151#if CHECK_STRUCTS && !defined (HASH_Lisp_Marker_642DBAF866)
2152# error "Lisp_Marker changed. See CHECK_STRUCTS comment."
2153#endif
2154
2155 START_DUMP_PVEC (ctx, &marker->header, struct Lisp_Marker, out); 2130 START_DUMP_PVEC (ctx, &marker->header, struct Lisp_Marker, out);
2156 dump_pseudovector_lisp_fields (ctx, &out->header, &marker->header); 2131 dump_pseudovector_lisp_fields (ctx, &out->header, &marker->header);
2157 DUMP_FIELD_COPY (out, marker, need_adjustment); 2132 DUMP_FIELD_COPY (out, marker, need_adjustment);
@@ -2171,9 +2146,6 @@ dump_marker (struct dump_context *ctx, const struct Lisp_Marker *marker)
2171static dump_off 2146static dump_off
2172dump_overlay (struct dump_context *ctx, const struct Lisp_Overlay *overlay) 2147dump_overlay (struct dump_context *ctx, const struct Lisp_Overlay *overlay)
2173{ 2148{
2174#if CHECK_STRUCTS && !defined (HASH_Lisp_Overlay_72EADA9882)
2175# error "Lisp_Overlay changed. See CHECK_STRUCTS comment."
2176#endif
2177 START_DUMP_PVEC (ctx, &overlay->header, struct Lisp_Overlay, out); 2149 START_DUMP_PVEC (ctx, &overlay->header, struct Lisp_Overlay, out);
2178 dump_pseudovector_lisp_fields (ctx, &out->header, &overlay->header); 2150 dump_pseudovector_lisp_fields (ctx, &out->header, &overlay->header);
2179 dump_field_lv_rawptr (ctx, out, overlay, &overlay->next, 2151 dump_field_lv_rawptr (ctx, out, overlay, &overlay->next,
@@ -2199,9 +2171,6 @@ static dump_off
2199dump_finalizer (struct dump_context *ctx, 2171dump_finalizer (struct dump_context *ctx,
2200 const struct Lisp_Finalizer *finalizer) 2172 const struct Lisp_Finalizer *finalizer)
2201{ 2173{
2202#if CHECK_STRUCTS && !defined (HASH_Lisp_Finalizer_D58E647CB8)
2203# error "Lisp_Finalizer changed. See CHECK_STRUCTS comment."
2204#endif
2205 START_DUMP_PVEC (ctx, &finalizer->header, struct Lisp_Finalizer, out); 2174 START_DUMP_PVEC (ctx, &finalizer->header, struct Lisp_Finalizer, out);
2206 /* Do _not_ call dump_pseudovector_lisp_fields here: we dump the 2175 /* Do _not_ call dump_pseudovector_lisp_fields here: we dump the
2207 only Lisp field, finalizer->function, manually, so we can give it 2176 only Lisp field, finalizer->function, manually, so we can give it
@@ -2221,9 +2190,6 @@ struct bignum_reload_info
2221static dump_off 2190static dump_off
2222dump_bignum (struct dump_context *ctx, Lisp_Object object) 2191dump_bignum (struct dump_context *ctx, Lisp_Object object)
2223{ 2192{
2224#if CHECK_STRUCTS && !defined (HASH_Lisp_Bignum_661945DE2B)
2225# error "Lisp_Bignum changed. See CHECK_STRUCTS comment."
2226#endif
2227 const struct Lisp_Bignum *bignum = XBIGNUM (object); 2193 const struct Lisp_Bignum *bignum = XBIGNUM (object);
2228 START_DUMP_PVEC (ctx, &bignum->header, struct Lisp_Bignum, out); 2194 START_DUMP_PVEC (ctx, &bignum->header, struct Lisp_Bignum, out);
2229 verify (sizeof (out->value) >= sizeof (struct bignum_reload_info)); 2195 verify (sizeof (out->value) >= sizeof (struct bignum_reload_info));
@@ -2259,9 +2225,6 @@ dump_bignum (struct dump_context *ctx, Lisp_Object object)
2259static dump_off 2225static dump_off
2260dump_float (struct dump_context *ctx, const struct Lisp_Float *lfloat) 2226dump_float (struct dump_context *ctx, const struct Lisp_Float *lfloat)
2261{ 2227{
2262#if CHECK_STRUCTS && !defined (HASH_Lisp_Float_50A7B216D9)
2263# error "Lisp_Float changed. See CHECK_STRUCTS comment."
2264#endif
2265 eassert (ctx->header.cold_start); 2228 eassert (ctx->header.cold_start);
2266 struct Lisp_Float out; 2229 struct Lisp_Float out;
2267 dump_object_start (ctx, &out, sizeof (out)); 2230 dump_object_start (ctx, &out, sizeof (out));
@@ -2272,9 +2235,6 @@ dump_float (struct dump_context *ctx, const struct Lisp_Float *lfloat)
2272static dump_off 2235static dump_off
2273dump_fwd_int (struct dump_context *ctx, const struct Lisp_Intfwd *intfwd) 2236dump_fwd_int (struct dump_context *ctx, const struct Lisp_Intfwd *intfwd)
2274{ 2237{
2275#if CHECK_STRUCTS && !defined HASH_Lisp_Intfwd_4D887A7387
2276# error "Lisp_Intfwd changed. See CHECK_STRUCTS comment."
2277#endif
2278 dump_emacs_reloc_immediate_intmax_t (ctx, intfwd->intvar, *intfwd->intvar); 2238 dump_emacs_reloc_immediate_intmax_t (ctx, intfwd->intvar, *intfwd->intvar);
2279 struct Lisp_Intfwd out; 2239 struct Lisp_Intfwd out;
2280 dump_object_start (ctx, &out, sizeof (out)); 2240 dump_object_start (ctx, &out, sizeof (out));
@@ -2286,9 +2246,6 @@ dump_fwd_int (struct dump_context *ctx, const struct Lisp_Intfwd *intfwd)
2286static dump_off 2246static dump_off
2287dump_fwd_bool (struct dump_context *ctx, const struct Lisp_Boolfwd *boolfwd) 2247dump_fwd_bool (struct dump_context *ctx, const struct Lisp_Boolfwd *boolfwd)
2288{ 2248{
2289#if CHECK_STRUCTS && !defined (HASH_Lisp_Boolfwd_0EA1C7ADCC)
2290# error "Lisp_Boolfwd changed. See CHECK_STRUCTS comment."
2291#endif
2292 dump_emacs_reloc_immediate_bool (ctx, boolfwd->boolvar, *boolfwd->boolvar); 2249 dump_emacs_reloc_immediate_bool (ctx, boolfwd->boolvar, *boolfwd->boolvar);
2293 struct Lisp_Boolfwd out; 2250 struct Lisp_Boolfwd out;
2294 dump_object_start (ctx, &out, sizeof (out)); 2251 dump_object_start (ctx, &out, sizeof (out));
@@ -2300,9 +2257,6 @@ dump_fwd_bool (struct dump_context *ctx, const struct Lisp_Boolfwd *boolfwd)
2300static dump_off 2257static dump_off
2301dump_fwd_obj (struct dump_context *ctx, const struct Lisp_Objfwd *objfwd) 2258dump_fwd_obj (struct dump_context *ctx, const struct Lisp_Objfwd *objfwd)
2302{ 2259{
2303#if CHECK_STRUCTS && !defined (HASH_Lisp_Objfwd_45D3E513DC)
2304# error "Lisp_Objfwd changed. See CHECK_STRUCTS comment."
2305#endif
2306 if (NILP (Fgethash (dump_off_to_lisp (emacs_offset (objfwd->objvar)), 2260 if (NILP (Fgethash (dump_off_to_lisp (emacs_offset (objfwd->objvar)),
2307 ctx->staticpro_table, 2261 ctx->staticpro_table,
2308 Qnil))) 2262 Qnil)))
@@ -2318,9 +2272,6 @@ static dump_off
2318dump_fwd_buffer_obj (struct dump_context *ctx, 2272dump_fwd_buffer_obj (struct dump_context *ctx,
2319 const struct Lisp_Buffer_Objfwd *buffer_objfwd) 2273 const struct Lisp_Buffer_Objfwd *buffer_objfwd)
2320{ 2274{
2321#if CHECK_STRUCTS && !defined (HASH_Lisp_Buffer_Objfwd_13CA6B04FC)
2322# error "Lisp_Buffer_Objfwd changed. See CHECK_STRUCTS comment."
2323#endif
2324 struct Lisp_Buffer_Objfwd out; 2275 struct Lisp_Buffer_Objfwd out;
2325 dump_object_start (ctx, &out, sizeof (out)); 2276 dump_object_start (ctx, &out, sizeof (out));
2326 DUMP_FIELD_COPY (&out, buffer_objfwd, type); 2277 DUMP_FIELD_COPY (&out, buffer_objfwd, type);
@@ -2334,9 +2285,6 @@ static dump_off
2334dump_fwd_kboard_obj (struct dump_context *ctx, 2285dump_fwd_kboard_obj (struct dump_context *ctx,
2335 const struct Lisp_Kboard_Objfwd *kboard_objfwd) 2286 const struct Lisp_Kboard_Objfwd *kboard_objfwd)
2336{ 2287{
2337#if CHECK_STRUCTS && !defined (HASH_Lisp_Kboard_Objfwd_CAA7E71069)
2338# error "Lisp_Intfwd changed. See CHECK_STRUCTS comment."
2339#endif
2340 struct Lisp_Kboard_Objfwd out; 2288 struct Lisp_Kboard_Objfwd out;
2341 dump_object_start (ctx, &out, sizeof (out)); 2289 dump_object_start (ctx, &out, sizeof (out));
2342 DUMP_FIELD_COPY (&out, kboard_objfwd, type); 2290 DUMP_FIELD_COPY (&out, kboard_objfwd, type);
@@ -2347,9 +2295,6 @@ dump_fwd_kboard_obj (struct dump_context *ctx,
2347static dump_off 2295static dump_off
2348dump_fwd (struct dump_context *ctx, lispfwd fwd) 2296dump_fwd (struct dump_context *ctx, lispfwd fwd)
2349{ 2297{
2350#if CHECK_STRUCTS && !defined (HASH_Lisp_Fwd_Type_9CBA6EE55E)
2351# error "Lisp_Fwd_Type changed. See CHECK_STRUCTS comment."
2352#endif
2353 void const *p = fwd.fwdptr; 2298 void const *p = fwd.fwdptr;
2354 dump_off offset; 2299 dump_off offset;
2355 2300
@@ -2381,9 +2326,6 @@ static dump_off
2381dump_blv (struct dump_context *ctx, 2326dump_blv (struct dump_context *ctx,
2382 const struct Lisp_Buffer_Local_Value *blv) 2327 const struct Lisp_Buffer_Local_Value *blv)
2383{ 2328{
2384#if CHECK_STRUCTS && !defined HASH_Lisp_Buffer_Local_Value_3C363FAC3C
2385# error "Lisp_Buffer_Local_Value changed. See CHECK_STRUCTS comment."
2386#endif
2387 struct Lisp_Buffer_Local_Value out; 2329 struct Lisp_Buffer_Local_Value out;
2388 dump_object_start (ctx, &out, sizeof (out)); 2330 dump_object_start (ctx, &out, sizeof (out));
2389 DUMP_FIELD_COPY (&out, blv, local_if_set); 2331 DUMP_FIELD_COPY (&out, blv, local_if_set);
@@ -2446,13 +2388,6 @@ dump_symbol (struct dump_context *ctx,
2446 Lisp_Object object, 2388 Lisp_Object object,
2447 dump_off offset) 2389 dump_off offset)
2448{ 2390{
2449#if CHECK_STRUCTS && !defined HASH_Lisp_Symbol_999DC26DEC
2450# error "Lisp_Symbol changed. See CHECK_STRUCTS comment."
2451#endif
2452#if CHECK_STRUCTS && !defined (HASH_symbol_redirect_ADB4F5B113)
2453# error "symbol_redirect changed. See CHECK_STRUCTS comment."
2454#endif
2455
2456 if (ctx->flags.defer_symbols) 2391 if (ctx->flags.defer_symbols)
2457 { 2392 {
2458 if (offset != DUMP_OBJECT_ON_SYMBOL_QUEUE) 2393 if (offset != DUMP_OBJECT_ON_SYMBOL_QUEUE)
@@ -2542,9 +2477,6 @@ static dump_off
2542dump_vectorlike_generic (struct dump_context *ctx, 2477dump_vectorlike_generic (struct dump_context *ctx,
2543 const union vectorlike_header *header) 2478 const union vectorlike_header *header)
2544{ 2479{
2545#if CHECK_STRUCTS && !defined (HASH_vectorlike_header_00A5A4BFB2)
2546# error "vectorlike_header changed. See CHECK_STRUCTS comment."
2547#endif
2548 const struct Lisp_Vector *v = (const struct Lisp_Vector *) header; 2480 const struct Lisp_Vector *v = (const struct Lisp_Vector *) header;
2549 ptrdiff_t size = header->size; 2481 ptrdiff_t size = header->size;
2550 enum pvec_type pvectype = PSEUDOVECTOR_TYPE (v); 2482 enum pvec_type pvectype = PSEUDOVECTOR_TYPE (v);
@@ -2702,9 +2634,6 @@ dump_hash_table (struct dump_context *ctx,
2702 Lisp_Object object, 2634 Lisp_Object object,
2703 dump_off offset) 2635 dump_off offset)
2704{ 2636{
2705#if CHECK_STRUCTS && !defined HASH_Lisp_Hash_Table_EF95ED06FF
2706# error "Lisp_Hash_Table changed. See CHECK_STRUCTS comment."
2707#endif
2708 const struct Lisp_Hash_Table *hash_in = XHASH_TABLE (object); 2637 const struct Lisp_Hash_Table *hash_in = XHASH_TABLE (object);
2709 bool is_stable = dump_hash_table_stable_p (hash_in); 2638 bool is_stable = dump_hash_table_stable_p (hash_in);
2710 /* If the hash table is likely to be modified in memory (either 2639 /* If the hash table is likely to be modified in memory (either
@@ -2770,9 +2699,6 @@ dump_hash_table (struct dump_context *ctx,
2770static dump_off 2699static dump_off
2771dump_buffer (struct dump_context *ctx, const struct buffer *in_buffer) 2700dump_buffer (struct dump_context *ctx, const struct buffer *in_buffer)
2772{ 2701{
2773#if CHECK_STRUCTS && !defined HASH_buffer_E34A11C6B9
2774# error "buffer changed. See CHECK_STRUCTS comment."
2775#endif
2776 struct buffer munged_buffer = *in_buffer; 2702 struct buffer munged_buffer = *in_buffer;
2777 struct buffer *buffer = &munged_buffer; 2703 struct buffer *buffer = &munged_buffer;
2778 2704
@@ -2906,9 +2832,6 @@ dump_buffer (struct dump_context *ctx, const struct buffer *in_buffer)
2906static dump_off 2832static dump_off
2907dump_bool_vector (struct dump_context *ctx, const struct Lisp_Vector *v) 2833dump_bool_vector (struct dump_context *ctx, const struct Lisp_Vector *v)
2908{ 2834{
2909#if CHECK_STRUCTS && !defined (HASH_Lisp_Vector_3091289B35)
2910# error "Lisp_Vector changed. See CHECK_STRUCTS comment."
2911#endif
2912 /* No relocation needed, so we don't need dump_object_start. */ 2835 /* No relocation needed, so we don't need dump_object_start. */
2913 dump_align_output (ctx, DUMP_ALIGNMENT); 2836 dump_align_output (ctx, DUMP_ALIGNMENT);
2914 eassert (ctx->offset >= ctx->header.cold_start); 2837 eassert (ctx->offset >= ctx->header.cold_start);
@@ -2923,9 +2846,6 @@ dump_bool_vector (struct dump_context *ctx, const struct Lisp_Vector *v)
2923static dump_off 2846static dump_off
2924dump_subr (struct dump_context *ctx, const struct Lisp_Subr *subr) 2847dump_subr (struct dump_context *ctx, const struct Lisp_Subr *subr)
2925{ 2848{
2926#if CHECK_STRUCTS && !defined (HASH_Lisp_Subr_594AB72B54)
2927# error "Lisp_Subr changed. See CHECK_STRUCTS comment."
2928#endif
2929 struct Lisp_Subr out; 2849 struct Lisp_Subr out;
2930 dump_object_start (ctx, &out, sizeof (out)); 2850 dump_object_start (ctx, &out, sizeof (out));
2931 DUMP_FIELD_COPY (&out, subr, header.size); 2851 DUMP_FIELD_COPY (&out, subr, header.size);
@@ -2962,9 +2882,6 @@ dump_vectorlike (struct dump_context *ctx,
2962 Lisp_Object lv, 2882 Lisp_Object lv,
2963 dump_off offset) 2883 dump_off offset)
2964{ 2884{
2965#if CHECK_STRUCTS && !defined (HASH_pvec_type_549C833A54)
2966# error "pvec_type changed. See CHECK_STRUCTS comment."
2967#endif
2968 const struct Lisp_Vector *v = XVECTOR (lv); 2885 const struct Lisp_Vector *v = XVECTOR (lv);
2969 switch (PSEUDOVECTOR_TYPE (v)) 2886 switch (PSEUDOVECTOR_TYPE (v))
2970 { 2887 {
@@ -3072,9 +2989,6 @@ dump_vectorlike (struct dump_context *ctx,
3072static dump_off 2989static dump_off
3073dump_object (struct dump_context *ctx, Lisp_Object object) 2990dump_object (struct dump_context *ctx, Lisp_Object object)
3074{ 2991{
3075#if CHECK_STRUCTS && !defined (HASH_Lisp_Type_E2AD97D3F7)
3076# error "Lisp_Type changed. See CHECK_STRUCTS comment."
3077#endif
3078#ifdef ENABLE_CHECKING 2992#ifdef ENABLE_CHECKING
3079 /* Vdead is extern only when ENABLE_CHECKING. */ 2993 /* Vdead is extern only when ENABLE_CHECKING. */
3080 eassert (!EQ (object, Vdead)); 2994 eassert (!EQ (object, Vdead));
@@ -3177,9 +3091,6 @@ dump_object_for_offset (struct dump_context *ctx, Lisp_Object object)
3177static dump_off 3091static dump_off
3178dump_charset (struct dump_context *ctx, int cs_i) 3092dump_charset (struct dump_context *ctx, int cs_i)
3179{ 3093{
3180#if CHECK_STRUCTS && !defined (HASH_charset_317C49E291)
3181# error "charset changed. See CHECK_STRUCTS comment."
3182#endif
3183 dump_align_output (ctx, alignof (int)); 3094 dump_align_output (ctx, alignof (int));
3184 const struct charset *cs = charset_table + cs_i; 3095 const struct charset *cs = charset_table + cs_i;
3185 struct charset out; 3096 struct charset out;