[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#784681: ccache: mednafen fails to build with ccache



Control: reassign -1 g++
Control: found -1 g++/4:4.9.2-3

Hi Joel,

On Sat, 9 May 2015 22:33:29 +0200, Joel Rosdahl <joel@debian.org> wrote:
> I would say that this is a GCC bug - g++ can't compile its own preprocessed
> source code.

Indeed, I didn't think to check that... I'm reassigning the bug, thanks for
your detective work!

Regards,

Stephen

> The problem can be reproduced without ccache by building src/hash/sha1.cpp
> with -save-temps:
> 
> % cd src
> % /usr/bin/g++ -save-temps -DLOCALEDIR=\"/usr/local/share/locale\"
> -DHAVE_CONFIG_H -I../include -I../include -I../intl    -fsigned-char  -Wall
> -Wshadow -Wempty-body -Wignored-qualifiers -Wvla -Wvariadic-macros
> -Wdisabled-optimization  -fno-fast-math -fno-unsafe-math-optimizations
> -fno-aggressive-loop-optimizations -fomit-frame-pointer -fwrapv  -g -O2
> -std=gnu++11 -MT hash/sha1.o -MD -MP -MF $depbase.Tpo -c -o hash/sha1.o
> hash/sha1.cpp
> hash/sha1.cpp:161:128: error: invalid digit "9" in octal constant
>   assert(sha1(tv, 65) == "079b9ef0684bd9a600b9a23caa4297d064ce076e"_sha1);
> 
>                                                     ^
> hash/sha1.cpp: In function 'void sha1_test()':
> hash/sha1.cpp:156:168: error: unable to find string literal operator
> 'operator""e119a863bce69ad1b6ca1a51e94994531d122088'
>   assert(sha1(tv, 55) == "e119a863bce69ad1b6ca1a51e94994531d122088"_sha1);
> 
> 
>                 ^
> hash/sha1.cpp:157:168: error: unable to find string literal operator
> 'operator""fd62c272e1f0f24b92a0ec8360519cd64d6ab986'
>   assert(sha1(tv, 56) == "fd62c272e1f0f24b92a0ec8360519cd64d6ab986"_sha1);
> 
> 
>                 ^
> hash/sha1.cpp:158:128: error: expected ')' before numeric constant
>   assert(sha1(tv, 57) == "010b0113d06cffb80f2beb657ef39682e5e7de79"_sha1);
> 
>                                                     ^
> hash/sha1.cpp:159:168: error: unable to find string literal operator
> 'operator""adf8998c4791fc378fa6d8b23666934522546778'
>   assert(sha1(tv, 63) == "adf8998c4791fc378fa6d8b23666934522546778"_sha1);
> 
> 
>                 ^
> hash/sha1.cpp:160:128: error: expected ')' before numeric constant
>   assert(sha1(tv, 64) == "787680a25bf74f34c22b2c37d7d5bae2feceb20c"_sha1);
> 
>                                                     ^
> hash/sha1.cpp:161:128: error: expected ')' before numeric constant
>   assert(sha1(tv, 65) == "079b9ef0684bd9a600b9a23caa4297d064ce076e"_sha1);
> 
>                                                     ^
> % g++ --version | head -n1
> g++ (Debian 4.9.2-16) 4.9.2
> 
> -- Joel
> 
> On 7 May 2015 at 20:17, Stephen Kitt <skitt@debian.org> wrote:
> 
> > Package: ccache
> > Version: 3.1.10-1
> > Severity: normal
> >
> > Dear Maintainer,
> >
> > The current version of mednafen (0.9.38.4) fails to build with ccache
> > (after the first build):
> >
> > g++ -DLOCALEDIR=\"/usr/share/locale\" -DHAVE_CONFIG_H -I../include
> > -I../include -I../intl   -D_FORTIFY_SOURCE=2   -fsigned-char  -Wall
> > -Wshadow -Wempty-body -Wignored-qualifiers -Wvla -Wvariadic-macros
> > -Wdisabled-optimization  -fno-fast-math -fno-unsafe-math-optimizations
> > -fno-aggressive-loop-optimizations -fomit-frame-pointer -fwrapv  -g -O2
> > -fstack-protector-strong -Wformat -Werror=format-security -std=gnu++11 -c
> > -o hash/sha1.o hash/sha1.cpp
> > hash/sha1.cpp:161:128: error: invalid digit "9" in octal constant
> >   assert(sha1(tv, 65) == "079b9ef0684bd9a600b9a23caa4297d064ce076e"_sha1);
> >
> >                                                       ^
> > hash/sha1.cpp: In function ‘void sha1_test()’:
> > hash/sha1.cpp:156:168: error: unable to find string literal operator
> > ‘operator""e119a863bce69ad1b6ca1a51e94994531d122088’
> >   assert(sha1(tv, 55) == "e119a863bce69ad1b6ca1a51e94994531d122088"_sha1);
> >
> >
> >                   ^
> > hash/sha1.cpp:157:168: error: unable to find string literal operator
> > ‘operator""fd62c272e1f0f24b92a0ec8360519cd64d6ab986’
> >   assert(sha1(tv, 56) == "fd62c272e1f0f24b92a0ec8360519cd64d6ab986"_sha1);
> >
> >
> >                   ^
> > hash/sha1.cpp:158:128: error: expected ‘)’ before numeric constant
> >   assert(sha1(tv, 57) == "010b0113d06cffb80f2beb657ef39682e5e7de79"_sha1);
> >
> >                                                       ^
> > hash/sha1.cpp:159:168: error: unable to find string literal operator
> > ‘operator""adf8998c4791fc378fa6d8b23666934522546778’
> >   assert(sha1(tv, 63) == "adf8998c4791fc378fa6d8b23666934522546778"_sha1);
> >
> >
> >                   ^
> > hash/sha1.cpp:160:128: error: expected ‘)’ before numeric constant
> >   assert(sha1(tv, 64) == "787680a25bf74f34c22b2c37d7d5bae2feceb20c"_sha1);
> >
> >                                                       ^
> > hash/sha1.cpp:161:128: error: expected ‘)’ before numeric constant
> >   assert(sha1(tv, 65) == "079b9ef0684bd9a600b9a23caa4297d064ce076e"_sha1);
> >
> >                                                       ^
> > Makefile:944: recipe for target 'hash/sha1.o' failed
> >
> >
> > Uninstalling ccache allows the source to build.
> >
> > Regards,
> >
> > Stephen
> >
> >
> > -- System Information:
> > Debian Release: stretch/sid
> >   APT prefers testing
> >   APT policy: (500, 'testing'), (500, 'stable'), (200, 'unstable'), (1,
> > 'experimental')
> > Architecture: amd64 (x86_64)
> > Foreign Architectures: i386
> >
> > Kernel: Linux 3.16.0-4-amd64 (SMP w/8 CPU cores)
> > Locale: LANG=en_GB.utf8, LC_CTYPE=en_GB.utf8 (charmap=UTF-8)
> > Shell: /bin/sh linked to /bin/dash
> > Init: sysvinit (via /sbin/init)
> >
> > Versions of packages ccache depends on:
> > ii  libc6   2.19-18
> > ii  zlib1g  1:1.2.8.dfsg-2+b1
> >
> > ccache recommends no packages.
> >
> > Versions of packages ccache suggests:
> > pn  distcc  <none>
> >
> > -- no debconf information
> >
> >

Attachment: pgpHpVurffIIZ.pgp
Description: OpenPGP digital signature


Reply to: