*/
(subr))
{
- CONST char *prompt;
+ const char *prompt;
CHECK_SUBR (subr);
prompt = XSUBR (subr)->prompt;
return prompt ? list2 (Qinteractive, build_string (prompt)) : Qnil;
}
if (errorp && UNBOUNDP (hare))
- signal_void_function_error (object);
+ return signal_void_function_error (object);
return hare;
}
{
CHECK_CHAR_COERCE_INT (newval);
if (idx >= XSTRING_CHAR_LENGTH (array)) goto range_error;
- set_string_char (XSTRING (array), idx, XCHAR (newval));
+ set_string_char (XSTRING (array), idx, (unsigned char) XCHAR (newval));
bump_string_modiff (array);
}
else
p++;
#ifdef LISP_FLOAT_TYPE
- if (isfloat_string (p))
+ if (isfloat_string (p) && b == 10)
return make_float (atof (p));
#endif /* LISP_FLOAT_TYPE */
}
static const struct lrecord_description weak_list_description[] = {
- { XD_LISP_OBJECT, offsetof(struct weak_list, list), 1 },
- { XD_LO_LINK, offsetof(struct weak_list, next_weak) },
+ { XD_LISP_OBJECT, offsetof (struct weak_list, list) },
+ { XD_LO_LINK, offsetof (struct weak_list, next_weak) },
{ XD_END }
};
void
syms_of_data (void)
{
+ INIT_LRECORD_IMPLEMENTATION (weak_list);
+
defsymbol (&Qquote, "quote");
defsymbol (&Qlambda, "lambda");
defsymbol (&Qlistp, "listp");