This is the mail archive of the
mailing list for the GCC project.
Re: Criteria for a warning to be in -Wall? (was: Re: a warning to implement)
- From: Joe Buck <jbuck at synopsys dot COM>
- To: robertlipe at usa dot net (Robert Lipe)
- Cc: gcc at gcc dot gnu dot org
- Date: Wed, 6 Feb 2002 16:19:57 -0800 (PST)
- Subject: Re: Criteria for a warning to be in -Wall? (was: Re: a warning to implement)
> Joe> Many projects and development teams, both free and non-free, require
> Joe> clean compiles with -Wall. What this means is that if we put an option
> I have free code that that requires clean compiles with -Wall but also
> has to compile with other compilers. When you have a function that has,
> say, a fixed prototype (perhaps it's the target of a function dispatch
> table) but no actual need for the arguments (maybe it's a stub function)
> the 'foo = foo' construct is the only one I've seen that generates zero
> additional opcodes, yet shuts up the warnings on all the interesting
Sigh. In C++ there is standard syntax for saying that an argument is
unused. For example, if the second argument is unused
int foo(int arg1, int)
Since this goes back to cfront, I'd be very surprised to find any compiler
that doesn't support this usage. So, at least for C++, I don't think
your argument applies.
> Tim> 2) avoidable by replacement with an equivalent construct
> I'd have a strong preference for something that doesn't rely on GCC
> extension. __attribute((unused)) is just as icky in a portable project
> as magic /* ARGSUNUSED */ comments recognized by others.
Lint-like comments go back to the origins of C and many of them are
recognized by multiple compilers.