lsb_err_value lsb_serialize_double(lsb_output_buffer *ob, double d) { if (isnan(d)) { return lsb_outputs(ob, "0/0", 3); } if (d == INFINITY) { return lsb_outputs(ob, "1/0", 3); } if (d == -INFINITY) { return lsb_outputs(ob, "-1/0", 4); } return lsb_outputfd(ob, d); }
lsb_err_value lsb_outputd(lsb_output_buffer *b, double d) { if (!b) return LSB_ERR_UTIL_NULL; if (isnan(d)) { return lsb_outputs(b, "nan", 3); } if (d == INFINITY) { return lsb_outputs(b, "inf", 3); } if (d == -INFINITY) { return lsb_outputs(b, "-inf", 4); } return lsb_outputfd(b, d); }