Package: bs1770gain Version: 0.4.3-1 Severity: wishlist Tags: patch The first build of bs1770gain on the autobuilders showed a common error on several architectures:
ffsox_csv2avdict.c:261:10: error: comparison is always false due to limited range of data type [-Werror=type-limits] if (EOF==(*wp=getc(b->f))) ^ cc1: all warnings being treated as errors This is caused by 'char *wp' being unable to store the value of EOF (often defined to -1) when char is unsigned. The underlying cause is that the return type of getc() is 'int', not 'char', and should not be stored directly in a char before comparing it to EOF. I believe this untested patch solve the issue: diff --git a/libffsox-2/ffsox_csv2avdict.c b/libffsox-2/ffsox_csv2avdict.c index e0a9474..ce3f781 100755 --- a/libffsox-2/ffsox_csv2avdict.c +++ b/libffsox-2/ffsox_csv2avdict.c @@ -255,11 +255,14 @@ static int priv_get_utf8(priv_t *b) static unsigned short mask[] = {192, 224, 240}; char *wp=b->ch; + int firstbyte; size_t n; // read first byte into buffer - if (EOF==(*wp=getc(b->f))) + firstbyte = getc(b->f); + if (EOF==firstbyte) goto error; + *wp = (char)firstbyte; // check how many more bytes need to be read for character n = 0; -- Happy hacking Petter Reinholdtsen -- To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org