Re: [PATCH 8/10] Fix some minor warnings to allow -Werror.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



"Ramsay Jones" <ramsay@xxxxxxxxxxxxxxxxxxx> writes:

> diff --git a/builtin-mailinfo.c b/builtin-mailinfo.c
> index 3e40747..bb5e7b7 100644
> --- a/builtin-mailinfo.c
> +++ b/builtin-mailinfo.c
> @@ -531,7 +531,8 @@ static int decode_b_segment(char *in, ch
>  static void convert_to_utf8(char *line, char *charset)
>  {
>  #ifndef NO_ICONV
> -	char *in, *out;
> +	const char *in;
> +	char *out;
>  	size_t insize, outsize, nrc;
>  	char outbuf[4096]; /* cheat */
>  	static char latin_one[] = "latin1";

This kills the compilation with:

gcc -o builtin-mailinfo.o -c -O2 -Werror -ansi -pedantic -std=c99 -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -Wall -Wdeclaration-after-statement -g -DSHA1_HEADER='<openssl/sha.h>' -DNO_STRLCPY builtin-mailinfo.c
cc1: warnings being treated as errors
builtin-mailinfo.c: In function 'convert_to_utf8':
builtin-mailinfo.c:561: warning: passing argument 2 of 'iconv' from incompatible pointer type

where the line 561 reads:

	nrc = iconv(conv, &in, &insize, &out, &outsize);

> diff --git a/diff.c b/diff.c
> index 5a71489..81630c0 100644
> --- a/diff.c
> +++ b/diff.c
> @@ -614,6 +614,7 @@ static void emit_binary_diff(mmfile_t *o
>  	 * whichever is smaller.
>  	 */
>  	delta = NULL;
> +	orig_size = 0;
>  	deflated = deflate_it(two->ptr, two->size, &deflate_size);
>  	if (one->size && two->size) {
>  		delta = diff_delta(one->ptr, one->size,

This is not wrong per se, but is working around a stupid compiler that
do not understand the dataflow.  orig_size is only used when
delta is non NULL, and when delta is non NULL, the variable is
always set.  Not very happy but is acceptable.

-
: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]