dmx: force -fno-strict-aliasing for xinput example

Compiler warning:
xinput.c:272: warning: dereferencing pointer 'e' does break strict-aliasing
rules

The code itself is the usual XInput client-side code:
        XEvent event;
        XDeviceMotionEvent *e = (XDeviceMotionEvent *)&event;
        XNextEvent(display, &event);
        printf("%d\n", e->type);

Since XDeviceMotionEvent is not guaranteed the same size as XEvent, clients
must use pointer aliasing as above when using the XNextEvent API. Disable
strict aliasing for this example.

Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Gaetan Nadon <memsize@videotron.ca>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
Signed-off-by: Keith Packard <keithp@keithp.com>
This commit is contained in:
Peter Hutterer 2011-12-16 09:15:25 -05:00 committed by Keith Packard
parent c065f7b163
commit 3aca819940

View File

@ -10,60 +10,60 @@ bin_PROGRAMS = \
noinst_PROGRAMS = xinput xtest evi res xled xbell $(EV_PROG) noinst_PROGRAMS = xinput xtest evi res xled xbell $(EV_PROG)
dmxinfo_SOURCES = dmxinfo.c dmxinfo_SOURCES = dmxinfo.c
dmxinfo_LDADD = @DMXEXAMPLES_DEP_LIBS@ dmxinfo_LDADD = $(DMXEXAMPLES_DEP_LIBS)
dmxinfo_CFLAGS = @DMXEXAMPLES_DEP_CFLAGS@ dmxinfo_CFLAGS = $(DMXEXAMPLES_DEP_CFLAGS) $(CWARNFLAGS)
dmxwininfo_SOURCES = dmxwininfo.c dmxwininfo_SOURCES = dmxwininfo.c
dmxwininfo_LDADD = @DMXXMUEXAMPLES_DEP_LIBS@ dmxwininfo_LDADD = $(DMXXMUEXAMPLES_DEP_LIBS)
dmxwininfo_CFLAGS = @DMXXMUEXAMPLES_DEP_CFLAGS@ dmxwininfo_CFLAGS = $(DMXXMUEXAMPLES_DEP_CFLAGS) $(CWARNFLAGS)
dmxreconfig_SOURCES = dmxreconfig.c dmxreconfig_SOURCES = dmxreconfig.c
dmxreconfig_LDADD = @DMXEXAMPLES_DEP_LIBS@ dmxreconfig_LDADD = $(DMXEXAMPLES_DEP_LIBS)
dmxreconfig_CFLAGS = @DMXEXAMPLES_DEP_CFLAGS@ dmxreconfig_CFLAGS = $(DMXEXAMPLES_DEP_CFLAGS) $(CWARNFLAGS)
dmxresize_SOURCES = dmxresize.c dmxresize_SOURCES = dmxresize.c
dmxresize_LDADD = @DMXEXAMPLES_DEP_LIBS@ dmxresize_LDADD = $(DMXEXAMPLES_DEP_LIBS)
dmxresize_CFLAGS = @DMXEXAMPLES_DEP_CFLAGS@ dmxresize_CFLAGS = $(DMXEXAMPLES_DEP_CFLAGS) $(CWARNFLAGS)
dmxaddscreen_SOURCES = dmxaddscreen.c dmxaddscreen_SOURCES = dmxaddscreen.c
dmxaddscreen_LDADD = @DMXEXAMPLES_DEP_LIBS@ dmxaddscreen_LDADD = $(DMXEXAMPLES_DEP_LIBS)
dmxaddscreen_CFLAGS = @DMXEXAMPLES_DEP_CFLAGS@ dmxaddscreen_CFLAGS = $(DMXEXAMPLES_DEP_CFLAGS) $(CWARNFLAGS)
dmxrmscreen_SOURCES = dmxrmscreen.c dmxrmscreen_SOURCES = dmxrmscreen.c
dmxrmscreen_LDADD = @DMXEXAMPLES_DEP_LIBS@ dmxrmscreen_LDADD = $(DMXEXAMPLES_DEP_LIBS)
dmxrmscreen_CFLAGS = @DMXEXAMPLES_DEP_CFLAGS@ dmxrmscreen_CFLAGS = $(DMXEXAMPLES_DEP_CFLAGS) $(CWARNFLAGS)
dmxaddinput_SOURCES = dmxaddinput.c dmxaddinput_SOURCES = dmxaddinput.c
dmxaddinput_LDADD = @DMXEXAMPLES_DEP_LIBS@ dmxaddinput_LDADD = $(DMXEXAMPLES_DEP_LIBS)
dmxaddinput_CFLAGS = @DMXEXAMPLES_DEP_CFLAGS@ dmxaddinput_CFLAGS = $(DMXEXAMPLES_DEP_CFLAGS) $(CWARNFLAGS)
dmxrminput_SOURCES = dmxrminput.c dmxrminput_SOURCES = dmxrminput.c
dmxrminput_LDADD = @DMXEXAMPLES_DEP_LIBS@ dmxrminput_LDADD = $(DMXEXAMPLES_DEP_LIBS)
dmxrminput_CFLAGS = @DMXEXAMPLES_DEP_CFLAGS@ dmxrminput_CFLAGS = $(DMXEXAMPLES_DEP_CFLAGS) $(CWARNFLAGS)
xinput_SOURCES = xinput.c xinput_SOURCES = xinput.c
xinput_LDADD = @DMXXIEXAMPLES_DEP_LIBS@ xinput_LDADD = $(DMXXIEXAMPLES_DEP_LIBS)
xinput_CFLAGS = @DMXXIEXAMPLES_DEP_CFLAGS@ xinput_CFLAGS = $(DMXXIEXAMPLES_DEP_CFLAGS) $(CWARNFLAGS)
xtest_SOURCES = xtest.c xtest_SOURCES = xtest.c
xtest_LDADD = @XTSTEXAMPLES_DEP_LIBS@ xtest_LDADD = $(XTSTEXAMPLES_DEP_LIBS)
xtest_CFLAGS = @XTSTEXAMPLES_DEP_CFLAGS@ xtest_CFLAGS = $(XTSTEXAMPLES_DEP_CFLAGS) $(CWARNFLAGS)
evi_SOURCES = evi.c evi_SOURCES = evi.c
evi_LDADD = @X11EXAMPLES_DEP_LIBS@ evi_LDADD = $(X11EXAMPLES_DEP_LIBS)
evi_CFLAGS = @X11EXAMPLES_DEP_CFLAGS@ evi_CFLAGS = $(X11EXAMPLES_DEP_CFLAGS) $(CWARNFLAGS)
res_SOURCES = res.c res_SOURCES = res.c
res_LDADD = @XRESEXAMPLES_DEP_LIBS@ res_LDADD = $(XRESEXAMPLES_DEP_LIBS)
res_CFLAGS = @XRESEXAMPLES_DEP_CFLAGS@ res_CFLAGS = $(XRESEXAMPLES_DEP_CFLAGS) $(CWARNFLAGS)
xled_SOURCES = xled.c xled_SOURCES = xled.c
xled_LDADD = @X11EXAMPLES_DEP_LIBS@ xled_LDADD = $(X11EXAMPLES_DEP_LIBS)
xled_CFLAGS = @X11EXAMPLES_DEP_CFLAGS@ xled_CFLAGS = $(X11EXAMPLES_DEP_CFLAGS) $(CWARNFLAGS)
xbell_SOURCES = xbell.c xbell_SOURCES = xbell.c
xbell_LDADD = @X11EXAMPLES_DEP_LIBS@ xbell_LDADD = $(X11EXAMPLES_DEP_LIBS)
xbell_CFLAGS = @X11EXAMPLES_DEP_CFLAGS@ xbell_CFLAGS = $(X11EXAMPLES_DEP_CFLAGS) $(CWARNFLAGS)
ev_SOURCES = ev.c ev_SOURCES = ev.c
ev_LDADD = ev_LDADD =