`-Wno-protocol'
     If a class is declared to implement a protocol, a warning is
     issued for every method in the protocol that is not implemented by
     the class.  The default behavior is to issue a warning for every
     method not explicitly implemented in the class, even if a method
     implementation is inherited from the superclass.  If you use the
     `-Wno-protocol' option, then methods inherited from the superclass
     are considered to be implemented, and no warning is issued for
     them.
`-Wselector'
     Warn if multiple methods of different types for the same selector
     are found during compilation.  The check is performed on the list
     of methods in the final stage of compilation.  Additionally, a
     check is performed for each selector appearing in a
     `@selector(...)'  expression, and a corresponding method for that
     selector has been found during compilation.  Because these checks
     scan the method table only at the end of compilation, these
     warnings are not produced if the final stage of compilation is not
     reached, for example because an error is found during compilation,
     or because the `-fsyntax-only' option is being used.
`-Wstrict-selector-match'
     Warn if multiple methods with differing argument and/or return
     types are found for a given selector when attempting to send a
     message using this selector to a receiver of type `id' or `Class'.
     When this flag is off (which is the default behavior), the
     compiler will omit such warnings if any differences found are
     confined to types which share the same size and alignment.
`-Wundeclared-selector'
     Warn if a `@selector(...)' expression referring to an undeclared
     selector is found.  A selector is considered undeclared if no
     method with that name has been declared before the
     `@selector(...)' expression, either explicitly in an `@interface'
     or `@protocol' declaration, or implicitly in an `@implementation'
     section.  This option always performs its checks as soon as a
     `@selector(...)' expression is found, while `-Wselector' only
     performs its checks in the final stage of compilation.  This also
     enforces the coding style convention that methods and selectors
     must be declared before being used.