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

Bug#811816: criticalmass: FTBFS with GCC 6: misc errors



Package: criticalmass
Version: 1:1.0.0-4
Severity: important
User: debian-gcc@lists.debian.org
Usertags: ftbfs-gcc-6 gcc-6-no-match

This package fails to build with GCC 6.  GCC 6 has not been released
yet, but it's expected that GCC 6 will become the default compiler for
stretch.

Note that only the first error is reported; there might be more.  You
can find a snapshot of GCC 6 in experimental.  To build with GCC 6,
you can set CC=gcc-6 CXX=g++-6 explicitly.

You may be able to find out more about this issue at
https://gcc.gnu.org/gcc-6/changes.html

> sbuild (Debian sbuild) 0.67.0 (26 Dec 2015) on dl580gen9-02.hlinux
...
> g++ -DHAVE_CONFIG_H -I. -I..     -W -Wall -fno-exceptions -O2 -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -I/usr/X11R6/include -c -o Config.o Config.cpp
> In file included from /usr/include/c++/6/ext/hash_map:60:0,
>                  from ./hashMap.hpp:32,
>                  from ./Config.hpp:19,
>                  from Config.cpp:23:
> /usr/include/c++/6/backward/backward_warning.h:32:2: warning: #warning This file includes at least one deprecated or antiquated header which may be removed without further notice at a future date. Please use a non-deprecated interface with equivalent functionality instead. For a listing of replacement headers and interfaces, consult the file backward_warning.h. To disable this warning use -Wno-deprecated. [-Wcpp]
>  #warning \
>   ^~~~~~~
> 
> In file included from Config.cpp:23:0:
> ./Config.hpp:94:63: error: template argument 3 is invalid
>       hash_map< string, Value*, hash<string>, equal_to<string> > &kvmap);
>                                                                ^
> 
> ./Config.hpp:94:63: error: template argument 3 is invalid
> ./Config.hpp:94:63: error: template argument 3 is invalid
> ./Config.hpp:94:6: error: 'hash_map' is not a type
>       hash_map< string, Value*, hash<string>, equal_to<string> > &kvmap);
>       ^~~~~~~~
> 
> ./Config.hpp:94:14: error: expected ',' or '...' before '<' token
>       hash_map< string, Value*, hash<string>, equal_to<string> > &kvmap);
>               ^
> 
> ./Config.hpp:97:63: error: template argument 3 is invalid
>       hash_map< string, Value*, hash<string>, equal_to<string> > &kvmap);
>                                                                ^
> 
> ./Config.hpp:97:63: error: template argument 3 is invalid
> ./Config.hpp:97:63: error: template argument 3 is invalid
> ./Config.hpp:97:6: error: 'hash_map' is not a type
>       hash_map< string, Value*, hash<string>, equal_to<string> > &kvmap);
>       ^~~~~~~~
> 
> ./Config.hpp:97:14: error: expected ',' or '...' before '<' token
>       hash_map< string, Value*, hash<string>, equal_to<string> > &kvmap);
>               ^
> 
> ./Config.hpp:99:63: error: template argument 3 is invalid
>       hash_map< string, Value*, hash<string>, equal_to<string> > &kvmap);
>                                                                ^
> 
> ./Config.hpp:99:63: error: template argument 3 is invalid
> ./Config.hpp:99:63: error: template argument 3 is invalid
> ./Config.hpp:99:6: error: 'hash_map' is not a type
>       hash_map< string, Value*, hash<string>, equal_to<string> > &kvmap);
>       ^~~~~~~~
> 
> ./Config.hpp:99:14: error: expected ',' or '...' before '<' token
>       hash_map< string, Value*, hash<string>, equal_to<string> > &kvmap);
>               ^
> 
> ./Config.hpp:101:63: error: template argument 3 is invalid
>       hash_map< string, Value*, hash<string>, equal_to<string> > &kvmap);
>                                                                ^
> 
> ./Config.hpp:101:63: error: template argument 3 is invalid
> ./Config.hpp:101:63: error: template argument 3 is invalid
> ./Config.hpp:101:6: error: 'hash_map' is not a type
>       hash_map< string, Value*, hash<string>, equal_to<string> > &kvmap);
>       ^~~~~~~~
> 
> ./Config.hpp:101:14: error: expected ',' or '...' before '<' token
>       hash_map< string, Value*, hash<string>, equal_to<string> > &kvmap);
>               ^
> 
> ./Config.hpp:103:63: error: template argument 3 is invalid
>       hash_map< string, Value*, hash<string>, equal_to<string> > &kvmap);
>                                                                ^
> 
> ./Config.hpp:103:63: error: template argument 3 is invalid
> ./Config.hpp:103:63: error: template argument 3 is invalid
> ./Config.hpp:103:6: error: 'hash_map' is not a type
>       hash_map< string, Value*, hash<string>, equal_to<string> > &kvmap);
>       ^~~~~~~~
> 
> ./Config.hpp:103:14: error: expected ',' or '...' before '<' token
>       hash_map< string, Value*, hash<string>, equal_to<string> > &kvmap);
>               ^
> 
> ./Config.hpp:109:62: error: template argument 3 is invalid
>      hash_map< string, Value*, hash<string>, equal_to<string> > _keyValueMap;
>                                                               ^
> 
> ./Config.hpp:110:62: error: template argument 3 is invalid
>      hash_map< string, Value*, hash<string>, equal_to<string> > _keyValueMapTrans;
>                                                               ^
> 
> In file included from Config.cpp:25:0:
> ./ResourceManager.hpp:74:89: error: template argument 3 is invalid
>      hash_map< const string, DirectoryEntry*, hash<const string>, equal_to<const string> > _dirEntryMap;
>                                                                                          ^
> 
> In file included from Config.cpp:26:0:
> ./Tokenizer.hpp:23:48: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]
>      Tokenizer( string line, char *whitespace = " \t\n\r"):
>                                                 ^~~~~~~~~
> 
> ./Tokenizer.hpp:32:65: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]
>      Tokenizer( string line, bool withQuotes, char *whitespace = " \t\n\r"):
>                                                                  ^~~~~~~~~
> 
> Config.cpp: In destructor 'Config::~Config()':
> Config.cpp:42:43: error: template argument 3 is invalid
>      hash_map<string, Value*, hash<string> >::const_iterator ci;
>                                            ^
> 
> Config.cpp:42:61: error: qualified-id in declaration before 'ci'
>      hash_map<string, Value*, hash<string> >::const_iterator ci;
>                                                              ^~
> 
> Config.cpp:43:10: error: 'ci' was not declared in this scope
>      for( ci=_keyValueMap.begin(); ci!=_keyValueMap.end(); ci++)
>           ^~
> 
> Config.cpp:43:26: error: request for member 'begin' in '((Config*)this)->Config::_keyValueMap', which is of non-class type 'int'
>      for( ci=_keyValueMap.begin(); ci!=_keyValueMap.end(); ci++)
>                           ^~~~~
> 
> Config.cpp:43:52: error: request for member 'end' in '((Config*)this)->Config::_keyValueMap', which is of non-class type 'int'
>      for( ci=_keyValueMap.begin(); ci!=_keyValueMap.end(); ci++)
>                                                     ^~~
> 
> Config.cpp:47:18: error: request for member 'clear' in '((Config*)this)->Config::_keyValueMap', which is of non-class type 'int'
>      _keyValueMap.clear();
>                   ^~~~~
> 
> Config.cpp:49:10: error: 'ci' was not declared in this scope
>      for( ci=_keyValueMapTrans.begin(); ci!=_keyValueMapTrans.end(); ci++)
>           ^~
> 
> Config.cpp:49:31: error: request for member 'begin' in '((Config*)this)->Config::_keyValueMapTrans', which is of non-class type 'int'
>      for( ci=_keyValueMapTrans.begin(); ci!=_keyValueMapTrans.end(); ci++)
>                                ^~~~~
> 
> Config.cpp:49:62: error: request for member 'end' in '((Config*)this)->Config::_keyValueMapTrans', which is of non-class type 'int'
>      for( ci=_keyValueMapTrans.begin(); ci!=_keyValueMapTrans.end(); ci++)
>                                                               ^~~
> 
> Config.cpp:53:23: error: request for member 'clear' in '((Config*)this)->Config::_keyValueMapTrans', which is of non-class type 'int'
>      _keyValueMapTrans.clear();
>                        ^~~~~
> 
> Config.cpp: In member function 'void Config::getConfigItemList(std::__cxx11::list<Config::ConfigItem>&)':
> Config.cpp:58:43: error: template argument 3 is invalid
>      hash_map<string, Value*, hash<string> >::const_iterator ci;
>                                            ^
> 
> Config.cpp:58:61: error: qualified-id in declaration before 'ci'
>      hash_map<string, Value*, hash<string> >::const_iterator ci;
>                                                              ^~
> 
> Config.cpp:59:10: error: 'ci' was not declared in this scope
>      for( ci=_keyValueMap.begin(); ci!=_keyValueMap.end(); ci++)
>           ^~
> 
> Config.cpp:59:26: error: request for member 'begin' in '((Config*)this)->Config::_keyValueMap', which is of non-class type 'int'
>      for( ci=_keyValueMap.begin(); ci!=_keyValueMap.end(); ci++)
>                           ^~~~~
> 
> Config.cpp:59:52: error: request for member 'end' in '((Config*)this)->Config::_keyValueMap', which is of non-class type 'int'
>      for( ci=_keyValueMap.begin(); ci!=_keyValueMap.end(); ci++)
>                                                     ^~~
> 
> Config.cpp: In member function 'void Config::updateFromFile()':
> Config.cpp:197:39: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]
>          Tokenizer  t( line, " \t\n\r=");
>                                        ^
> 
> Config.cpp: In member function 'void Config::updateTransitoryKeyword(const char*, const char*)':
> Config.cpp:220:19: error: no match for 'operator[]' (operand types are 'int' and 'std::__cxx11::string {aka std::__cxx11::basic_string<char>}')
>   _keyValueMapTrans[ tmpKeyword] = new Value( tmpValue);
>                    ^
> 
> Config.cpp: In member function 'void Config::updateKeyword(const char*, const char*)':
> Config.cpp:232:14: error: no match for 'operator[]' (operand types are 'int' and 'std::__cxx11::string {aka std::__cxx11::basic_string<char>}')
>   _keyValueMap[ tmpKeyword] = new Value( tmpValue);
>               ^
> 
> Config.cpp: In member function 'void Config::updateTransitoryKeyword(std::__cxx11::string, std::__cxx11::string)':
> Config.cpp:240:22: error: no match for 'operator[]' (operand types are 'int' and 'const string {aka const std::__cxx11::basic_string<char>}')
>      _keyValueMapTrans[ keyword] = new Value( value);
>                       ^
> 
> Config.cpp: In member function 'void Config::updateKeyword(std::__cxx11::string, std::__cxx11::string)':
> Config.cpp:247:17: error: no match for 'operator[]' (operand types are 'int' and 'const string {aka const std::__cxx11::basic_string<char>}')
>      _keyValueMap[ keyword] = new Value( value);
>                  ^
> 
> Config.cpp: In member function 'void Config::updateTransitoryKeyword(std::__cxx11::string, Value*)':
> Config.cpp:254:22: error: no match for 'operator[]' (operand types are 'int' and 'const string {aka const std::__cxx11::basic_string<char>}')
>      _keyValueMapTrans[ keyword] = value;
>                       ^
> 
> Config.cpp: In member function 'void Config::updateKeyword(std::__cxx11::string, Value*)':
> Config.cpp:261:17: error: no match for 'operator[]' (operand types are 'int' and 'const string {aka const std::__cxx11::basic_string<char>}')
>      _keyValueMap[ keyword] = value;
>                  ^
> 
> Config.cpp: At global scope:
> Config.cpp:275:59: error: template argument 3 is invalid
>   hash_map< string, Value*, hash<string>, equal_to<string> > &kvmap)
>                                                            ^
> 
> Config.cpp:275:59: error: template argument 3 is invalid
> Config.cpp:275:59: error: template argument 3 is invalid
> Config.cpp:275:2: error: 'hash_map' is not a type
>   hash_map< string, Value*, hash<string>, equal_to<string> > &kvmap)
>   ^~~~~~~~
> 
> Config.cpp:275:10: error: expected ',' or '...' before '<' token
>   hash_map< string, Value*, hash<string>, equal_to<string> > &kvmap)
>           ^
> 
> Config.cpp: In member function 'void Config::removeImpl(const string&, int)':
> Config.cpp:277:43: error: template argument 3 is invalid
>      hash_map<string, Value*, hash<string> >::iterator ci;
>                                            ^
> 
> Config.cpp:277:55: error: qualified-id in declaration before 'ci'
>      hash_map<string, Value*, hash<string> >::iterator ci;
>                                                        ^~
> 
> Config.cpp:278:5: error: 'ci' was not declared in this scope
>      ci = kvmap.find( keyword);
>      ^~
> 
> Config.cpp:278:10: error: 'kvmap' was not declared in this scope
>      ci = kvmap.find( keyword);
>           ^~~~~
> 
> Config.cpp: In member function 'void Config::saveToFile(bool)':
> Config.cpp:305:43: error: template argument 3 is invalid
>      hash_map<string, Value*, hash<string> >::const_iterator ci;
>                                            ^
> 
> Config.cpp:305:61: error: qualified-id in declaration before 'ci'
>      hash_map<string, Value*, hash<string> >::const_iterator ci;
>                                                              ^~
> 
> Config.cpp:306:10: error: 'ci' was not declared in this scope
>      for( ci=_keyValueMap.begin(); ci!=_keyValueMap.end(); ci++)
>           ^~
> 
> Config.cpp:306:26: error: request for member 'begin' in '((Config*)this)->Config::_keyValueMap', which is of non-class type 'int'
>      for( ci=_keyValueMap.begin(); ci!=_keyValueMap.end(); ci++)
>                           ^~~~~
> 
> Config.cpp:306:52: error: request for member 'end' in '((Config*)this)->Config::_keyValueMap', which is of non-class type 'int'
>      for( ci=_keyValueMap.begin(); ci!=_keyValueMap.end(); ci++)
>                                                     ^~~
> 
> Config.cpp: At global scope:
> Config.cpp:367:59: error: template argument 3 is invalid
>   hash_map< string, Value*, hash<string>, equal_to<string> > &kvmap)
>                                                            ^
> 
> Config.cpp:367:59: error: template argument 3 is invalid
> Config.cpp:367:59: error: template argument 3 is invalid
> Config.cpp:367:2: error: 'hash_map' is not a type
>   hash_map< string, Value*, hash<string>, equal_to<string> > &kvmap)
>   ^~~~~~~~
> 
> Config.cpp:367:10: error: expected ',' or '...' before '<' token
>   hash_map< string, Value*, hash<string>, equal_to<string> > &kvmap)
>           ^
> 
> Config.cpp: In member function 'bool Config::getStringImpl(const string&, std::__cxx11::string&, int)':
> Config.cpp:369:43: error: template argument 3 is invalid
>      hash_map<string, Value*, hash<string> >::const_iterator ci;
>                                            ^
> 
> Config.cpp:369:61: error: qualified-id in declaration before 'ci'
>      hash_map<string, Value*, hash<string> >::const_iterator ci;
>                                                              ^~
> 
> Config.cpp:370:5: error: 'ci' was not declared in this scope
>      ci = kvmap.find( keyword);
>      ^~
> 
> Config.cpp:370:10: error: 'kvmap' was not declared in this scope
>      ci = kvmap.find( keyword);
>           ^~~~~
> 
> Config.cpp: At global scope:
> Config.cpp:382:59: error: template argument 3 is invalid
>   hash_map< string, Value*, hash<string>, equal_to<string> > &kvmap)
>                                                            ^
> 
> Config.cpp:382:59: error: template argument 3 is invalid
> Config.cpp:382:59: error: template argument 3 is invalid
> Config.cpp:382:2: error: 'hash_map' is not a type
>   hash_map< string, Value*, hash<string>, equal_to<string> > &kvmap)
>   ^~~~~~~~
> 
> Config.cpp:382:10: error: expected ',' or '...' before '<' token
>   hash_map< string, Value*, hash<string>, equal_to<string> > &kvmap)
>           ^
> 
> Config.cpp: In member function 'bool Config::getIntegerImpl(const string&, int&, int)':
> Config.cpp:384:43: error: template argument 3 is invalid
>      hash_map<string, Value*, hash<string> >::const_iterator ci;
>                                            ^
> 
> Config.cpp:384:61: error: qualified-id in declaration before 'ci'
>      hash_map<string, Value*, hash<string> >::const_iterator ci;
>                                                              ^~
> 
> Config.cpp:385:5: error: 'ci' was not declared in this scope
>      ci = kvmap.find( keyword);
>      ^~
> 
> Config.cpp:385:10: error: 'kvmap' was not declared in this scope
>      ci = kvmap.find( keyword);
>           ^~~~~
> 
> Config.cpp: At global scope:
> Config.cpp:397:59: error: template argument 3 is invalid
>   hash_map< string, Value*, hash<string>, equal_to<string> > &kvmap)
>                                                            ^
> 
> Config.cpp:397:59: error: template argument 3 is invalid
> Config.cpp:397:59: error: template argument 3 is invalid
> Config.cpp:397:2: error: 'hash_map' is not a type
>   hash_map< string, Value*, hash<string>, equal_to<string> > &kvmap)
>   ^~~~~~~~
> 
> Config.cpp:397:10: error: expected ',' or '...' before '<' token
>   hash_map< string, Value*, hash<string>, equal_to<string> > &kvmap)
>           ^
> 
> Config.cpp: In member function 'bool Config::getBooleanImpl(const string&, bool&, int)':
> Config.cpp:399:43: error: template argument 3 is invalid
>      hash_map<string, Value*, hash<string> >::const_iterator ci;
>                                            ^
> 
> Config.cpp:399:61: error: qualified-id in declaration before 'ci'
>      hash_map<string, Value*, hash<string> >::const_iterator ci;
>                                                              ^~
> 
> Config.cpp:400:5: error: 'ci' was not declared in this scope
>      ci = kvmap.find( keyword);
>      ^~
> 
> Config.cpp:400:10: error: 'kvmap' was not declared in this scope
>      ci = kvmap.find( keyword);
>           ^~~~~
> 
> Config.cpp: At global scope:
> Config.cpp:412:59: error: template argument 3 is invalid
>   hash_map< string, Value*, hash<string>, equal_to<string> > &kvmap)
>                                                            ^
> 
> Config.cpp:412:59: error: template argument 3 is invalid
> Config.cpp:412:59: error: template argument 3 is invalid
> Config.cpp:412:2: error: 'hash_map' is not a type
>   hash_map< string, Value*, hash<string>, equal_to<string> > &kvmap)
>   ^~~~~~~~
> 
> Config.cpp:412:10: error: expected ',' or '...' before '<' token
>   hash_map< string, Value*, hash<string>, equal_to<string> > &kvmap)
>           ^
> 
> Config.cpp: In member function 'bool Config::getFloatImpl(const string&, float&, int)':
> Config.cpp:414:43: error: template argument 3 is invalid
>      hash_map<string, Value*, hash<string> >::const_iterator ci;
>                                            ^
> 
> Config.cpp:414:61: error: qualified-id in declaration before 'ci'
>      hash_map<string, Value*, hash<string> >::const_iterator ci;
>                                                              ^~
> 
> Config.cpp:415:5: error: 'ci' was not declared in this scope
>      ci = kvmap.find( keyword);
>      ^~
> 
> Config.cpp:415:10: error: 'kvmap' was not declared in this scope
>      ci = kvmap.find( keyword);
>           ^~~~~
> 
> Config.cpp: In member function 'void Config::dump()':
> Config.cpp:429:43: error: template argument 3 is invalid
>      hash_map<string, Value*, hash<string> >::const_iterator ci;
>                                            ^
> 
> Config.cpp:429:61: error: qualified-id in declaration before 'ci'
>      hash_map<string, Value*, hash<string> >::const_iterator ci;
>                                                              ^~
> 
> Config.cpp:431:10: error: 'ci' was not declared in this scope
>      for( ci=_keyValueMap.begin(); ci!=_keyValueMap.end(); ci++)
>           ^~
> 
> Config.cpp:431:26: error: request for member 'begin' in '((Config*)this)->Config::_keyValueMap', which is of non-class type 'int'
>      for( ci=_keyValueMap.begin(); ci!=_keyValueMap.end(); ci++)
>                           ^~~~~
> 
> Config.cpp:431:52: error: request for member 'end' in '((Config*)this)->Config::_keyValueMap', which is of non-class type 'int'
>      for( ci=_keyValueMap.begin(); ci!=_keyValueMap.end(); ci++)
>                                                     ^~~
> 
> Makefile:368: recipe for target 'Config.o' failed
> make[3]: *** [Config.o] Error 1

-- 
Martin Michlmayr
Linux for HPE Helion, Hewlett Packard Enterprise


Reply to: