aboutsummaryrefslogtreecommitdiffstats
path: root/src/lisp.h
diff options
context:
space:
mode:
authorPaul Eggert2020-01-07 11:23:11 -0800
committerPaul Eggert2020-01-07 11:29:42 -0800
commit724af7671590cd91df37f64df6be73f6dca0144d (patch)
tree075df63dcdc3653ff710ce49a5f238c165d0f0c1 /src/lisp.h
parentf950b078a6f2fd011312e9471998edf6b5fb957e (diff)
downloademacs-724af7671590cd91df37f64df6be73f6dca0144d.tar.gz
emacs-724af7671590cd91df37f64df6be73f6dca0144d.zip
Fix sxhash-equal on bytecodes, markers, etc.
Problem reported by Pip Cet (Bug#38912#14). * doc/lispref/objects.texi (Equality Predicates): Document better when ‘equal’ looks inside objects. * doc/lispref/windows.texi (Window Configurations): Don’t say that ‘equal’ looks inside window configurations. * etc/NEWS: Mention the change. * src/fns.c (internal_equal): Do not look inside window configurations. (sxhash_obj): Hash markers, byte-code function objects, char-tables, and font objects consistently with Fequal. * src/window.c (compare_window_configurations): Now static. Remove last argument. Caller changed. * test/lisp/ffap-tests.el (ffap-other-window--bug-25352): Use compare-window-configurations, not ‘equal’. * test/src/fns-tests.el (test-sxhash-equal): New test.
Diffstat (limited to 'src/lisp.h')
-rw-r--r--src/lisp.h4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/lisp.h b/src/lisp.h
index 1a1ae0399be..3681b7b2a7c 100644
--- a/src/lisp.h
+++ b/src/lisp.h
@@ -1069,7 +1069,7 @@ DEFINE_GDB_SYMBOL_END (PSEUDOVECTOR_FLAG)
1069 with PVEC_TYPE_MASK to indicate the actual type. */ 1069 with PVEC_TYPE_MASK to indicate the actual type. */
1070enum pvec_type 1070enum pvec_type
1071{ 1071{
1072 PVEC_NORMAL_VECTOR, 1072 PVEC_NORMAL_VECTOR, /* Should be first, for sxhash_obj. */
1073 PVEC_FREE, 1073 PVEC_FREE,
1074 PVEC_BIGNUM, 1074 PVEC_BIGNUM,
1075 PVEC_MARKER, 1075 PVEC_MARKER,
@@ -1094,7 +1094,7 @@ enum pvec_type
1094 PVEC_CONDVAR, 1094 PVEC_CONDVAR,
1095 PVEC_MODULE_FUNCTION, 1095 PVEC_MODULE_FUNCTION,
1096 1096
1097 /* These should be last, check internal_equal to see why. */ 1097 /* These should be last, for internal_equal and sxhash_obj. */
1098 PVEC_COMPILED, 1098 PVEC_COMPILED,
1099 PVEC_CHAR_TABLE, 1099 PVEC_CHAR_TABLE,
1100 PVEC_SUB_CHAR_TABLE, 1100 PVEC_SUB_CHAR_TABLE,