Skip Menu |

This queue is for tickets about the Net-DirectConnect-TigerHash CPAN distribution.

Report information
The Basics
Id: 117264
Status: open
Priority: 0/
Queue: Net-DirectConnect-TigerHash

People
Owner: PRO [...] cpan.org
Requestors: ANDK [...] cpan.org
Cc:
AdminCc:

Bug Information
Severity: (no value)
Broken in: 0.08
Fixed in: (no value)



Subject: Fails to compile with g++ 6
On my Debian sid I had luck with the g++ compilation with version 6 by adding the -std=c++98 switch. Without that I get the following output: % make "/home/sand/src/perl/repoperls/installed-perls/host/k93x64sid/v5.25.4-20-gc2f7c0b/9af6/bin/perl" -MExtUtils::Command::MM -e 'cp_nonempty' -- TigerHash.bs blib/arch/auto/Net/DirectConnect/TigerHash/TigerHash.bs 644 g++ -c -I. -D_REENTRANT -D_GNU_SOURCE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -g -DVERSION=\"0.08\" -DXS_VERSION=\"0.08\" -fPIC "-I/home/sand/src/perl/repoperls/installed-perls/host/k93x64sid/v5.25.4-20-gc2f7c0b/9af6/lib/5.25.5/x86_64-linux-thread-multi/CORE" -I./dcpp/ -I../dcpp/ TigerHash.c In file included from /home/sand/src/perl/repoperls/installed-perls/host/k93x64sid/v5.25.4-20-gc2f7c0b/9af6/lib/5.25.5/x86_64-linux-thread-multi/CORE/perl.h:5571:0, from TigerHash.xs:7: /home/sand/src/perl/repoperls/installed-perls/host/k93x64sid/v5.25.4-20-gc2f7c0b/9af6/lib/5.25.5/x86_64-linux-thread-multi/CORE/pp.h:66:17: warning: invalid suffix on literal; C++11 requires a space between literal and string macro [-Wliteral-suffix] "MARK push %p %"IVdf"\n", \ ^ /home/sand/src/perl/repoperls/installed-perls/host/k93x64sid/v5.25.4-20-gc2f7c0b/9af6/lib/5.25.5/x86_64-linux-thread-multi/CORE/pp.h:76:17: warning: invalid suffix on literal; C++11 requires a space between literal and string macro [-Wliteral-suffix] "MARK inc %p %"IVdf"\n", \ ^ In file included from /home/sand/src/perl/repoperls/installed-perls/host/k93x64sid/v5.25.4-20-gc2f7c0b/9af6/lib/5.25.5/x86_64-linux-thread-multi/CORE/perl.h:5876:0, from TigerHash.xs:7: /home/sand/src/perl/repoperls/installed-perls/host/k93x64sid/v5.25.4-20-gc2f7c0b/9af6/lib/5.25.5/x86_64-linux-thread-multi/CORE/inline.h:134:6: warning: invalid suffix on literal; C++11 requires a space between literal and string macro [-Wliteral-suffix] "MARK top %p %"IVdf"\n", ^ /home/sand/src/perl/repoperls/installed-perls/host/k93x64sid/v5.25.4-20-gc2f7c0b/9af6/lib/5.25.5/x86_64-linux-thread-multi/CORE/inline.h:144:6: warning: invalid suffix on literal; C++11 requires a space between literal and string macro [-Wliteral-suffix] "MARK pop %p %"IVdf"\n", ^ In file included from ./dcpp/MerkleTree.h:25:0, from TigerHash.xs:23: ./dcpp/HashValue.h:51:8: error: specialization of 'template<class _Tp> struct std::hash' in different namespace [-fpermissive] struct hash<dcpp::HashValue<T> > { ^~~~~~~~~~~~~~~~~~~~~~~~~ In file included from /usr/include/c++/6/bits/stl_bvector.h:1262:0, from /usr/include/c++/6/vector:65, from ./dcpp/stdinc.h:119, from TigerHash.xs:19: /usr/include/c++/6/bits/functional_hash.h:58:12: error: from definition of 'template<class _Tp> struct std::hash' [-fpermissive] struct hash; ^~~~ In file included from ./dcpp/MerkleTree.h:25:0, from TigerHash.xs:23: ./dcpp/HashValue.h:52:58: error: definition of 'std::size_t std::hash<dcpp::HashValue<T> >::operator()(const dcpp::HashValue<T>&) const' is not in namespace enclosing 'std::hash<dcpp::HashValue<T> >' [-fpermissive] size_t operator()(const dcpp::HashValue<T>& rhs) const { ^~~~~ HTH&&Thanks,
new version with c++11 here: https://github.com/proller/dcppp/tree/master/TigerHash but i think better to use Crypt::Rhash