configure.ac: add -Werror to default compiler options

Dan Kegel dank at kegel.com
Wed Aug 31 20:27:15 CDT 2011


(Reviving http://www.winehq.org/pipermail/wine-devel/2008-September/069266.html
)

After
http://www.winehq.org/pipermail/wine-patches/2011-August/106150.html and
http://www.winehq.org/pipermail/wine-patches/2011-August/106151.html,
configuring with -Wall -Werror gives the right results,
judging by a quick diff of config.h and config.status.

(sys/asoundlib.h is not detected, but that's ok, it's marked as obsolete,
and wine uses alsa/asoundlib.h instead.)

This takes care of Maarten's concerns from the earlier thread.

Then building yields only a tiny handful of errors:

dllfunc.c: In function ‘AMovieDllRegisterServer2’:
dllfunc.c:180: warning: dereferencing type-punned pointer will break
strict-aliasing rules
qualitycontrol.c: In function ‘QualityControlImpl_Notify’:
qualitycontrol.c:70: warning: dereferencing type-punned pointer will
break strict-aliasing rules
transform.c: In function ‘TransformFilterImpl_QueryInterface’:
transform.c:248: warning: dereferencing type-punned pointer will break
strict-aliasing rules
../../include/winternl.h: In function ‘get_vm86_teb_info’:
../../include/winternl.h:2660: warning: dereferencing type-punned
pointer will break strict-aliasing rules
...
register.c: In function ‘create_registrar’:
register.c:66: warning: dereferencing type-punned pointer will break
strict-aliasing rules

Those are potential, if unlikely, bugs; we ought to either fix them or
add -fno-strict-aliasing
to CFLAGS for the seven or so affected .c files.

At which point it would probably be a fine idea to add -Werror by default;
buildbot will help keep everyone in sync, even if they're using a compiler
that doesn't catch as many warnings as the one buildbot uses.
- Dan



More information about the wine-devel mailing list