struct Lisp_Float
{
struct lrecord_header lheader;
union { double d; struct Lisp_Float *next; } data;
};
#define float_next(f) ((f)->data.next)
#define float_data(f) ((f)->data.d)
alloc.c::
Lisp_Object
make_float (double float_value)
{
[...]
float_next (f) = ((struct Lisp_Float *) -1);
float_data (f) = float_value;
[...]
}
static Lisp_Object
make_pure_float (double num)
{
[...]
float_next (f) = ((struct Lisp_Float *) -1);
float_data (f) = num;
[...]
}
There are no other occurences of "float_next" in the code that I could
find. Do you agree with me that the "next" field is useless ?
If yes, I'll make the patch.
OG.