Mercurial > emacs
diff src/lisp.h @ 104313:73f76307d49b
* lisp.h (XFLOAT_DATA): Produce an rvalue by adding 0 to the value.
(XFLOAT_INIT): New macro for storing a float value.
* alloc.c (make_float, make_pure_float): Use XFLOAT_INIT.
* fns.c (sxhash): Copy out the value of a float in order to examine its bytes.
* dbusbind.c (xd_append_arg): Likewise.
author | Ken Raeburn <raeburn@raeburn.org> |
---|---|
date | Mon, 17 Aug 2009 01:25:54 +0000 |
parents | 6a1ccc3fe7f8 |
children | e6841301fe4d |
line wrap: on
line diff
--- a/src/lisp.h Mon Aug 17 00:48:14 2009 +0000 +++ b/src/lisp.h Mon Aug 17 01:25:54 2009 +0000 @@ -1377,9 +1377,12 @@ }; #ifdef HIDE_LISP_IMPLEMENTATION -#define XFLOAT_DATA(f) (XFLOAT (f)->u.data_) +#define XFLOAT_DATA(f) (XFLOAT (f)->u.data_ + 0) #else -#define XFLOAT_DATA(f) (XFLOAT (f)->u.data) +#define XFLOAT_DATA(f) (XFLOAT (f)->u.data + 0) +/* This should be used only in alloc.c, which always disables + HIDE_LISP_IMPLEMENTATION. */ +#define XFLOAT_INIT(f,n) (XFLOAT (f)->u.data = (n)) #endif /* A character, declared with the following typedef, is a member