avrdude-dev
[Top][All Lists]
Advanced

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

Re: [avrdude-dev] BETA Release is now available - please test (was: Good


From: Joerg Wunsch
Subject: Re: [avrdude-dev] BETA Release is now available - please test (was: Good news: STK500v2 and JTAG ICE mkII code committed to CVS)
Date: Sun, 15 May 2005 13:34:39 +0200
User-agent: Mutt/1.4.2.1i

As Brian Dean wrote:

> Another item is that the latest Mac OS X Tiger ships with GCC 4.0.0.
> This compiler is giving out quite a few warnings which didn't trip on
> GCC 3.  I'm hoping we can eliminate most if not all of the warnings.
> I've attached the full warning list.

> /usr/share/bison.simple: In function 'yyparse':
> /usr/share/bison.simple:285: warning: 'yyval' may be used uninitialized in 
> this function

That's virtually impossible to avoid, as it comes from generated code
and/or from 3rd-party code.

> ../avr910.c: In function 'avr910_initialize':
> ../avr910.c:177: warning: pointer targets in passing argument 2 of 
> 'avr910_recv' differ in signedness

These could be fixed by either a proper cast or maybe a more
consistent API (but I think a cast is eventually needed anyway,
perhaps in serial_send() and serial_recv() then).

> ../jtagmkII.c:299: warning: format '%d' expects type 'int', but argument 4 
> has type 'size_t'

OK, size_t is unsigned, so this should at least be %u.

> ../jtagmkII.c:630: warning: format '%u' expects type 'unsigned int', but 
> argument 4 has type 'size_t'

That's a tough one though: unless we're going to assume that all our
compilation platforms are sufficiently C99 compatible, this cannot be
resolved.  Only with C99, there are separate printf formats for some
standard data types.  Remember that "sufficient C99 compatibility"
isn't only guaranteed by saying "we require GCC".  This is a library
thing here, so we'd have to restrict our choice of operating systems.
IIRC, sufficient C99 compatibility for the new printf format
specifiers isn't even present in FreeBSD 4.x, which is still heavily
in production use.  I guess not quite recent Linux versions would fall
into the same category.

Sure, we could cast the argument to "unsigned int", but that's merely
masking the problem.

-- 
cheers, J"org               .-.-.   --... ...--   -.. .  DL8DTL

http://www.sax.de/~joerg/                        NIC: JW11-RIPE
Never trust an operating system you don't have sources for. ;-)




reply via email to

[Prev in Thread] Current Thread [Next in Thread]