23 double r = trunc(
v.d);
24 if (
r >= (
double)INT64_MIN &&
r <= (
double)INT64_MAX) {
25 int64_t ii = (int64_t)
r;
26 if ((
double)ii ==
r) {
36 fprintf(stderr,
"Runtime type error: TRUNC expects number, got %s\n", value_type_name(
v.type));
Tagged union representing a Fun value.
void free_value(Value v)
Free dynamic storage owned by a Value.
Value make_float(double v)
Construct a Value representing a double-precision float.
Value make_int(int64_t v)
Construct a Value representing a 64-bit integer.