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

Reply via email to