Hi all, clang gives a warning when building fmt(1):
fmt.c:400:35: warning: passing 'char *' to parameter of type 'const unsigned char *' converts between pointers to integer types with different sign might_be_header takes a pointer to unsigned char. However there is no reason for this to be the case. The patch bellow fixes that. In addition it adds 'const' to the type of 'line'. [ http://people.freebsd.org/~eadler/files/o/0003.fmt.diff in case the patch below gets mangled ] Index: fmt.c =================================================================== RCS file: /cvs/src/usr.bin/fmt/fmt.c,v retrieving revision 1.29 diff -u -r1.29 fmt.c --- fmt.c 17 Jan 2012 04:26:28 -0000 1.29 +++ fmt.c 19 Nov 2013 03:11:08 -0000 @@ -233,7 +233,7 @@ static void process_named_file(const char *); static void process_stream(FILE *, const char *); static size_t indent_length(const char *, size_t); -static int might_be_header(const unsigned char *); +static int might_be_header(const char *); static void new_paragraph(size_t, size_t); static void output_word(size_t, size_t, const char *, size_t, size_t); static void output_indent(size_t); @@ -385,7 +385,7 @@ HdrType header_type; /* ^-- header_type of previous line; -1 at para start */ - char *line; + const char *line; size_t length; if (centerP) { @@ -486,7 +486,7 @@ * conservative to avoid mangling ordinary civilised text. */ static int -might_be_header(const unsigned char *line) +might_be_header(const char *line) { if (!isupper(*line++)) -- Eitan Adler
