On Sun, Jul 16, 2017 at 08:43:25PM +0200, Anders Lindgren wrote:
I tried to figure out if gcc or clang was used when building on 10.6.8, but
ran out of time (and won't have the chance to do it again anytime soon). I
did conclude that it comes with both a real "gcc" and a real "clang", so
presumably gcc is used. (Surprisingly, more modern versions of macOS seems
to map the command "gcc" to "clang".)
Charles can maybe answer this for us, as he uses 10.6.
A warning-free build is a must on modern system (which use clang). It would
be nice on older system, I guess, but it would be hard to enforce. (We
could even lobby to add the option to future gcc versions, for the benefit
of GNUStep, but it would not help the situation on older macOS versions.)
My gut feeling is to go with the NS_SILENCE_MISSING_METHOD_WARNING_BEGIN
solution, as it work on modern macOS systems, it retains type checking, and
it give us a single location to describe the situation and to modify the
macro, if there should be a need for it in the future.
Agreed.
I think that a lot (if not most) of the code that we might want to use
this on won’t work on GNUstep at all, so we could still exclude it
from building there if the warnings are too much.