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?