diff options
Diffstat (limited to 'src/alloc.c')
| -rw-r--r-- | src/alloc.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/alloc.c b/src/alloc.c index f203061161b..e556fc86a3b 100644 --- a/src/alloc.c +++ b/src/alloc.c | |||
| @@ -4641,8 +4641,10 @@ mark_maybe_object (Lisp_Object obj) | |||
| 4641 | break; | 4641 | break; |
| 4642 | } | 4642 | } |
| 4643 | 4643 | ||
| 4644 | void *po = (char *) ((intptr_t) (char *) XLP (obj) | 4644 | bool overflow |
| 4645 | + (offset - LISP_WORD_TAG (type_tag))); | 4645 | = INT_SUBTRACT_WRAPV (offset, LISP_WORD_TAG (type_tag), &offset); |
| 4646 | eassert (!overflow); | ||
| 4647 | void *po = (char *) ((intptr_t) (char *) XLP (obj) + offset); | ||
| 4646 | 4648 | ||
| 4647 | /* If the pointer is in the dump image and the dump has a record | 4649 | /* If the pointer is in the dump image and the dump has a record |
| 4648 | of the object starting at the place where the pointer points, we | 4650 | of the object starting at the place where the pointer points, we |