summaryrefslogtreecommitdiffstats
path: root/itypes.c
diff options
context:
space:
mode:
authorKaz Kylheku <kaz@kylheku.com>2022-01-06 20:03:25 -0800
committerKaz Kylheku <kaz@kylheku.com>2022-01-06 20:03:25 -0800
commit07a0d613fceaf12fd7bf2f900223ac925908c76e (patch)
tree7d8ded9098d1e715af35b5cc8b6e7ea97097f543 /itypes.c
parent5983e14cf97bd1302151ffc3dbc53451acdc87e9 (diff)
downloadtxr-07a0d613fceaf12fd7bf2f900223ac925908c76e.tar.gz
txr-07a0d613fceaf12fd7bf2f900223ac925908c76e.tar.bz2
txr-07a0d613fceaf12fd7bf2f900223ac925908c76e.zip
Casts have crept into the code not wrapped by macros.
It is against TXR coding conventions to use the C cast notation. The usage creeps into the code. To find instances of this, we must compile using GNU g++, and add -Wold-style-cast via EXTRA_FLAGS. * eval.c (prof_call): Use macro instead of cast. * ffi.c (pad_retval, ffi_varray_alloc, make_ffi_type_union, carray_dup, carray_replace, uint_carray, int_carray, put_carray, fill_carray): Likewise. * itypes.c (c_i64, c_u64): Likewise. * lib.c (cyr, chk_xalloc, spilt_str_keep, vector, cobj_register): Likewise. * linenoise.c (record_undo): Likewise. Also, drop one superfluous cast: wstrdup_fn returns wchar_t *. (flash, edit_insert, edit_insert_str): Use macro instead of cast. * mpi/mpi.c (s_mp_ispow2d): Likewise. * parser.c (lino_getch): Likewise. * rand.c (make_random_state, random_buf): Likewise. * stream.c (generic_get_line, do_parse_mode): Likewise. * struct.c (get_duplicate_supers, call_initfun_chain, call_postinitfun_chain): Likewise. * sysif.c (c_time): Likewise. * tree.c (tr_insert): Likewise.
Diffstat (limited to 'itypes.c')
-rw-r--r--itypes.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/itypes.c b/itypes.c
index a72444e8..6fc2d24f 100644
--- a/itypes.c
+++ b/itypes.c
@@ -121,18 +121,23 @@ u64_t c_u64(val n, val self)
i64_t c_i64(val n, val self)
{
dbl_cnum v = c_dbl_num(n);
- if (v < (- (dbl_cnum) 0x7FFFFFFFFFFFFFFF - 1) || v > (dbl_cnum) 0x7FFFFFFFFFFFFFFF)
+ if (v < (- convert(dbl_cnum, 0x7FFFFFFFFFFFFFFF) - 1) ||
+ v > convert(dbl_cnum, 0x7FFFFFFFFFFFFFFF))
+ {
uw_throwf(error_s, lit("~a: value ~s is out of signed 64 bit range"),
self, n, nao);
+ }
return v;
}
u64_t c_u64(val n, val self)
{
dbl_ucnum v = c_dbl_unum(n);
- if (v > (dbl_ucnum) 0xFFFFFFFFFFFFFFFF)
+ if (v > convert(dbl_ucnum, 0xFFFFFFFFFFFFFFFF))
+ {
uw_throwf(error_s, lit("~a: value ~s is out of unsigned 64 bit range"),
self, n, nao);
+ }
return v;
}
#else