Mercurial > emacs
changeset 49139:e807249d08c1
(pure_alloc): Correct alignment for Lisp_Floats.
author | Andreas Schwab <schwab@suse.de> |
---|---|
date | Fri, 10 Jan 2003 20:08:32 +0000 |
parents | f955735e16d8 |
children | 23177b864eef |
files | src/alloc.c |
diffstat | 1 files changed, 7 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/src/alloc.c Fri Jan 10 16:42:27 2003 +0000 +++ b/src/alloc.c Fri Jan 10 20:08:32 2003 +0000 @@ -1,5 +1,5 @@ /* Storage allocation and gc for GNU Emacs Lisp interpreter. - Copyright (C) 1985, 86, 88, 93, 94, 95, 97, 98, 1999, 2000, 2001, 2002 + Copyright (C) 1985, 86, 88, 93, 94, 95, 97, 98, 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc. This file is part of GNU Emacs. @@ -3844,7 +3844,12 @@ #else alignment = sizeof (struct Lisp_Float); #endif - pure_bytes_used = ALIGN (pure_bytes_used, alignment); + /* Make sure beg + pure_bytes_used is correctly aligned for a + Lisp_Float, which might need stricter alignment than + EMACS_INT. */ + pure_bytes_used + = (ALIGN ((EMACS_UINT) (beg + pure_bytes_used), alignment) + - (EMACS_UINT) beg); } nbytes = ALIGN (size, sizeof (EMACS_INT));