[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [zile-devel] 2.2.1: excessive compiler warning flags
From: |
Christian Weisgerber |
Subject: |
Re: [zile-devel] 2.2.1: excessive compiler warning flags |
Date: |
Wed, 27 Jul 2005 20:56:56 +0200 |
User-agent: |
Mutt/1.4.2.1i |
Reuben Thomas:
> It does sound scary. If you could send me a compile log, I'd be most
> grateful.
Here's the build log snippet for regex.c for zile 2.2.2 on
OpenBSD/amd64. Much of this looks like chaff, but the casts between
pointers and int could be serious.
On LP64 platforms (alpha, amd64, sparc64, ...) longs and pointers
are 64 bits wide, i.e.:
sizeof(void *) = 8
sizeof(long) = 8 # also size_t
sizeof(int) = 4
if cc -DHAVE_CONFIG_H -I. -I. -I.. -O2 -pipe -Wall -W -Wmissing-prototypes
-Wstrict-prototypes -Wconversion -pedantic -MT regex.o -MD -MP -MF
".deps/regex.Tpo" -c -o regex.o regex.c; then mv -f ".deps/regex.Tpo"
".deps/regex.Po"; else rm -f ".deps/regex.Tpo"; exit 1; fi
regex.c:62: warning: function declaration isn't a prototype
regex.c:419: warning: function declaration isn't a prototype
regex.c:419: warning: function declaration isn't a prototype
regex.c:420: warning: function declaration isn't a prototype
regex.c:420: warning: function declaration isn't a prototype
regex.c:421: warning: function declaration isn't a prototype
regex.c:421: warning: function declaration isn't a prototype
regex.c:422: warning: function declaration isn't a prototype
regex.c:423: warning: function declaration isn't a prototype
regex.c:640: warning: function declaration isn't a prototype
regex.c: In function `regex_compile':
regex.c:754: warning: comparison between signed and unsigned
regex.c:769: warning: comparison between signed and unsigned
regex.c:862: warning: comparison between signed and unsigned
regex.c:887: warning: comparison between signed and unsigned
regex.c:901: warning: comparison between signed and unsigned
regex.c:911: warning: comparison between signed and unsigned
regex.c:923: warning: comparison between signed and unsigned
regex.c:929: warning: comparison between signed and unsigned
regex.c:937: warning: comparison between signed and unsigned
regex.c:940: warning: passing arg 3 of `memset' with different width due to
prototype
regex.c:1173: warning: comparison between signed and unsigned
regex.c:1191: warning: suggest explicit braces to avoid ambiguous `else'
regex.c:1203: warning: comparison between signed and unsigned
regex.c:1211: warning: suggest explicit braces to avoid ambiguous `else'
regex.c:1247: warning: comparison between signed and unsigned
regex.c:1263: warning: comparison between signed and unsigned
regex.c:1291: warning: comparison between signed and unsigned
regex.c:1378: warning: comparison between signed and unsigned
regex.c:1397: warning: comparison between signed and unsigned
regex.c:1470: warning: comparison between signed and unsigned
regex.c:1476: warning: comparison between signed and unsigned
regex.c:1481: warning: comparison between signed and unsigned
regex.c:1485: warning: comparison between signed and unsigned
regex.c:1489: warning: comparison between signed and unsigned
regex.c:1493: warning: comparison between signed and unsigned
regex.c:1497: warning: comparison between signed and unsigned
regex.c:1501: warning: comparison between signed and unsigned
regex.c:1519: warning: comparison between signed and unsigned
regex.c:1567: warning: comparison between signed and unsigned
regex.c:1571: warning: comparison between signed and unsigned
regex.c: At top level:
regex.c:1600: warning: function declaration isn't a prototype
regex.c:1613: warning: function declaration isn't a prototype
regex.c:1628: warning: function declaration isn't a prototype
regex.c:1647: warning: function declaration isn't a prototype
regex.c:1668: warning: function declaration isn't a prototype
regex.c:1687: warning: function declaration isn't a prototype
regex.c:1709: warning: function declaration isn't a prototype
regex.c:1737: warning: function declaration isn't a prototype
regex.c: In function `compile_range':
regex.c:1772: warning: comparison between signed and unsigned
regex.c:1774: warning: signed and unsigned type in conditional expression
regex.c:1774: warning: signed and unsigned type in conditional expression
regex.c: In function `re_compile_fastmap':
regex.c:2017: warning: passing arg 3 of `memset' with different width due to
prototype
regex.c: At top level:
regex.c:2413: warning: function declaration isn't a prototype
regex.c:2414: warning: function declaration isn't a prototype
regex.c:2415: warning: function declaration isn't a prototype
regex.c:2416: warning: function declaration isn't a prototype
regex.c: In function `re_match_2':
regex.c:2681: warning: passing arg 1 of `__builtin_alloca' with different width
due to prototype
regex.c:2699: warning: passing arg 1 of `__builtin_alloca' with different width
due to prototype
regex.c:2706: warning: comparison between signed and unsigned
regex.c:2783: warning: comparison between signed and unsigned
regex.c:2806: warning: comparison between signed and unsigned
regex.c:2857: warning: comparison between signed and unsigned
regex.c:2873: warning: comparison between signed and unsigned
regex.c:2877: warning: passing arg 1 of `__builtin_alloca' with different width
due to prototype
regex.c:3110: warning: comparison between signed and unsigned
regex.c:3115: warning: cast from pointer to integer of different size
regex.c:3115: warning: cast from pointer to integer of different size
regex.c:3121: warning: comparison between signed and unsigned
regex.c:3121: warning: cast to pointer from integer of different size
regex.c:3121: warning: cast to pointer from integer of different size
regex.c:3185: warning: passing arg 3 of `memcmp' with different width due to
prototype
regex.c:3257: warning: comparison between signed and unsigned
regex.c:3257: warning: cast to pointer from integer of different size
regex.c:3257: warning: cast to pointer from integer of different size
regex.c:3306: warning: comparison between signed and unsigned
regex.c:3306: warning: cast to pointer from integer of different size
regex.c:3306: warning: cast to pointer from integer of different size
regex.c:3404: warning: cast from pointer to integer of different size
regex.c:3404: warning: cast from pointer to integer of different size
regex.c:3404: warning: comparison between signed and unsigned
regex.c:3433: warning: comparison between signed and unsigned
regex.c:3433: warning: cast to pointer from integer of different size
regex.c:3433: warning: cast to pointer from integer of different size
regex.c:3445: warning: comparison between signed and unsigned
regex.c:3445: warning: cast to pointer from integer of different size
regex.c:3445: warning: cast to pointer from integer of different size
regex.c:3540: warning: cast from pointer to integer of different size
regex.c:3540: warning: cast from pointer to integer of different size
regex.c:3540: warning: comparison between signed and unsigned
regex.c:3587: warning: passing arg 1 of `__builtin_alloca' with different width
due to prototype
regex.c:2621: warning: `regstart' might be used uninitialized in this function
regex.c:2621: warning: `regend' might be used uninitialized in this function
regex.c:2628: warning: `old_regstart' might be used uninitialized in this
function
regex.c:2628: warning: `old_regend' might be used uninitialized in this function
regex.c:2636: warning: `reg_info' might be used uninitialized in this function
regex.c:2643: warning: `best_regstart' might be used uninitialized in this
function
regex.c:2643: warning: `best_regend' might be used uninitialized in this
function
regex.c:2656: warning: `reg_dummy' might be used uninitialized in this function
regex.c:2657: warning: `reg_info_dummy' might be used uninitialized in this
function
regex.c: At top level:
regex.c:3607: warning: function declaration isn't a prototype
regex.c:3716: warning: function declaration isn't a prototype
regex.c:3753: warning: function declaration isn't a prototype
regex.c:3836: warning: function declaration isn't a prototype
--
Christian "naddy" Weisgerber address@hidden