Module Name: src Committed By: christos Date: Tue Aug 16 16:25:16 UTC 2011
Modified Files: src/lib/libedit: Makefile chared.c chartype.c eln.c filecomplete.c keymacro.c map.c parse.c read.c readline.c search.c terminal.c tokenizer.c tty.c tty.h vi.c Log Message: re-enable -Wconversion To generate a diff of this commit: cvs rdiff -u -r1.48 -r1.49 src/lib/libedit/Makefile cvs rdiff -u -r1.34 -r1.35 src/lib/libedit/chared.c cvs rdiff -u -r1.9 -r1.10 src/lib/libedit/chartype.c cvs rdiff -u -r1.12 -r1.13 src/lib/libedit/eln.c src/lib/libedit/tty.h cvs rdiff -u -r1.29 -r1.30 src/lib/libedit/filecomplete.c \ src/lib/libedit/map.c cvs rdiff -u -r1.6 -r1.7 src/lib/libedit/keymacro.c cvs rdiff -u -r1.25 -r1.26 src/lib/libedit/parse.c cvs rdiff -u -r1.66 -r1.67 src/lib/libedit/read.c cvs rdiff -u -r1.98 -r1.99 src/lib/libedit/readline.c cvs rdiff -u -r1.28 -r1.29 src/lib/libedit/search.c cvs rdiff -u -r1.7 -r1.8 src/lib/libedit/terminal.c cvs rdiff -u -r1.20 -r1.21 src/lib/libedit/tokenizer.c cvs rdiff -u -r1.39 -r1.40 src/lib/libedit/tty.c src/lib/libedit/vi.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/lib/libedit/Makefile diff -u src/lib/libedit/Makefile:1.48 src/lib/libedit/Makefile:1.49 --- src/lib/libedit/Makefile:1.48 Tue Aug 2 13:22:02 2011 +++ src/lib/libedit/Makefile Tue Aug 16 12:25:15 2011 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.48 2011/08/02 17:22:02 joerg Exp $ +# $NetBSD: Makefile,v 1.49 2011/08/16 16:25:15 christos Exp $ # @(#)Makefile 8.1 (Berkeley) 6/4/93 USE_SHLIBDIR= yes @@ -12,9 +12,7 @@ .include "bsd.own.mk" COPTS+= -Wunused-parameter -.if defined(HAVE_GCC) && ${HAVE_GCC} != 45 CWARNFLAGS.gcc+= -Wconversion -.endif OSRCS= chared.c common.c el.c emacs.c fcns.c filecomplete.c help.c \ hist.c keymacro.c map.c chartype.c \ Index: src/lib/libedit/chared.c diff -u src/lib/libedit/chared.c:1.34 src/lib/libedit/chared.c:1.35 --- src/lib/libedit/chared.c:1.34 Fri Jul 29 19:44:44 2011 +++ src/lib/libedit/chared.c Tue Aug 16 12:25:15 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: chared.c,v 1.34 2011/07/29 23:44:44 christos Exp $ */ +/* $NetBSD: chared.c,v 1.35 2011/08/16 16:25:15 christos Exp $ */ /*- * Copyright (c) 1992, 1993 @@ -37,7 +37,7 @@ #if 0 static char sccsid[] = "@(#)chared.c 8.1 (Berkeley) 6/4/93"; #else -__RCSID("$NetBSD: chared.c,v 1.34 2011/07/29 23:44:44 christos Exp $"); +__RCSID("$NetBSD: chared.c,v 1.35 2011/08/16 16:25:15 christos Exp $"); #endif #endif /* not lint && not SCCSID */ @@ -63,8 +63,8 @@ size_t size; /* Save entire line for undo */ - size = el->el_line.lastchar - el->el_line.buffer; - vu->len = size; + size = (size_t)(el->el_line.lastchar - el->el_line.buffer); + vu->len = (ssize_t)size; vu->cursor = (int)(el->el_line.cursor - el->el_line.buffer); (void)memcpy(vu->buf, el->el_line.buffer, size * sizeof(*vu->buf)); @@ -84,7 +84,7 @@ { c_kill_t *k = &el->el_chared.c_kill; - (void)memcpy(k->buf, ptr, size * sizeof(*k->buf)); + (void)memcpy(k->buf, ptr, (size_t)size * sizeof(*k->buf)); k->last = k->buf + size; } @@ -500,7 +500,7 @@ size_t sz, newsz; Char *newbuffer, *oldbuf, *oldkbuf; - sz = el->el_line.limit - el->el_line.buffer + EL_LEAVE; + sz = (size_t)(el->el_line.limit - el->el_line.buffer + EL_LEAVE); newsz = sz * 2; /* * If newly required length is longer than current buffer, we need @@ -655,8 +655,8 @@ Char *cp = el->el_line.buffer; if (prompt) { - len = Strlen(prompt); - (void)memcpy(cp, prompt, len * sizeof(*cp)); + len = (ssize_t)Strlen(prompt); + (void)memcpy(cp, prompt, (size_t)len * sizeof(*cp)); cp += len; } len = 0; Index: src/lib/libedit/chartype.c diff -u src/lib/libedit/chartype.c:1.9 src/lib/libedit/chartype.c:1.10 --- src/lib/libedit/chartype.c:1.9 Fri Jul 29 19:44:44 2011 +++ src/lib/libedit/chartype.c Tue Aug 16 12:25:15 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: chartype.c,v 1.9 2011/07/29 23:44:44 christos Exp $ */ +/* $NetBSD: chartype.c,v 1.10 2011/08/16 16:25:15 christos Exp $ */ /*- * Copyright (c) 2009 The NetBSD Foundation, Inc. @@ -38,7 +38,7 @@ */ #include "config.h" #if !defined(lint) && !defined(SCCSID) -__RCSID("$NetBSD: chartype.c,v 1.9 2011/07/29 23:44:44 christos Exp $"); +__RCSID("$NetBSD: chartype.c,v 1.10 2011/08/16 16:25:15 christos Exp $"); #endif /* not lint && not SCCSID */ #include "el.h" #include <stdlib.h> @@ -89,7 +89,7 @@ dst = conv->cbuff; while (*s) { - used = conv->csize - (dst - conv->cbuff); + used = (ssize_t)(conv->csize - (size_t)(dst - conv->cbuff)); if (used < 5) { used = dst - conv->cbuff; ct_conv_buff_resize(conv, conv->csize + CT_BUFSIZ, @@ -149,7 +149,7 @@ if (!conv->wsize) return NULL; - wargv = el_malloc(argc * sizeof(*wargv)); + wargv = el_malloc((size_t)argc * sizeof(*wargv)); for (i = 0, p = conv->wbuff; i < argc; ++i) { if (!argv[i]) { /* don't pass null pointers to mbstowcs */ @@ -157,14 +157,14 @@ continue; } else { wargv[i] = p; - bytes = mbstowcs(p, argv[i], bufspace); + bytes = (ssize_t)mbstowcs(p, argv[i], bufspace); } if (bytes == -1) { el_free(wargv); return NULL; } else bytes++; /* include '\0' in the count */ - bufspace -= bytes; + bufspace -= (size_t)bytes; p += bytes; } @@ -221,7 +221,7 @@ } dst = buff; while (*s) { - used = ct_visual_char(dst, buffsize - (dst - buff), *s); + used = ct_visual_char(dst, buffsize - (size_t)(dst - buff), *s); if (used == -1) { /* failed to encode, need more buffer space */ used = dst - buff; buffsize += CT_BUFSIZ; Index: src/lib/libedit/eln.c diff -u src/lib/libedit/eln.c:1.12 src/lib/libedit/eln.c:1.13 --- src/lib/libedit/eln.c:1.12 Thu Jul 28 16:50:55 2011 +++ src/lib/libedit/eln.c Tue Aug 16 12:25:15 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: eln.c,v 1.12 2011/07/28 20:50:55 christos Exp $ */ +/* $NetBSD: eln.c,v 1.13 2011/08/16 16:25:15 christos Exp $ */ /*- * Copyright (c) 2009 The NetBSD Foundation, Inc. @@ -34,7 +34,7 @@ */ #include "config.h" #if !defined(lint) && !defined(SCCSID) -__RCSID("$NetBSD: eln.c,v 1.12 2011/07/28 20:50:55 christos Exp $"); +__RCSID("$NetBSD: eln.c,v 1.13 2011/08/16 16:25:15 christos Exp $"); #endif /* not lint && not SCCSID */ #include "histedit.h" @@ -57,7 +57,7 @@ el->el_flags &= ~IGNORE_EXTCHARS; if (num_read > 0) - *cp = (unsigned char)wc; + *cp = (char)wc; return num_read; } @@ -237,7 +237,7 @@ case EL_PROMPT_ESC: /* el_pfunc_t, char */ case EL_RPROMPT_ESC: { el_pfunc_t p = va_arg(ap, el_pfunc_t); - char c = va_arg(ap, int); + char c = (char)va_arg(ap, int); ret = prompt_set(el, p, c, op, 0); break; } @@ -277,7 +277,7 @@ char *c = va_arg(ap, char *); wchar_t wc = 0; ret = prompt_get(el, p, &wc, op); - *c = (unsigned char)wc; + *c = (char)wc; break; } Index: src/lib/libedit/tty.h diff -u src/lib/libedit/tty.h:1.12 src/lib/libedit/tty.h:1.13 --- src/lib/libedit/tty.h:1.12 Wed Dec 30 17:37:40 2009 +++ src/lib/libedit/tty.h Tue Aug 16 12:25:15 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: tty.h,v 1.12 2009/12/30 22:37:40 christos Exp $ */ +/* $NetBSD: tty.h,v 1.13 2011/08/16 16:25:15 christos Exp $ */ /*- * Copyright (c) 1992, 1993 @@ -431,7 +431,7 @@ #define C_MIN 23 #define C_TIME 24 #define C_NCC 25 -#define C_SH(A) (1 << (A)) +#define C_SH(A) ((unsigned int)(1 << (A))) /* * Terminal dependend data structures Index: src/lib/libedit/filecomplete.c diff -u src/lib/libedit/filecomplete.c:1.29 src/lib/libedit/filecomplete.c:1.30 --- src/lib/libedit/filecomplete.c:1.29 Fri Jul 29 19:44:44 2011 +++ src/lib/libedit/filecomplete.c Tue Aug 16 12:25:15 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: filecomplete.c,v 1.29 2011/07/29 23:44:44 christos Exp $ */ +/* $NetBSD: filecomplete.c,v 1.30 2011/08/16 16:25:15 christos Exp $ */ /*- * Copyright (c) 1997 The NetBSD Foundation, Inc. @@ -31,7 +31,7 @@ #include "config.h" #if !defined(lint) && !defined(SCCSID) -__RCSID("$NetBSD: filecomplete.c,v 1.29 2011/07/29 23:44:44 christos Exp $"); +__RCSID("$NetBSD: filecomplete.c,v 1.30 2011/08/16 16:25:15 christos Exp $"); #endif /* not lint && not SCCSID */ #include <sys/types.h> @@ -86,7 +86,8 @@ if (temp == NULL) return NULL; } else { - len = temp - txt + 1; /* text until string after slash */ + /* text until string after slash */ + len = (size_t)(temp - txt + 1); temp = el_malloc(len * sizeof(*temp)); if (temp == NULL) return NULL; @@ -162,7 +163,7 @@ } filename = nptr; (void)strcpy(filename, temp); - len = temp - text; /* including last slash */ + len = (size_t)(temp - text); /* including last slash */ nptr = el_realloc(dirname, (len + 1) * sizeof(*nptr)); @@ -371,7 +372,7 @@ * Find out how many entries can be put on one line; count * with one space between strings the same way it's printed. */ - cols = screenwidth / (width + 1); + cols = (size_t)screenwidth / (width + 1); if (cols == 0) cols = 1; @@ -444,7 +445,7 @@ && (!special_prefixes || !Strchr(special_prefixes, ctemp[-1]) ) ) ctemp--; - len = li->cursor - ctemp; + len = (size_t)(li->cursor - ctemp); temp = el_malloc((len + 1) * sizeof(*temp)); (void)Strncpy(temp, ctemp, len); temp[len] = '\0'; @@ -458,13 +459,15 @@ if (attempted_completion_function) { int cur_off = (int)(li->cursor - li->buffer); - matches = (*attempted_completion_function) (ct_encode_string(temp, &el->el_scratch), - (int)(cur_off - len), cur_off); + matches = (*attempted_completion_function)( + ct_encode_string(temp, &el->el_scratch), + cur_off - (int)len, cur_off); } else matches = 0; if (!attempted_completion_function || (over != NULL && !*over && !matches)) - matches = completion_matches(ct_encode_string(temp, &el->el_scratch), complet_func); + matches = completion_matches( + ct_encode_string(temp, &el->el_scratch), complet_func); if (over != NULL) *over = 0; @@ -509,7 +512,7 @@ maxlen = match_len; } /* matches[1] through matches[i-1] are available */ - matches_num = i - 1; + matches_num = (size_t)(i - 1); /* newline to get on next line from command line */ (void)fprintf(el->el_outfile, "\n"); Index: src/lib/libedit/map.c diff -u src/lib/libedit/map.c:1.29 src/lib/libedit/map.c:1.30 --- src/lib/libedit/map.c:1.29 Fri Jul 29 11:16:33 2011 +++ src/lib/libedit/map.c Tue Aug 16 12:25:15 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: map.c,v 1.29 2011/07/29 15:16:33 christos Exp $ */ +/* $NetBSD: map.c,v 1.30 2011/08/16 16:25:15 christos Exp $ */ /*- * Copyright (c) 1992, 1993 @@ -37,7 +37,7 @@ #if 0 static char sccsid[] = "@(#)map.c 8.1 (Berkeley) 6/4/93"; #else -__RCSID("$NetBSD: map.c,v 1.29 2011/07/29 15:16:33 christos Exp $"); +__RCSID("$NetBSD: map.c,v 1.30 2011/08/16 16:25:15 christos Exp $"); #endif #endif /* not lint && not SCCSID */ @@ -1375,7 +1375,7 @@ map[(unsigned char) *in] = ED_SEQUENCE_LEAD_IN; } else { keymacro_clear(el, map, in); - map[(unsigned char) *in] = cmd; + map[(unsigned char) *in] = (el_action_t)cmd; } } break; @@ -1395,7 +1395,7 @@ map_addfunc(EditLine *el, const Char *name, const Char *help, el_func_t func) { void *p; - int nf = el->el_map.nfunc + 1; + size_t nf = (size_t)el->el_map.nfunc + 1; if (name == NULL || help == NULL || func == NULL) return -1; @@ -1409,11 +1409,11 @@ return -1; el->el_map.help = p; - nf = el->el_map.nfunc; + nf = (size_t)el->el_map.nfunc; el->el_map.func[nf] = func; el->el_map.help[nf].name = name; - el->el_map.help[nf].func = nf; + el->el_map.help[nf].func = (int)nf; el->el_map.help[nf].description = help; el->el_map.nfunc++; Index: src/lib/libedit/keymacro.c diff -u src/lib/libedit/keymacro.c:1.6 src/lib/libedit/keymacro.c:1.7 --- src/lib/libedit/keymacro.c:1.6 Fri Jul 29 19:44:44 2011 +++ src/lib/libedit/keymacro.c Tue Aug 16 12:25:15 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: keymacro.c,v 1.6 2011/07/29 23:44:44 christos Exp $ */ +/* $NetBSD: keymacro.c,v 1.7 2011/08/16 16:25:15 christos Exp $ */ /*- * Copyright (c) 1992, 1993 @@ -37,7 +37,7 @@ #if 0 static char sccsid[] = "@(#)key.c 8.1 (Berkeley) 6/4/93"; #else -__RCSID("$NetBSD: keymacro.c,v 1.6 2011/07/29 23:44:44 christos Exp $"); +__RCSID("$NetBSD: keymacro.c,v 1.7 2011/08/16 16:25:15 christos Exp $"); #endif #endif /* not lint && not SCCSID */ @@ -510,11 +510,11 @@ if (ptr->next != NULL) /* not yet at leaf */ return (node_lookup(el, str + 1, ptr->next, - used + cnt)); + (size_t)used + cnt)); else { /* next node is null so key should be complete */ if (str[1] == 0) { - size_t px = cnt + used; + size_t px = cnt + (size_t)used; el->el_keymacro.buf[px] = '"'; el->el_keymacro.buf[px + 1] = '\0'; keymacro_kprint(el, el->el_keymacro.buf, @@ -565,11 +565,11 @@ ptr->ch); if (ptr->next == NULL) { /* print this key and function */ - el->el_keymacro.buf[cnt + used ] = '"'; - el->el_keymacro.buf[cnt + used + 1] = '\0'; + el->el_keymacro.buf[cnt + (size_t)used ] = '"'; + el->el_keymacro.buf[cnt + (size_t)used + 1] = '\0'; keymacro_kprint(el, el->el_keymacro.buf, &ptr->val, ptr->type); } else - (void) node_enum(el, ptr->next, cnt + used); + (void) node_enum(el, ptr->next, cnt + (size_t)used); /* go to sibling if there is one */ if (ptr->sibling) Index: src/lib/libedit/parse.c diff -u src/lib/libedit/parse.c:1.25 src/lib/libedit/parse.c:1.26 --- src/lib/libedit/parse.c:1.25 Fri Jul 29 11:16:33 2011 +++ src/lib/libedit/parse.c Tue Aug 16 12:25:15 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: parse.c,v 1.25 2011/07/29 15:16:33 christos Exp $ */ +/* $NetBSD: parse.c,v 1.26 2011/08/16 16:25:15 christos Exp $ */ /*- * Copyright (c) 1992, 1993 @@ -37,7 +37,7 @@ #if 0 static char sccsid[] = "@(#)parse.c 8.1 (Berkeley) 6/4/93"; #else -__RCSID("$NetBSD: parse.c,v 1.25 2011/07/29 15:16:33 christos Exp $"); +__RCSID("$NetBSD: parse.c,v 1.26 2011/08/16 16:25:15 christos Exp $"); #endif #endif /* not lint && not SCCSID */ @@ -108,14 +108,14 @@ if (ptr == argv[0]) return 0; - l = ptr - argv[0] - 1; + l = (size_t)(ptr - argv[0] - 1); tprog = el_malloc((l + 1) * sizeof(*tprog)); if (tprog == NULL) return 0; (void) Strncpy(tprog, argv[0], l); tprog[l] = '\0'; ptr++; - l = el_match(el->el_prog, tprog); + l = (size_t)el_match(el->el_prog, tprog); el_free(tprog); if (!l) return 0; @@ -214,7 +214,7 @@ } c = (c << 3) | (ch - '0'); } - if ((c & 0xffffff00) != 0) + if ((c & (wint_t)0xffffff00) != (wint_t)0) return -1; --p; break; Index: src/lib/libedit/read.c diff -u src/lib/libedit/read.c:1.66 src/lib/libedit/read.c:1.67 --- src/lib/libedit/read.c:1.66 Fri Jul 29 19:44:44 2011 +++ src/lib/libedit/read.c Tue Aug 16 12:25:15 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: read.c,v 1.66 2011/07/29 23:44:44 christos Exp $ */ +/* $NetBSD: read.c,v 1.67 2011/08/16 16:25:15 christos Exp $ */ /*- * Copyright (c) 1992, 1993 @@ -37,7 +37,7 @@ #if 0 static char sccsid[] = "@(#)read.c 8.1 (Berkeley) 6/4/93"; #else -__RCSID("$NetBSD: read.c,v 1.66 2011/07/29 23:44:44 christos Exp $"); +__RCSID("$NetBSD: read.c,v 1.67 2011/08/16 16:25:15 christos Exp $"); #endif #endif /* not lint && not SCCSID */ @@ -491,7 +491,7 @@ while ((num = (*el->el_read.read_char)(el, cp)) == 1) { /* make sure there is space for next character */ if (cp + 1 >= el->el_line.limit) { - idx = (cp - el->el_line.buffer); + idx = (size_t)(cp - el->el_line.buffer); if (!ch_enlargebufs(el, (size_t)2)) break; cp = &el->el_line.buffer[idx]; @@ -543,7 +543,7 @@ while ((num = (*el->el_read.read_char)(el, cp)) == 1) { /* make sure there is space next character */ if (cp + 1 >= el->el_line.limit) { - idx = (cp - el->el_line.buffer); + idx = (size_t)(cp - el->el_line.buffer); if (!ch_enlargebufs(el, (size_t)2)) break; cp = &el->el_line.buffer[idx]; Index: src/lib/libedit/readline.c diff -u src/lib/libedit/readline.c:1.98 src/lib/libedit/readline.c:1.99 --- src/lib/libedit/readline.c:1.98 Fri Jul 29 19:44:44 2011 +++ src/lib/libedit/readline.c Tue Aug 16 12:25:15 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: readline.c,v 1.98 2011/07/29 23:44:44 christos Exp $ */ +/* $NetBSD: readline.c,v 1.99 2011/08/16 16:25:15 christos Exp $ */ /*- * Copyright (c) 1997 The NetBSD Foundation, Inc. @@ -31,7 +31,7 @@ #include "config.h" #if !defined(lint) && !defined(SCCSID) -__RCSID("$NetBSD: readline.c,v 1.98 2011/07/29 23:44:44 christos Exp $"); +__RCSID("$NetBSD: readline.c,v 1.99 2011/08/16 16:25:15 christos Exp $"); #endif /* not lint && not SCCSID */ #include <sys/types.h> @@ -209,7 +209,7 @@ i = (*rl_getc_function)(NULL); if (i == -1) return 0; - *c = i; + *c = (char)i; return 1; } @@ -551,7 +551,7 @@ break; idx++; } - len = idx - begin; + len = (size_t)idx - (size_t)begin; if (sub && cmd[idx] == '?') idx++; if (sub && len == 0 && last_search_pat && *last_search_pat) @@ -665,7 +665,7 @@ qchar = (offs > 0 && command[offs - 1] == '"')? '"':0; ptr = get_history_event(command + offs, &idx, qchar); } - has_mods = command[offs + idx] == ':'; + has_mods = command[offs + (size_t)idx] == ':'; } if (ptr == NULL && aptr == NULL) @@ -1031,14 +1031,14 @@ (size_t)end > max || start > end) goto out; - for (i = start, len = 0; i <= (size_t)end; i++) + for (i = (size_t)start, len = 0; i <= (size_t)end; i++) len += strlen(arr[i]) + 1; len++; result = el_malloc(len * sizeof(*result)); if (result == NULL) goto out; - for (i = start, len = 0; i <= (size_t)end; i++) { + for (i = (size_t)start, len = 0; i <= (size_t)end; i++) { (void)strcpy(result + len, arr[i]); len += strlen(arr[i]); if (i < (size_t)end) @@ -1088,15 +1088,15 @@ if (idx + 2 >= size) { char **nresult; size <<= 1; - nresult = el_realloc(result, size * sizeof(*nresult)); + nresult = el_realloc(result, (size_t)size * sizeof(*nresult)); if (nresult == NULL) { el_free(result); return NULL; } result = nresult; } - len = i - start; - temp = el_malloc((len + 1) * sizeof(*temp)); + len = (size_t)i - (size_t)start; + temp = el_malloc((size_t)(len + 1) * sizeof(*temp)); if (temp == NULL) { for (i = 0; i < idx; i++) el_free(result[i]); @@ -1196,7 +1196,7 @@ ret = errno; break; } - left = fread(buf, (size_t)1, sizeof(buf), fp); + left = (ssize_t)fread(buf, (size_t)1, sizeof(buf), fp); if (ferror(fp)) { ret = errno; break; @@ -1268,7 +1268,7 @@ } for(;;) { - if ((left = fread(buf, (size_t)1, sizeof(buf), tp)) == 0) { + if ((left = (ssize_t)fread(buf, (size_t)1, sizeof(buf), tp)) == 0) { if (ferror(fp)) ret = errno; break; @@ -1740,7 +1740,7 @@ __attribute__((__unused__))) { static char buf[2]; - buf[0] = rl_completion_append_character; + buf[0] = (char)rl_completion_append_character; buf[1] = '\0'; return buf; } @@ -1856,7 +1856,7 @@ rl_initialize(); /* XXX - int -> char conversion can lose on multichars */ - arr[0] = c; + arr[0] = (char)c; arr[1] = '\0'; for (; count > 0; count--) @@ -1969,7 +1969,7 @@ rl_redisplay(void) { char a[2]; - a[0] = e->el_tty.t_c[TS_IO][C_REPRINT]; + a[0] = (char)e->el_tty.t_c[TS_IO][C_REPRINT]; a[1] = '\0'; el_push(e, a); } @@ -1978,7 +1978,7 @@ rl_get_previous_history(int count, int key) { char a[2]; - a[0] = key; + a[0] = (char)key; a[1] = '\0'; while (count--) el_push(e, a); @@ -2033,7 +2033,7 @@ { char buf[2]; - buf[0] = c; + buf[0] = (char)c; buf[1] = '\0'; el_insertstr(e, buf); } Index: src/lib/libedit/search.c diff -u src/lib/libedit/search.c:1.28 src/lib/libedit/search.c:1.29 --- src/lib/libedit/search.c:1.28 Fri Jul 29 19:44:45 2011 +++ src/lib/libedit/search.c Tue Aug 16 12:25:15 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: search.c,v 1.28 2011/07/29 23:44:45 christos Exp $ */ +/* $NetBSD: search.c,v 1.29 2011/08/16 16:25:15 christos Exp $ */ /*- * Copyright (c) 1992, 1993 @@ -37,7 +37,7 @@ #if 0 static char sccsid[] = "@(#)search.c 8.1 (Berkeley) 6/4/93"; #else -__RCSID("$NetBSD: search.c,v 1.28 2011/07/29 23:44:45 christos Exp $"); +__RCSID("$NetBSD: search.c,v 1.29 2011/08/16 16:25:15 christos Exp $"); #endif #endif /* not lint && not SCCSID */ @@ -175,7 +175,8 @@ { if (el->el_state.lastcmd != ED_SEARCH_PREV_HISTORY && el->el_state.lastcmd != ED_SEARCH_NEXT_HISTORY) { - el->el_search.patlen = EL_CURSOR(el) - el->el_line.buffer; + el->el_search.patlen = + (size_t)(EL_CURSOR(el) - el->el_line.buffer); if (el->el_search.patlen >= EL_BUFSIZ) el->el_search.patlen = EL_BUFSIZ - 1; if (el->el_search.patlen != 0) { @@ -386,9 +387,10 @@ /* avoid c_setpat */ el->el_state.lastcmd = (el_action_t) newdir; - ret = newdir == ED_SEARCH_PREV_HISTORY ? + ret = (el_action_t) + (newdir == ED_SEARCH_PREV_HISTORY ? ed_search_prev_history(el, 0) : - ed_search_next_history(el, 0); + ed_search_next_history(el, 0)); if (ret != CC_ERROR) { el->el_line.cursor = newdir == ED_SEARCH_PREV_HISTORY ? @@ -453,7 +455,7 @@ { Char ch; Char tmpbuf[EL_BUFSIZ]; - int tmplen; + ssize_t tmplen; #ifdef ANCHOR tmpbuf[0] = '.'; @@ -502,7 +504,7 @@ #endif tmpbuf[tmplen] = '\0'; (void) Strncpy(el->el_search.patbuf, tmpbuf, EL_BUFSIZ - 1); - el->el_search.patlen = tmplen; + el->el_search.patlen = (size_t)tmplen; } el->el_state.lastcmd = (el_action_t) dir; /* avoid c_setpat */ el->el_line.cursor = el->el_line.lastchar = el->el_line.buffer; @@ -608,7 +610,7 @@ /* Save for ';' and ',' commands */ el->el_search.chacha = ch; el->el_search.chadir = direction; - el->el_search.chatflg = tflag; + el->el_search.chatflg = (char)tflag; cp = el->el_line.cursor; while (count--) { Index: src/lib/libedit/terminal.c diff -u src/lib/libedit/terminal.c:1.7 src/lib/libedit/terminal.c:1.8 --- src/lib/libedit/terminal.c:1.7 Fri Jul 29 19:44:45 2011 +++ src/lib/libedit/terminal.c Tue Aug 16 12:25:15 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: terminal.c,v 1.7 2011/07/29 23:44:45 christos Exp $ */ +/* $NetBSD: terminal.c,v 1.8 2011/08/16 16:25:15 christos Exp $ */ /*- * Copyright (c) 1992, 1993 @@ -37,7 +37,7 @@ #if 0 static char sccsid[] = "@(#)term.c 8.2 (Berkeley) 4/30/95"; #else -__RCSID("$NetBSD: terminal.c,v 1.7 2011/07/29 23:44:45 christos Exp $"); +__RCSID("$NetBSD: terminal.c,v 1.8 2011/08/16 16:25:15 christos Exp $"); #endif #endif /* not lint && not SCCSID */ @@ -379,7 +379,7 @@ /* XXX strcpy is safe */ (void) strcpy(*str = &el->el_terminal.t_buf[el->el_terminal.t_loc], cap); - el->el_terminal.t_loc += (int)clen + 1; /* one for \0 */ + el->el_terminal.t_loc += (size_t)clen + 1; /* one for \0 */ return; } @@ -413,11 +413,11 @@ Char **b; coord_t *c = &el->el_terminal.t_size; - b = el_malloc(sizeof(*b) * (c->v + 1)); + b = el_malloc(sizeof(*b) * (size_t)(c->v + 1)); if (b == NULL) return -1; for (i = 0; i < c->v; i++) { - b[i] = el_malloc(sizeof(**b) * (c->h + 1)); + b[i] = el_malloc(sizeof(**b) * (size_t)(c->h + 1)); if (b[i] == NULL) { while (--i >= 0) el_free(b[i]); @@ -428,11 +428,11 @@ b[c->v] = NULL; el->el_display = b; - b = el_malloc(sizeof(*b) * (c->v + 1)); + b = el_malloc(sizeof(*b) * (size_t)(c->v + 1)); if (b == NULL) return -1; for (i = 0; i < c->v; i++) { - b[i] = el_malloc(sizeof(**b) * (c->h + 1)); + b[i] = el_malloc(sizeof(**b) * (size_t)(c->h + 1)); if (b[i] == NULL) { while (--i >= 0) el_free(b[i]); @@ -496,7 +496,8 @@ while (del > 0) { if (EL_HAS_AUTO_MARGINS && el->el_display[el->el_cursor.v][0] != '\0') { - size_t h = el->el_terminal.t_size.h - 1; + size_t h = (size_t) + (el->el_terminal.t_size.h - 1); #ifdef WIDECHAR for (; h > 0 && el->el_display[el->el_cursor.v][h] == Index: src/lib/libedit/tokenizer.c diff -u src/lib/libedit/tokenizer.c:1.20 src/lib/libedit/tokenizer.c:1.21 --- src/lib/libedit/tokenizer.c:1.20 Fri Jul 29 11:16:33 2011 +++ src/lib/libedit/tokenizer.c Tue Aug 16 12:25:15 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: tokenizer.c,v 1.20 2011/07/29 15:16:33 christos Exp $ */ +/* $NetBSD: tokenizer.c,v 1.21 2011/08/16 16:25:15 christos Exp $ */ /*- * Copyright (c) 1992, 1993 @@ -37,7 +37,7 @@ #if 0 static char sccsid[] = "@(#)tokenizer.c 8.1 (Berkeley) 6/4/93"; #else -__RCSID("$NetBSD: tokenizer.c,v 1.20 2011/07/29 15:16:33 christos Exp $"); +__RCSID("$NetBSD: tokenizer.c,v 1.21 2011/08/16 16:25:15 christos Exp $"); #endif #endif /* not lint && not SCCSID */ @@ -70,7 +70,7 @@ struct TYPE(tokenizer) { Char *ifs; /* In field separator */ - int argc, amax; /* Current and maximum number of args */ + size_t argc, amax; /* Current and maximum number of args */ Char **argv; /* Argument list */ Char *wptr, *wmax; /* Space and limit on the word buffer */ Char *wstart; /* Beginning of next word */ @@ -201,7 +201,7 @@ if (ptr >= line->lastchar) ptr = STR(""); if (ptr == line->cursor) { - cc = tok->argc; + cc = (int)tok->argc; co = (int)(tok->wptr - tok->wstart); } switch (*ptr) { @@ -391,14 +391,14 @@ } if (tok->wptr >= tok->wmax - 4) { - size_t size = tok->wmax - tok->wspace + WINCR; + size_t size = (size_t)(tok->wmax - tok->wspace + WINCR); Char *s = tok_realloc(tok->wspace, size * sizeof(*s)); if (s == NULL) return -1; if (s != tok->wspace) { - int i; + size_t i; for (i = 0; i < tok->argc; i++) { tok->argv[i] = (tok->argv[i] - tok->wspace) + s; @@ -420,7 +420,7 @@ } tok_line_outok: if (cc == -1 && co == -1) { - cc = tok->argc; + cc = (int)tok->argc; co = (int)(tok->wptr - tok->wstart); } if (cursorc != NULL) @@ -429,7 +429,7 @@ *cursoro = co; FUN(tok,finish)(tok); *argv = (const Char **)tok->argv; - *argc = tok->argc; + *argc = (int)tok->argc; return 0; } Index: src/lib/libedit/tty.c diff -u src/lib/libedit/tty.c:1.39 src/lib/libedit/tty.c:1.40 --- src/lib/libedit/tty.c:1.39 Fri Jul 29 11:20:39 2011 +++ src/lib/libedit/tty.c Tue Aug 16 12:25:15 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: tty.c,v 1.39 2011/07/29 15:20:39 christos Exp $ */ +/* $NetBSD: tty.c,v 1.40 2011/08/16 16:25:15 christos Exp $ */ /*- * Copyright (c) 1992, 1993 @@ -37,7 +37,7 @@ #if 0 static char sccsid[] = "@(#)tty.c 8.1 (Berkeley) 6/4/93"; #else -__RCSID("$NetBSD: tty.c,v 1.39 2011/07/29 15:20:39 christos Exp $"); +__RCSID("$NetBSD: tty.c,v 1.40 2011/08/16 16:25:15 christos Exp $"); #endif #endif /* not lint && not SCCSID */ @@ -1235,8 +1235,9 @@ if (i != -1) { x = (el->el_tty.t_t[z][i].t_setmask & m->m_value) ? '+' : '\0'; - x = (el->el_tty.t_t[z][i].t_clrmask & m->m_value) - ? '-' : x; + + if (el->el_tty.t_t[z][i].t_clrmask & m->m_value) + x = '-'; } else { x = '\0'; } @@ -1268,7 +1269,7 @@ switch (*s) { case '+': case '-': - x = *s++; + x = (char)*s++; break; default: x = '\0'; @@ -1295,7 +1296,7 @@ c--; c = tty__getcharindex(c); assert(c != -1); - tios->c_cc[c] = v; + tios->c_cc[c] = (cc_t)v; continue; } switch (x) { Index: src/lib/libedit/vi.c diff -u src/lib/libedit/vi.c:1.39 src/lib/libedit/vi.c:1.40 --- src/lib/libedit/vi.c:1.39 Fri Jul 29 19:44:45 2011 +++ src/lib/libedit/vi.c Tue Aug 16 12:25:15 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: vi.c,v 1.39 2011/07/29 23:44:45 christos Exp $ */ +/* $NetBSD: vi.c,v 1.40 2011/08/16 16:25:15 christos Exp $ */ /*- * Copyright (c) 1992, 1993 @@ -42,7 +42,7 @@ #if 0 static char sccsid[] = "@(#)vi.c 8.1 (Berkeley) 6/4/93"; #else -__RCSID("$NetBSD: vi.c,v 1.39 2011/07/29 23:44:45 christos Exp $"); +__RCSID("$NetBSD: vi.c,v 1.40 2011/08/16 16:25:15 christos Exp $"); #endif #endif /* not lint && not SCCSID */ @@ -426,7 +426,7 @@ cv_undo(el); - return ret; + return (el_action_t)ret; } @@ -814,7 +814,7 @@ o_ch = el->el_line.cursor[i]; if (o_ch == 0) return CC_ERROR; - delta = Strchr(match_chars, o_ch) - match_chars; + delta = (size_t)(Strchr(match_chars, o_ch) - match_chars); c_ch = match_chars[delta ^ 1]; count = 1; delta = 1 - (delta & 1) * 2;