Re: -Wall
Re: -Wall
- Subject: Re: -Wall
- From: Stuart Malin <email@hidden>
- Date: Wed, 4 Jun 2008 14:15:28 -1000
On Jun 4, 2008, at 1:19 PM, Sean McBride wrote:
On 6/4/08 10:20 AM, Stuart Malin said:
I have decided to write my application "cleanly" -- that is, to not
have any compiler warnings.
Great!
I hope so :-)
I'm curious of the efficacy of doing so. For instance, even with -
Wall, some of my lazy coding styles, e.g.:
if (anInstance = [enumerator nextObject]) doSomethingWithAnInstance;
generated warnings and I was led to code such as:
if ((anInstance = [enumerator nextObject]) != nil)
doSomethingWithAnInstance;
I guess this makes explicit my intent, and so can be argued this is
better coding practice...
What then is the effect on the
Warnings settings of the Build (ignored? do I need to set these
checkboxes as well for the various warnings?) Should I be setting -
Wall as an "Other Warning Flags" of the Warnings Build Settings, or
am I doing this properly by setting as a compiler flag?
You'll need to consult the gcc man page I'm afraid.... But -Wall does
not enable _all_ warnings. Some of the warning checkboxes Xcode
provides are redundant (but harmless) if -Wall is on. OTOH, some of
them add to what -Wall provides. I suggest checking as many as you
can
and add -Wextra (instead of -Wall). If you want more, you need to
scour
the gcc man page.
So, I added -Wextra to -Wall (didn't yet turn on all the checkboxes),
and one warning came up in oodles of places -- about methods that
have unused parameters. This happens in many places for me, such as
with Notifications (where I know what to do because of the fact of
the notification, and don't need to access the notification object
itself), or for IBActions that have a sender parameter but I don't
need to access the sender object. So, to satisfy the compiler, I set
these parameters to nil at the outset of the method, which I guess
does make explicit to some future maintainer (including me) that the
parameter is intentionally not used. This seems to me like adding
superfluous code. Is there some other way I can inform the compiler
(and a future maintainer) that the parameter is intentionally not used?
I know these are minor issues, and perhaps ones of style, but I ask
further because I read much in various places online about striving
for no warnings, yet I don't find much info about coding practices
that gets one there.
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Xcode-users mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden
- Follow-Ups:
- Re: -Wall
- From: "Mark Wagner" <email@hidden>
- Re: -Wall
- From: Stefan Werner <email@hidden>
- Re: -Wall
- From: Jens Alfke <email@hidden>
- Re: -Wall
- From: Jean-Daniel Dupas <email@hidden>
References: | |
| >-Wall (From: Stuart Malin <email@hidden>) |
| >Re: -Wall (From: "Sean McBride" <email@hidden>) |