diff options
author | Paul A. Patience <paul@apatience.com> | 2022-02-14 10:41:07 +0000 |
---|---|---|
committer | Kaz Kylheku <kaz@kylheku.com> | 2022-02-14 05:36:24 -0800 |
commit | 8da8ba5a1cc7adf3ad5a4576510aae5c31ae0a6e (patch) | |
tree | 67a7dce6de0290e115617dddc2cb81b32874ef4c /mpi | |
parent | 9bf2278076ae65f63cf0aacb213c4608f9732bbb (diff) | |
download | txr-8da8ba5a1cc7adf3ad5a4576510aae5c31ae0a6e.tar.gz txr-8da8ba5a1cc7adf3ad5a4576510aae5c31ae0a6e.tar.bz2 txr-8da8ba5a1cc7adf3ad5a4576510aae5c31ae0a6e.zip |
Fix various instances of implicit conversions.
The implicit conversions were discovered with Clang's UBSan (with
the -fsanitizer=implicit-conversion option).
* gc.c (sweep_one): Convert only the inverted REACHABLE, since
block->t.type is already of the right type.
* hash.c (eql_hash, eq_hash, hash_iter_init, us_hash_iter_init):
Explicitly convert to ucnum.
* linenoise/linenoise.c (enable_raw_mode): Explicitly convert the
inverted flag sets to tcflag_t.
* mpi/mpi.c (mp_set_uintptr): Explicitly convert to uint_ptr_t.
* regex.c (char_set_add): Explicitly convert to bitcell_t.
* struct.c (struct_inst_hash): Correct type of hash from cnum to
ucnum.
Diffstat (limited to 'mpi')
-rw-r--r-- | mpi/mpi.c | 2 |
1 files changed, 1 insertions, 1 deletions
@@ -421,7 +421,7 @@ mp_err mp_set_uintptr(mp_int *mp, uint_ptr_t z) mp_err mp_set_intptr(mp_int *mp, int_ptr_t z) { - uint_ptr_t w = z; + uint_ptr_t w = convert(uint_ptr_t, z); uint_ptr_t v = z >= 0 ? w : -w; mp_err err = mp_set_uintptr(mp, v); |