aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorLars Brinkhoff2017-04-08 07:07:32 +0200
committerLars Brinkhoff2017-04-08 08:47:46 +0200
commit4fbfd7ad53810153371a588a9bd1a69230f60dd5 (patch)
tree22519e6adfcb3f2dc3e8ae98afde59bf1f1870f4 /src
parenta2b3fea957440b8358d3632a4a05e41dee964b5d (diff)
downloademacs-4fbfd7ad53810153371a588a9bd1a69230f60dd5.tar.gz
emacs-4fbfd7ad53810153371a588a9bd1a69230f60dd5.zip
Fix circular read syntax for records.
* lread.c (substitute_object_recurse): Work with records. * lread-tests.el (lread-record-1): New test.
Diffstat (limited to 'src')
-rw-r--r--src/lread.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/lread.c b/src/lread.c
index 6de9fe6e08e..513f63e4315 100644
--- a/src/lread.c
+++ b/src/lread.c
@@ -3400,7 +3400,8 @@ substitute_object_recurse (Lisp_Object object, Lisp_Object placeholder, Lisp_Obj
3400 if (BOOL_VECTOR_P (subtree)) 3400 if (BOOL_VECTOR_P (subtree))
3401 return subtree; /* No sub-objects anyway. */ 3401 return subtree; /* No sub-objects anyway. */
3402 else if (CHAR_TABLE_P (subtree) || SUB_CHAR_TABLE_P (subtree) 3402 else if (CHAR_TABLE_P (subtree) || SUB_CHAR_TABLE_P (subtree)
3403 || COMPILEDP (subtree) || HASH_TABLE_P (subtree)) 3403 || COMPILEDP (subtree) || HASH_TABLE_P (subtree)
3404 || RECORDP (subtree))
3404 length = ASIZE (subtree) & PSEUDOVECTOR_SIZE_MASK; 3405 length = ASIZE (subtree) & PSEUDOVECTOR_SIZE_MASK;
3405 else if (VECTORP (subtree)) 3406 else if (VECTORP (subtree))
3406 length = ASIZE (subtree); 3407 length = ASIZE (subtree);