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, ...) {} nore entries where they match source files that are tracked in Git. This is relevant to me at least, as some code searching tools use .gitignore files and will ignore matched files.