Bug#831098: libretro-desmume: FTBFS with GCC 6: src/MMU_timing.h:158:28: error: left operand of shift expression '(-1 << 11)' is negative [-fpermissive]

Sérgio Benjamim sergiobenrocha2 at gmail.com
Sun Aug 21 23:06:24 UTC 2016


Hi!

There's a fix right here: 
https://mentors.debian.net/debian/pool/main/libr/libretro-desmume/libretro-desmume_0.9.11+git20160821+dfsg1-1.dsc

Upstream builds with -fpermissive now.

regards,
sergio-br2


On Thu, 14 Jul 2016 09:07:49 +0200 Lucas Nussbaum <lucas at debian.org> wrote:
 > Source: libretro-desmume
 > Version: 0.9.11+git20160319+dfsg1-1
 > Severity: serious
 > Tags: stretch sid
 > User: debian-qa at lists.debian.org
 > Usertags: qa-ftbfs-20160713 qa-ftbfs
 > Justification: FTBFS with GCC 6 on amd64
 >
 > Hi,
 >
 > During a rebuild of all packages in sid using the gcc-defaults package
 > available in experimental to make GCC default to version 6, your 
package failed
 > to build on amd64. For more information about GCC 6 and Stretch, see:
 > - https://wiki.debian.org/GCC6
 > - https://lists.debian.org/debian-devel-announce/2016/06/msg00007.html
 >
 > Relevant part (hopefully):
 > > g++ -g -fstack-protector-strong -Wformat -Werror=format-security 
-DHAVE_JIT -DNDEBUG -O3 -D__LIBRETRO__ -fPIC -Isrc -Isrc/libretro 
-Wdate-time -D_FORTIFY_SOURCE=2 -c -o src/armcpu.o src/armcpu.cpp
 > > In file included from src/armcpu.cpp:34:0:
 > > src/MMU_timing.h: In instantiation of 'class CacheController<13, 2, 
5>':
 > > src/MMU_timing.h:253:26: required from here
 > > src/MMU_timing.h:158:28: error: left operand of shift expression 
'(-1 << 11)' is negative [-fpermissive]
 > > enum { TAGMASK = (u32)(~0 << TAGSHIFT) };
 > > ~~~~^~~~~~~~~~~~
 > > src/MMU_timing.h:158:7: error: enumerator value for 'TAGMASK' is 
not an integer constant
 > > enum { TAGMASK = (u32)(~0 << TAGSHIFT) };
 > > ^
 > > src/MMU_timing.h:159:61: error: left operand of shift expression 
'(-1 << 5)' is negative [-fpermissive]
 > > enum { BLOCKMASK = ((u32)~0 >> (32 - TAGSHIFT)) & (u32)(~0 << 
BLOCKSIZESHIFT) };
 > > ~~~~^~~~~~~~~~~~~~~~~~
 > > src/MMU_timing.h:159:7: error: enumerator value for 'BLOCKMASK' is 
not an integer constant
 > > enum { BLOCKMASK = ((u32)~0 >> (32 - TAGSHIFT)) & (u32)(~0 << 
BLOCKSIZESHIFT) };
 > > ^
 > > src/MMU_timing.h: In instantiation of 'class CacheController<12, 2, 
5>':
 > > src/MMU_timing.h:254:26: required from here
 > > src/MMU_timing.h:158:28: error: left operand of shift expression 
'(-1 << 10)' is negative [-fpermissive]
 > > enum { TAGMASK = (u32)(~0 << TAGSHIFT) };
 > > ~~~~^~~~~~~~~~~~
 > > src/MMU_timing.h:158:7: error: enumerator value for 'TAGMASK' is 
not an integer constant
 > > enum { TAGMASK = (u32)(~0 << TAGSHIFT) };
 > > ^
 > > src/MMU_timing.h:159:61: error: left operand of shift expression 
'(-1 << 5)' is negative [-fpermissive]
 > > enum { BLOCKMASK = ((u32)~0 >> (32 - TAGSHIFT)) & (u32)(~0 << 
BLOCKSIZESHIFT) };
 > > ~~~~^~~~~~~~~~~~~~~~~~
 > > src/MMU_timing.h:159:7: error: enumerator value for 'BLOCKMASK' is 
not an integer constant
 > > enum { BLOCKMASK = ((u32)~0 >> (32 - TAGSHIFT)) & (u32)(~0 << 
BLOCKSIZESHIFT) };
 > > ^
 > > make[2]: *** [src/armcpu.o] Error 1
 >
 > The full build log is available from:
 > 
http://people.debian.org/~lucas/logs/2016/07/13/libretro-desmume_0.9.11+git20160319+dfsg1-1_unstable_gcc6.log
 >
 > A list of current common problems and possible solutions is available at
 > http://wiki.debian.org/qa.debian.org/FTBFS . You're welcome to 
contribute!
 >
 > About the archive rebuild: The rebuild was done on EC2 VM instances from
 > Amazon Web Services, using a clean, minimal and up-to-date chroot. Every
 > failed build was retried once to eliminate random failures.
 >
 >



More information about the Pkg-games-devel mailing list