Hey there,
ICC 14.0 fails to compile most of STL code as shipped by GCC 4.9:
$ cat test.cpp
#include <vector>
int main() { return 0; }
$ icpc -std=c++11 test.cpp
In file included from /usr/include/c++/4.9.0/ext/alloc_traits.h(36),
from /usr/include/c++/4.9.0/bits/stl_construct.h(61),
from /usr/include/c++/4.9.0/vector(62),
from test.cpp(1):
/usr/include/c++/4.9.0/bits/alloc_traits.h(248): error: expected a ">"
= typename __construct_helper<_Tp, _Args...>::type;
^
In file included from /usr/include/c++/4.9.0/ext/alloc_traits.h(36),
from /usr/include/c++/4.9.0/bits/stl_construct.h(61),
from /usr/include/c++/4.9.0/vector(62),
from test.cpp(1):
detected during instantiation of type "std::allocator_traits<_Alloc>::__has_construct<_Tp, _Args...>" at line 251
In file included from /usr/include/c++/4.9.0/ext/alloc_traits.h(36),
from /usr/include/c++/4.9.0/bits/stl_construct.h(61),
from /usr/include/c++/4.9.0/vector(62),
from test.cpp(1):
In file included from /usr/include/c++/4.9.0/ext/alloc_traits.h(36),
from /usr/include/c++/4.9.0/bits/stl_construct.h(61),
from /usr/include/c++/4.9.0/vector(62),
from test.cpp(1):
/usr/include/c++/4.9.0/type_traits(115): error: not a class or struct name
: public _B1
^
In file included from /usr/include/c++/4.9.0/ext/alloc_traits.h(36),
from /usr/include/c++/4.9.0/bits/stl_construct.h(61),
from /usr/include/c++/4.9.0/vector(62),
from test.cpp(1):
detected during:
In file included from /usr/include/c++/4.9.0/ext/alloc_traits.h(36),
from /usr/include/c++/4.9.0/bits/stl_construct.h(61),
from /usr/include/c++/4.9.0/vector(62),
from test.cpp(1):
instantiation of class "std::__and_<_B1> [with _B1=<error-type>]" at line 1907
In file included from /usr/include/c++/4.9.0/ext/alloc_traits.h(36),
from /usr/include/c++/4.9.0/bits/stl_construct.h(61),
from /usr/include/c++/4.9.0/vector(62),
from test.cpp(1):
instantiation of type "std::_Require<<error-type>>" at line 251 of "/usr/include/c++/4.9.0/bits/alloc_traits.h"
In file included from /usr/include/c++/4.9.0/ext/alloc_traits.h(36),
from /usr/include/c++/4.9.0/bits/stl_construct.h(61),
from /usr/include/c++/4.9.0/vector(62),
from test.cpp(1):
In file included from /usr/include/c++/4.9.0/ext/alloc_traits.h(36),
from /usr/include/c++/4.9.0/bits/stl_construct.h(61),
from /usr/include/c++/4.9.0/vector(62),
from test.cpp(1):
/usr/include/c++/4.9.0/type_traits(1907): error: class "std::__and_<<error-type>>" has no member "value"
using _Require = typename enable_if<__and_<_Cond...>::value>::type;
^
In file included from /usr/include/c++/4.9.0/ext/alloc_traits.h(36),
from /usr/include/c++/4.9.0/bits/stl_construct.h(61),
from /usr/include/c++/4.9.0/vector(62),
from test.cpp(1):
detected during instantiation of type "std::_Require<<error-type>>" at line 251 of "/usr/include/c++/4.9.0/bits/alloc_traits.h"
In file included from /usr/include/c++/4.9.0/ext/alloc_traits.h(36),
from /usr/include/c++/4.9.0/bits/stl_construct.h(61),
from /usr/include/c++/4.9.0/vector(62),
from test.cpp(1):
In file included from /usr/include/c++/4.9.0/ext/alloc_traits.h(36),
from /usr/include/c++/4.9.0/bits/stl_construct.h(61),
from /usr/include/c++/4.9.0/vector(62),
from test.cpp(1):
/usr/include/c++/4.9.0/type_traits(1907): error: class "std::enable_if<<error-constant>, void>" has no member "type"
using _Require = typename enable_if<__and_<_Cond...>::value>::type;
^
In file included from /usr/include/c++/4.9.0/ext/alloc_traits.h(36),
from /usr/include/c++/4.9.0/bits/stl_construct.h(61),
from /usr/include/c++/4.9.0/vector(62),
from test.cpp(1):
detected during instantiation of type "std::_Require<<error-type>>" at line 251 of "/usr/include/c++/4.9.0/bits/alloc_traits.h"
In file included from /usr/include/c++/4.9.0/ext/alloc_traits.h(36),
from /usr/include/c++/4.9.0/bits/stl_construct.h(61),
from /usr/include/c++/4.9.0/vector(62),
from test.cpp(1):
compilation aborted for test.cpp (code 2)Will a new icpc be released to fix this?