Partial fix for bug 2556 - add compilation flag -Wshadow
I added -Wshadow and then turned it off again because of massive variable shadowing in the blit macros. Feel free to go through that code and fix these if you want. Just uncomment CheckWarnShadow in configure.in if you want to try this.main
parent
9f5e3ed7e7
commit
553028c9ec
|
@ -334,6 +334,7 @@ if(USE_GCC OR USE_CLANG)
|
|||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-multichar")
|
||||
endif()
|
||||
endif()
|
||||
#check_c_compiler_flag(-Wshadow HAVE_GCC_WSHADOW)
|
||||
endif()
|
||||
|
||||
if(ASSEMBLY)
|
||||
|
|
|
@ -18684,6 +18684,43 @@ $as_echo "$need_gcc_Wno_multichar" >&6; }
|
|||
fi
|
||||
}
|
||||
|
||||
CheckWarnShadow()
|
||||
{
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for GCC -Wshadow option" >&5
|
||||
$as_echo_n "checking for GCC -Wshadow option... " >&6; }
|
||||
have_gcc_Wshadow=no
|
||||
|
||||
save_CFLAGS="$CFLAGS"
|
||||
CFLAGS="$save_CFLAGS -Wshadow"
|
||||
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
|
||||
/* end confdefs.h. */
|
||||
|
||||
int x = 0;
|
||||
|
||||
int
|
||||
main ()
|
||||
{
|
||||
|
||||
|
||||
;
|
||||
return 0;
|
||||
}
|
||||
_ACEOF
|
||||
if ac_fn_c_try_compile "$LINENO"; then :
|
||||
|
||||
have_gcc_Wshadow=yes
|
||||
|
||||
fi
|
||||
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $have_gcc_Wshadow" >&5
|
||||
$as_echo "$have_gcc_Wshadow" >&6; }
|
||||
CFLAGS="$save_CFLAGS"
|
||||
|
||||
if test x$have_gcc_Wshadow = xyes; then
|
||||
EXTRA_CFLAGS="$EXTRA_CFLAGS -Wshadow"
|
||||
fi
|
||||
}
|
||||
|
||||
CheckWayland()
|
||||
{
|
||||
# Check whether --enable-video-wayland was given.
|
||||
|
@ -23337,6 +23374,7 @@ $as_echo "#define SDL_FILESYSTEM_NACL 1" >>confdefs.h
|
|||
esac
|
||||
|
||||
CheckWarnAll
|
||||
#CheckWarnShadow
|
||||
|
||||
# Verify that we have all the platform specific files we need
|
||||
|
||||
|
|
23
configure.in
23
configure.in
|
@ -1159,6 +1159,28 @@ CheckWarnAll()
|
|||
fi
|
||||
}
|
||||
|
||||
dnl See if GCC's -Wshadow is supported.
|
||||
CheckWarnShadow()
|
||||
{
|
||||
AC_MSG_CHECKING(for GCC -Wshadow option)
|
||||
have_gcc_Wshadow=no
|
||||
|
||||
save_CFLAGS="$CFLAGS"
|
||||
CFLAGS="$save_CFLAGS -Wshadow"
|
||||
AC_TRY_COMPILE([
|
||||
int x = 0;
|
||||
],[
|
||||
],[
|
||||
have_gcc_Wshadow=yes
|
||||
])
|
||||
AC_MSG_RESULT($have_gcc_Wshadow)
|
||||
CFLAGS="$save_CFLAGS"
|
||||
|
||||
if test x$have_gcc_Wshadow = xyes; then
|
||||
EXTRA_CFLAGS="$EXTRA_CFLAGS -Wshadow"
|
||||
fi
|
||||
}
|
||||
|
||||
dnl Check for Wayland
|
||||
CheckWayland()
|
||||
{
|
||||
|
@ -3216,6 +3238,7 @@ esac
|
|||
|
||||
dnl Do this on all platforms, after everything else.
|
||||
CheckWarnAll
|
||||
#CheckWarnShadow
|
||||
|
||||
# Verify that we have all the platform specific files we need
|
||||
|
||||
|
|
|
@ -302,7 +302,6 @@ SDL_PeepEvents(SDL_Event * events, int numevents, SDL_eventaction action,
|
|||
For now we'll guarantee it's valid at least until
|
||||
the next call to SDL_PeepEvents()
|
||||
*/
|
||||
SDL_SysWMEntry *wmmsg;
|
||||
if (SDL_EventQ.wmmsg_free) {
|
||||
wmmsg = SDL_EventQ.wmmsg_free;
|
||||
SDL_EventQ.wmmsg_free = wmmsg->next;
|
||||
|
|
|
@ -473,7 +473,6 @@ static int SDL_SendDollarRecord(SDL_GestureTouch* touch,SDL_GestureID gestureId)
|
|||
void SDL_GestureProcessEvent(SDL_Event* event)
|
||||
{
|
||||
float x,y;
|
||||
SDL_FloatPoint path[DOLLARNPOINTS];
|
||||
int index;
|
||||
int i;
|
||||
float pathDx, pathDy;
|
||||
|
@ -497,6 +496,8 @@ void SDL_GestureProcessEvent(SDL_Event* event)
|
|||
|
||||
/* Finger Up */
|
||||
if (event->type == SDL_FINGERUP) {
|
||||
SDL_FloatPoint path[DOLLARNPOINTS];
|
||||
|
||||
inTouch->numDownFingers--;
|
||||
|
||||
#ifdef ENABLE_DOLLAR
|
||||
|
|
Loading…
Reference in New Issue