g++6.1 - type_traits
Nejak se mi nepodarilo to opravit.
g++ -pipe -std=c++11 -g -O0 -DDEBUG -c -Wall -pedantic -Wextra -Werror -fPIC -I/home/tomas/zdrojaky/automata-library/alib2data/src/../../alib2common/src/ -I/home/tomas/zdrojaky/automata-library/alib2data/src/../../alib2std/src/ -I/usr/include/libxml2/ /home/tomas/zdrojaky/automata-library/alib2data/src/regexp/formal/FormalRegExpElement.cpp -o /home/tomas/zdrojaky/automata-library/alib2data/obj-debug/regexp/formal/FormalRegExpElement.o
In file included from /home/tomas/zdrojaky/automata-library/alib2data/src/../../alib2std/src/type_traits:5:0,
from /usr/include/c++/6.1.1/bits/move.h:57,
from /usr/include/c++/6.1.1/bits/nested_exception.h:40,
from /usr/include/c++/6.1.1/exception:171,
from /usr/include/c++/6.1.1/typeinfo:34,
from /usr/include/c++/6.1.1/functional:53,
from /home/tomas/zdrojaky/automata-library/alib2data/src/../../alib2common/src/XmlApi.hpp:11,
from /home/tomas/zdrojaky/automata-library/alib2data/src/regexp/formal/FormalRegExpElement.h:11,
from /home/tomas/zdrojaky/automata-library/alib2data/src/regexp/formal/FormalRegExpElement.cpp:8:
/usr/include/c++/6.1.1/cxxabi.h:213:47: error: invalid use of incomplete type ‘class std::type_info’
class __fundamental_type_info : public std::type_info
^~~~~~~~~
<built-in>: note: forward declaration of ‘class std::type_info’
/usr/include/c++/6.1.1/cxxabi.h: In constructor ‘__cxxabiv1::__fundamental_type_info::__fundamental_type_info(const char*)’:
/usr/include/c++/6.1.1/cxxabi.h:217:53: error: type ‘std::type_info’ is not a direct base of ‘__cxxabiv1::__fundamental_type_info’
__fundamental_type_info(const char* __n) : std::type_info(__n) { }
^~~~~~~~~
/usr/include/c++/6.1.1/cxxabi.h: At global scope:
/usr/include/c++/6.1.1/cxxabi.h:224:41: error: invalid use of incomplete type ‘class std::type_info’
class __array_type_info : public std::type_info
^~~~~~~~~
<built-in>: note: forward declaration of ‘class std::type_info’
/usr/include/c++/6.1.1/cxxabi.h: In constructor ‘__cxxabiv1::__array_type_info::__array_type_info(const char*)’:
/usr/include/c++/6.1.1/cxxabi.h:228:47: error: type ‘std::type_info’ is not a direct base of ‘__cxxabiv1::__array_type_info’
__array_type_info(const char* __n) : std::type_info(__n) { }
^~~~~~~~~
/usr/include/c++/6.1.1/cxxabi.h: At global scope:
/usr/include/c++/6.1.1/cxxabi.h:235:44: error: invalid use of incomplete type ‘class std::type_info’
class __function_type_info : public std::type_info
^~~~~~~~~
<built-in>: note: forward declaration of ‘class std::type_info’
/usr/include/c++/6.1.1/cxxabi.h: In constructor ‘__cxxabiv1::__function_type_info::__function_type_info(const char*)’:
/usr/include/c++/6.1.1/cxxabi.h:239:50: error: type ‘std::type_info’ is not a direct base of ‘__cxxabiv1::__function_type_info’
__function_type_info(const char* __n) : std::type_info(__n) { }
^~~~~~~~~
/usr/include/c++/6.1.1/cxxabi.h: At global scope:
/usr/include/c++/6.1.1/cxxabi.h:251:40: error: invalid use of incomplete type ‘class std::type_info’
class __enum_type_info : public std::type_info
^~~~~~~~~
<built-in>: note: forward declaration of ‘class std::type_info’
/usr/include/c++/6.1.1/cxxabi.h: In constructor ‘__cxxabiv1::__enum_type_info::__enum_type_info(const char*)’:
/usr/include/c++/6.1.1/cxxabi.h:255:46: error: type ‘std::type_info’ is not a direct base of ‘__cxxabiv1::__enum_type_info’
__enum_type_info(const char* __n) : std::type_info(__n) { }
^~~~~~~~~
/usr/include/c++/6.1.1/cxxabi.h: At global scope:
/usr/include/c++/6.1.1/cxxabi.h:262:41: error: invalid use of incomplete type ‘class std::type_info’
class __pbase_type_info : public std::type_info
^~~~~~~~~
<built-in>: note: forward declaration of ‘class std::type_info’
/usr/include/c++/6.1.1/cxxabi.h: In constructor ‘__cxxabiv1::__pbase_type_info::__pbase_type_info(const char*, int, const std::type_info*)’:
/usr/include/c++/6.1.1/cxxabi.h:271:12: error: type ‘std::type_info’ is not a direct base of ‘__cxxabiv1::__pbase_type_info’
: std::type_info(__n), __flags(__quals), __pointee(__type)
^~~~~~~~~
/usr/include/c++/6.1.1/cxxabi.h: In member function ‘virtual bool __cxxabiv1::__pbase_type_info::__pointer_catch(const __cxxabiv1::__pbase_type_info*, void**, unsigned int) const’:
/usr/include/c++/6.1.1/cxxabi.h:309:21: error: invalid use of incomplete type ‘const class std::type_info’
return __pointee->__do_catch (thrown_type->__pointee, thr_obj, outer + 2);
^~
<built-in>: note: forward declaration of ‘class std::type_info’
/usr/include/c++/6.1.1/cxxabi.h: At global scope:
/usr/include/c++/6.1.1/cxxabi.h:403:41: error: invalid use of incomplete type ‘class std::type_info’
class __class_type_info : public std::type_info
^~~~~~~~~
<built-in>: note: forward declaration of ‘class std::type_info’
/usr/include/c++/6.1.1/cxxabi.h:451:22: error: ‘type_info’ does not name a type
__do_catch(const type_info* __thr_type, void** __thr_obj,
^~~~~~~~~
/usr/include/c++/6.1.1/cxxabi.h: In constructor ‘__cxxabiv1::__class_type_info::__class_type_info(const char*)’:
/usr/include/c++/6.1.1/cxxabi.h:407:43: error: class ‘__cxxabiv1::__class_type_info’ does not have any field named ‘type_info’
__class_type_info (const char *__n) : type_info(__n) { }
^~~~~~~~~
In file included from /home/tomas/zdrojaky/automata-library/alib2data/src/../../alib2std/src/typeindex:4:0,
from /home/tomas/zdrojaky/automata-library/alib2data/src/../../alib2std/src/type_traits:9,
from /usr/include/c++/6.1.1/bits/move.h:57,
from /usr/include/c++/6.1.1/bits/nested_exception.h:40,
from /usr/include/c++/6.1.1/exception:171,
from /usr/include/c++/6.1.1/typeinfo:34,
from /usr/include/c++/6.1.1/functional:53,
from /home/tomas/zdrojaky/automata-library/alib2data/src/../../alib2common/src/XmlApi.hpp:11,
from /home/tomas/zdrojaky/automata-library/alib2data/src/regexp/formal/FormalRegExpElement.h:11,
from /home/tomas/zdrojaky/automata-library/alib2data/src/regexp/formal/FormalRegExpElement.cpp:8:
/usr/include/c++/6.1.1/typeindex: In member function ‘bool std::type_index::operator==(const std::type_index&) const’:
/usr/include/c++/6.1.1/typeindex:59:25: error: no match for ‘operator==’ (operand types are ‘const std::type_info’ and ‘const std::type_info’)
{ return *_M_target == *__rhs._M_target; }
~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~
/usr/include/c++/6.1.1/typeindex: In member function ‘bool std::type_index::operator!=(const std::type_index&) const’:
/usr/include/c++/6.1.1/typeindex:63:25: error: no match for ‘operator!=’ (operand types are ‘const std::type_info’ and ‘const std::type_info’)
{ return *_M_target != *__rhs._M_target; }
~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~
/usr/include/c++/6.1.1/typeindex: In member function ‘bool std::type_index::operator<(const std::type_index&) const’:
/usr/include/c++/6.1.1/typeindex:67:23: error: invalid use of incomplete type ‘const class std::type_info’
{ return _M_target->before(*__rhs._M_target); }
^~
<built-in>: note: forward declaration of ‘class std::type_info’
/usr/include/c++/6.1.1/typeindex: In member function ‘bool std::type_index::operator<=(const std::type_index&) const’:
/usr/include/c++/6.1.1/typeindex:71:30: error: invalid use of incomplete type ‘const class std::type_info’
{ return !__rhs._M_target->before(*_M_target); }
^~
<built-in>: note: forward declaration of ‘class std::type_info’
/usr/include/c++/6.1.1/typeindex: In member function ‘bool std::type_index::operator>(const std::type_index&) const’:
/usr/include/c++/6.1.1/typeindex:75:29: error: invalid use of incomplete type ‘const class std::type_info’
{ return __rhs._M_target->before(*_M_target); }
^~
<built-in>: note: forward declaration of ‘class std::type_info’
/usr/include/c++/6.1.1/typeindex: In member function ‘bool std::type_index::operator>=(const std::type_index&) const’:
/usr/include/c++/6.1.1/typeindex:79:24: error: invalid use of incomplete type ‘const class std::type_info’
{ return !_M_target->before(*__rhs._M_target); }
^~
<built-in>: note: forward declaration of ‘class std::type_info’
/usr/include/c++/6.1.1/typeindex: In member function ‘std::size_t std::type_index::hash_code() const’:
/usr/include/c++/6.1.1/typeindex:83:23: error: invalid use of incomplete type ‘const class std::type_info’
{ return _M_target->hash_code(); }
^~
<built-in>: note: forward declaration of ‘class std::type_info’
/usr/include/c++/6.1.1/typeindex: In member function ‘const char* std::type_index::name() const’:
/usr/include/c++/6.1.1/typeindex:87:23: error: invalid use of incomplete type ‘const class std::type_info’
{ return _M_target->name(); }
^~
<built-in>: note: forward declaration of ‘class std::type_info’
In file included from /home/tomas/zdrojaky/automata-library/alib2data/src/../../alib2std/src/type_traits:10:0,
from /usr/include/c++/6.1.1/bits/move.h:57,
from /usr/include/c++/6.1.1/bits/nested_exception.h:40,
from /usr/include/c++/6.1.1/exception:171,
from /usr/include/c++/6.1.1/typeinfo:34,
from /usr/include/c++/6.1.1/functional:53,
from /home/tomas/zdrojaky/automata-library/alib2data/src/../../alib2common/src/XmlApi.hpp:11,
from /home/tomas/zdrojaky/automata-library/alib2data/src/regexp/formal/FormalRegExpElement.h:11,
from /home/tomas/zdrojaky/automata-library/alib2data/src/regexp/formal/FormalRegExpElement.cpp:8:
/home/tomas/zdrojaky/automata-library/alib2std/src/extensions/type_traits.hpp: In function ‘bool std::is_same_type(const char*)’:
/home/tomas/zdrojaky/automata-library/alib2std/src/extensions/type_traits.hpp:55:43: error: must #include <typeinfo> before using typeid
char* ret = abi::__cxa_demangle(typeid(T).name(), 0, 0, &status);
^
/home/tomas/zdrojaky/automata-library/alib2std/src/extensions/type_traits.hpp: In function ‘char* std::type_name()’:
/home/tomas/zdrojaky/automata-library/alib2std/src/extensions/type_traits.hpp:70:38: error: must #include <typeinfo> before using typeid
return abi::__cxa_demangle(typeid(T).name(), 0, 0, &status);
^