From: zeromus Origin: upstream, https://sourceforge.net/p/desmume/code/5514, https://sourceforge.net/p/desmume/code/5517, https://sourceforge.net/p/desmume/code/5430 Subject: fix GCC6 issues Bug: https://sourceforge.net/p/desmume/bugs/1570/ Bug-Debian: http://bugs.debian.org/811691 Index: desmume/src/MMU_timing.h =================================================================== --- desmume/src/MMU_timing.h (revision 5513) +++ desmume/src/MMU_timing.h (revision 5517) @@ -155,8 +155,8 @@ enum { ASSOCIATIVITY = 1 << ASSOCIATIVESHIFT }; enum { BLOCKSIZE = 1 << BLOCKSIZESHIFT }; enum { TAGSHIFT = SIZESHIFT - ASSOCIATIVESHIFT }; - enum { TAGMASK = (u32)(~0 << TAGSHIFT) }; - enum { BLOCKMASK = ((u32)~0 >> (32 - TAGSHIFT)) & (u32)(~0 << BLOCKSIZESHIFT) }; + enum { TAGMASK = (u32)(~0U << TAGSHIFT) }; + enum { BLOCKMASK = ((u32)~0U >> (32 - TAGSHIFT)) & (u32)(~0U << BLOCKSIZESHIFT) }; enum { WORDSIZE = sizeof(u32) }; enum { WORDSPERBLOCK = (1 << BLOCKSIZESHIFT) / WORDSIZE }; enum { DATAPERWORD = WORDSIZE * ASSOCIATIVITY }; Index: desmume/src/ctrlssdl.cpp =================================================================== --- desmume/src/ctrlssdl.cpp (revision 5513) +++ desmume/src/ctrlssdl.cpp (revision 5517) @@ -200,7 +200,7 @@ break; case SDL_JOYAXISMOTION: /* Dead zone of 50% */ - if( (abs(event.jaxis.value) >> 14) != 0 ) + if( ((u32)abs(event.jaxis.value) >> 14) != 0 ) { key = ((event.jaxis.which & 15) << 12) | JOY_AXIS << 8 | ((event.jaxis.axis & 127) << 1); if (event.jaxis.value > 0) { @@ -370,7 +370,7 @@ Note: button constants have a 1bit offset. */ case SDL_JOYAXISMOTION: key_code = ((event->jaxis.which & 15) << 12) | JOY_AXIS << 8 | ((event->jaxis.axis & 127) << 1); - if( (abs(event->jaxis.value) >> 14) != 0 ) + if( ((u32)abs(event->jaxis.value) >> 14) != 0 ) { if (event->jaxis.value > 0) key_code |= 1; Index: desmume/src/wifi.cpp =================================================================== --- desmume/src/wifi.cpp (revision 5429) +++ desmume/src/wifi.cpp (revision 5430) @@ -320,9 +320,9 @@ #if (WIFI_LOGGING_LEVEL >= 1) #if WIFI_LOG_USE_LOGC - #define WIFI_LOG(level, ...) if(level <= WIFI_LOGGING_LEVEL) LOGC(8, "WIFI: "__VA_ARGS__); + #define WIFI_LOG(level, ...) if(level <= WIFI_LOGGING_LEVEL) LOGC(8, "WIFI: " __VA_ARGS__); #else - #define WIFI_LOG(level, ...) if(level <= WIFI_LOGGING_LEVEL) printf("WIFI: "__VA_ARGS__); + #define WIFI_LOG(level, ...) if(level <= WIFI_LOGGING_LEVEL) printf("WIFI: " __VA_ARGS__); #endif #else #define WIFI_LOG(level, ...) {}