From e181b0717470194a853d5084f902fde539635822 Mon Sep 17 00:00:00 2001 From: Kaz Kylheku Date: Sun, 5 Apr 2020 19:46:56 -0700 Subject: warning cleanup: signed/unsigned in ternaries. This is the third round of an effort to enable GCC's -Wextra option. Instances of signed/unsigned mismatch between the branches of ternary conditionals are addressed. * ffi.c (pad_retval): Add cast into the consequent of the conditional so it yields size_t, like the alternative. * lib.c (split_str_keep): Likewise. (vector): Cast -1 to ucnum so it has the same type as the alloc_plus opposite to it. * parser.c (lino_getch): Add a cast to wint_t to match return value and opposite WEOF operand. * stream.c (generic_get_line): Likewise. * sysif.c (c_time): Convert both consequent and alternative to time_t to silence warning. --- lib.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'lib.c') diff --git a/lib.c b/lib.c index 1f8fadff..66e859f1 100644 --- a/lib.c +++ b/lib.c @@ -4255,7 +4255,7 @@ val split_str_keep(val str, val sep, val keep_sep) for (;;) { const wchar_t *psep = wcsstr(cstr, csep); - size_t span = (psep != 0) ? psep - cstr : wcslen(cstr); + size_t span = (psep != 0) ? (size_t) (psep - cstr) : wcslen(cstr); val piece = mkustring(num(span)); init_str(piece, cstr); iter = list_collect(iter, piece); @@ -7316,7 +7316,7 @@ val vector(val length, val initval) unsigned i; ucnum len = c_unum(length); ucnum alloc_plus = len + 2; - ucnum size = if3(alloc_plus > len, alloc_plus, -1); + ucnum size = if3(alloc_plus > len, alloc_plus, (ucnum) -1); val *v = coerce(val *, chk_xalloc(size, sizeof *v, lit("vector"))); val vec = make_obj(); vec->v.type = VEC; -- cgit v1.2.3