http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59648
Bug ID: 59648 Summary: -O2 compilation of xorg-server-1.15.0 fails Product: gcc Version: 4.9.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: other Assignee: unassigned at gcc dot gnu.org Reporter: nheghathivhistha at gmail dot com Created attachment 31550 --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=31550&action=edit Gzipped preprocessed events.c file -O compilation is fine. Gcc 4.9.0 trunk. libtool: link: x86_64-pc-linux-gnu-gcc -std=gnu99 -DHAVE_DIX_CONFIG_H -Wall -Wpointer-arith -Wmissing-declarations -Wformat=2 -Wstrict-prototypes -Wmissing-prototypes -Wnested-externs -Wbad-function-cast -Wold-style-definition -Wdeclaration-after-statement -Wunused -Wuninitialized -Wshadow -Wmissing-noreturn -Wmissing-format-attribute -Wredundant-decls -Werror=implicit -Werror=nonnull -Werror=init-self -Werror=main -Werror=missing-braces -Werror=sequence-point -Werror=return-type -Werror=trigraphs -Werror=array-bounds -Werror=write-strings -Werror=address -Werror=int-to-pointer-cast -Werror=pointer-to-int-cast -fno-strict-aliasing -fno-strict-aliasing -D_BSD_SOURCE -DHAS_FCHOWN -DHAS_STICKY_DIR_BIT -I/usr/include/X11/dri -I/usr/include/libdrm -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/var/tmp/portage/x11-base/xorg-server-1.15.0/work/xorg-server-1.15.0/include -I../include -I/var/tmp/portage/x11-base/xorg-server-1.15.0/work/xorg-server-1.15.0/Xext -I/var/tmp/portage/x11-base/xorg-server-1.15.0/work/xorg-server-1.15.0/composite -I/var/tmp/portage/x11-base/xorg-server-1.15.0/work/xorg-server-1.15.0/damageext -I/var/tmp/portage/x11-base/xorg-server-1.15.0/work/xorg-server-1.15.0/xfixes -I/var/tmp/portage/x11-base/xorg-server-1.15.0/work/xorg-server-1.15.0/Xi -I/var/tmp/portage/x11-base/xorg-server-1.15.0/work/xorg-server-1.15.0/mi -I/var/tmp/portage/x11-base/xorg-server-1.15.0/work/xorg-server-1.15.0/miext/sync -I/var/tmp/portage/x11-base/xorg-server-1.15.0/work/xorg-server-1.15.0/miext/shadow -I/var/tmp/portage/x11-base/xorg-server-1.15.0/work/xorg-server-1.15.0/miext/damage -I/var/tmp/portage/x11-base/xorg-server-1.15.0/work/xorg-server-1.15.0/render -I/var/tmp/portage/x11-base/xorg-server-1.15.0/work/xorg-server-1.15.0/randr -I/var/tmp/portage/x11-base/xorg-server-1.15.0/work/xorg-server-1.15.0/fb -I/var/tmp/portage/x11-base/xorg-server-1.15.0/work/xorg-server-1.15.0/dbe -I/var/tmp/portage/x11-base/xorg-server-1.15.0/work/xorg-server-1.15.0/present -fvisibility=hidden -DHAVE_XORG_CONFIG_H -fvisibility=hidden -I/usr/include/libdrm -O2 -ggdb -pipe -march=native -mtune=native -mno-sse4.2 -mno-sse4a -mno-avx -mno-3dnow -flto=4 -Wl,-O1 -Wl,-flto -O2 -ggdb -pipe -march=native -mtune=native -mno-sse4.2 -mno-sse4a -mno-avx -mno-3dnow -flto=4 -Wl,-z -Wl,lazy -o input input.o -Wl,--as-needed ./.libs/libxservertest.a -lnettle -ldl -ludev -lpciaccess -ldrm -lpixman-1 -lXfont -lXau -lxshmfence -lXdmcp -lGL -lpthread -lm /var/tmp/portage/x11-base/xorg-server-1.15.0/work/xorg-server-1.15.0/xkb/xkbInit.c:690:22: warning: type of 'XkbDfltAccessXOptions' does not match original declaration [enabled by default] extern unsigned char XkbDfltAccessXOptions; ^ /var/tmp/portage/x11-base/xorg-server-1.15.0/work/xorg-server-1.15.0/xkb/xkbAccessX.c:58:16: note: previously declared here unsigned short XkbDfltAccessXOptions = ^ /var/tmp/portage/x11-base/xorg-server-1.15.0/work/xorg-server-1.15.0/dix/events.c: In function 'MatchForType': /var/tmp/portage/x11-base/xorg-server-1.15.0/work/xorg-server-1.15.0/dix/events.c:3810:9: warning: 'grabtype' may be used uninitialized in this function [-Wmaybe-uninitialized] int grabtype; ^ /var/tmp/portage/x11-base/xorg-server-1.15.0/work/xorg-server-1.15.0/dix/events.c:3834:15: warning: 'evtype' may be used uninitialized in this function [-Wmaybe-uninitialized] tmp->type = evtype; ^ /var/tmp/portage/x11-base/xorg-server-1.15.0/work/xorg-server-1.15.0/dix/events.c:3811:9: note: 'evtype' was declared here int evtype; ^ /var/tmp/portage/x11-base/xorg-server-1.15.0/work/xorg-server-1.15.0/dix/events.c:3808:21: warning: 'match' may be used uninitialized in this function [-Wmaybe-uninitialized] enum MatchFlags match; ^ /var/tmp/portage/x11-base/xorg-server-1.15.0/work/xorg-server-1.15.0/dix/ptrveloc.c: In function 'AccelSetProfileProperty': /var/tmp/portage/x11-base/xorg-server-1.15.0/work/xorg-server-1.15.0/dix/ptrveloc.c:204:35: warning: 'profile' may be used uninitialized in this function [-Wmaybe-uninitialized] if (GetAccelerationProfile(vel, profile) == NULL) ^ /var/tmp/portage/x11-base/xorg-server-1.15.0/work/xorg-server-1.15.0/dix/ptrveloc.c:188:9: note: 'profile' was declared here int profile, *ptr = &profile; ^ /var/tmp/portage/x11-base/xorg-server-1.15.0/work/xorg-server-1.15.0/dix/events.c: In function 'XineramaConfineCursorToWindow.constprop': /var/tmp/portage/x11-base/xorg-server-1.15.0/work/xorg-server-1.15.0/dix/events.c:625:35: warning: iteration 16 invokes undefined behavior [-Waggressive-loop-optimizations] off_x = screenInfo.screens[i]->x; ^ /var/tmp/portage/x11-base/xorg-server-1.15.0/work/xorg-server-1.15.0/dix/events.c:615:11: note: containing loop while (i--) { ^ /var/tmp/portage/x11-base/xorg-server-1.15.0/work/xorg-server-1.15.0/dix/events.c:611:49: error: array subscript is below array bounds [-Werror=array-bounds] RegionCopy(&pSprite->Reg1, &pSprite->windows[i]->borderSize); ^ /var/tmp/portage/x11-base/xorg-server-1.15.0/work/xorg-server-1.15.0/dix/events.c:612:31: error: array subscript is below array bounds [-Werror=array-bounds] off_x = screenInfo.screens[i]->x; ^ /var/tmp/portage/x11-base/xorg-server-1.15.0/work/xorg-server-1.15.0/dix/events.c:616:39: error: array subscript is below array bounds [-Werror=array-bounds] x = off_x - screenInfo.screens[i]->x; ^ /var/tmp/portage/x11-base/xorg-server-1.15.0/work/xorg-server-1.15.0/dix/events.c:623:38: error: array subscript is below array bounds [-Werror=array-bounds] &pSprite->windows[i]->borderSize); ^ /var/tmp/portage/x11-base/xorg-server-1.15.0/work/xorg-server-1.15.0/dix/events.c:625:35: error: array subscript is below array bounds [-Werror=array-bounds] off_x = screenInfo.screens[i]->x; ^ lto1: some warnings being treated as errors