Error in instantiation of exception specification for vector and string compiling simple code.

Hi,

I get those errors when compiling this simple code:

#include
#include
struct Bar
{
Bar(Bar&&) noexcept = default;
Bar& operator=(Bar&&) noexcept = default;
std::string name;

};

class Foo
{
public:

protected:
Foo(Foo&&) noexcept = default;
Foo& operator=(Foo&&) noexcept = default;

Foo()
{
}

private:

std::vector vectorFoo_;
};

This is the errors I get, I understand it is in the instantiation of the exception specification, but I doubt the std::string is not nothrow move constructible,… the first error make me think there is a bug. I synched yesterday so I am pretty much up to date.

In file included from /Users/Mani/Development/Projects/flowOfLife/Graphics/Graphics/TestCompileError.cpp:1:
In file included from /Users/Mani/Development/Projects/flowOfLife/Graphics/Graphics/TestCompileError.h:5:
/usr/local/bin/…/lib/c++/v1/string:1196:67: error: no member named ‘value’ in ‘std::__1::is_nothrow_move_constructible<std::__1::allocator >’
NOEXCEPT(is_nothrow_move_constructible<allocator_type>::value);

In file included from /Users/Mani/Development/Projects/flowOfLife/Graphics/Graphics/TestCompileError.cpp:1:
In file included from /Users/Mani/Development/Projects/flowOfLife/Graphics/Graphics/TestCompileError.h:4:
In file included from /usr/local/bin/../lib/c++/v1/vector:264:
/usr/local/bin/../lib/c++/v1/__config:325:34: note: expanded from macro '_NOEXCEPT_'
# define _NOEXCEPT_(x) noexcept(x)
^
In file included from /Users/Mani/Development/Projects/flowOfLife/Graphics/Graphics/TestCompileError.cpp:1:
/Users/Mani/Development/Projects/flowOfLife/Graphics/Graphics/TestCompileError.h:11:16: note: in instantiation of exception specification for 'basic_string' requested here
std::string name;
^
In file included from /Users/Mani/Development/Projects/flowOfLife/Graphics/Graphics/TestCompileError.cpp:1:
In file included from /Users/Mani/Development/Projects/flowOfLife/Graphics/Graphics/TestCompileError.h:4:
In file included from /usr/local/bin/../lib/c++/v1/vector:265:
In file included from /usr/local/bin/../lib/c++/v1/__bit_reference:15:
In file included from /usr/local/bin/../lib/c++/v1/algorithm:624:
/usr/local/bin/../lib/c++/v1/type_traits:2676:53: note: in instantiation of template class 'std::__1::add_rvalue_reference<std::__1::allocator<char> >' requested here
: public is_nothrow_constructible<_Tp, typename add_rvalue_reference<_Tp>::type>
^
In file included from /Users/Mani/Development/Projects/flowOfLife/Graphics/Graphics/TestCompileError.cpp:1:
In file included from /Users/Mani/Development/Projects/flowOfLife/Graphics/Graphics/TestCompileError.h:5:
/usr/local/bin/../lib/c++/v1/string:1196:20: note: in instantiation of template class 'std::__1::is_nothrow_move_constructible<std::__1::allocator<char> >' requested here
_NOEXCEPT_(is_nothrow_move_constructible<allocator_type>::value);
^
In file included from /Users/Mani/Development/Projects/flowOfLife/Graphics/Graphics/TestCompileError.cpp:1:
In file included from /Users/Mani/Development/Projects/flowOfLife/Graphics/Graphics/TestCompileError.h:4:
In file included from /usr/local/bin/../lib/c++/v1/vector:264:
/usr/local/bin/../lib/c++/v1/__config:325:34: note: expanded from macro '_NOEXCEPT_'
# define _NOEXCEPT_(x) noexcept(x)
^
In file included from /Users/Mani/Development/Projects/flowOfLife/Graphics/Graphics/TestCompileError.cpp:1:
/Users/Mani/Development/Projects/flowOfLife/Graphics/Graphics/TestCompileError.h:11:16: note: in instantiation of exception specification for 'basic_string' requested here
std::string name;
^
In file included from /Users/Mani/Development/Projects/flowOfLife/Graphics/Graphics/TestCompileError.cpp:1:
In file included from /Users/Mani/Development/Projects/flowOfLife/Graphics/Graphics/TestCompileError.h:5:
/usr/local/bin/../lib/c++/v1/string:1233:64: error: no member named 'value' in 'std::__1::is_nothrow_move_assignable<std::__1::allocator<char> >'
is_nothrow_move_assignable<allocator_type>::value);
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
In file included from /Users/Mani/Development/Projects/flowOfLife/Graphics/Graphics/TestCompileError.cpp:1:
In file included from /Users/Mani/Development/Projects/flowOfLife/Graphics/Graphics/TestCompileError.h:4:
In file included from /usr/local/bin/../lib/c++/v1/vector:264:
/usr/local/bin/../lib/c++/v1/__config:325:34: note: expanded from macro '_NOEXCEPT_'
# define _NOEXCEPT_(x) noexcept(x)
^
In file included from /Users/Mani/Development/Projects/flowOfLife/Graphics/Graphics/TestCompileError.cpp:1:
/Users/Mani/Development/Projects/flowOfLife/Graphics/Graphics/TestCompileError.h:11:16: note: in instantiation of exception specification for 'operator=' requested here
std::string name;
^
In file included from /Users/Mani/Development/Projects/flowOfLife/Graphics/Graphics/TestCompileError.cpp:1:
In file included from /Users/Mani/Development/Projects/flowOfLife/Graphics/Graphics/TestCompileError.h:4:
In file included from /usr/local/bin/../lib/c++/v1/vector:265:
In file included from /usr/local/bin/../lib/c++/v1/__bit_reference:15:
In file included from /usr/local/bin/../lib/c++/v1/algorithm:624:
/usr/local/bin/../lib/c++/v1/type_traits:2760:45: note: in instantiation of template class 'std::__1::add_lvalue_reference<std::__1::allocator<char> >' requested here
: public is_nothrow_assignable<typename add_lvalue_reference<_Tp>::type,
^
In file included from /Users/Mani/Development/Projects/flowOfLife/Graphics/Graphics/TestCompileError.cpp:1:
In file included from /Users/Mani/Development/Projects/flowOfLife/Graphics/Graphics/TestCompileError.h:5:
/usr/local/bin/../lib/c++/v1/string:1233:20: note: in instantiation of template class 'std::__1::is_nothrow_move_assignable<std::__1::allocator<char> >' requested here
is_nothrow_move_assignable<allocator_type>::value);
^
In file included from /Users/Mani/Development/Projects/flowOfLife/Graphics/Graphics/TestCompileError.cpp:1:
In file included from /Users/Mani/Development/Projects/flowOfLife/Graphics/Graphics/TestCompileError.h:4:
In file included from /usr/local/bin/../lib/c++/v1/vector:264:
/usr/local/bin/../lib/c++/v1/__config:325:34: note: expanded from macro '_NOEXCEPT_'
# define _NOEXCEPT_(x) noexcept(x)
^
In file included from /Users/Mani/Development/Projects/flowOfLife/Graphics/Graphics/TestCompileError.cpp:1:
/Users/Mani/Development/Projects/flowOfLife/Graphics/Graphics/TestCompileError.h:11:16: note: in instantiation of exception specification for 'operator=' requested here
std::string name;
^
In file included from /Users/Mani/Development/Projects/flowOfLife/Graphics/Graphics/TestCompileError.cpp:1:
In file included from /Users/Mani/Development/Projects/flowOfLife/Graphics/Graphics/TestCompileError.h:4:
In file included from /usr/local/bin/../lib/c++/v1/vector:265:
In file included from /usr/local/bin/../lib/c++/v1/__bit_reference:15:
In file included from /usr/local/bin/../lib/c++/v1/algorithm:624:
/usr/local/bin/../lib/c++/v1/type_traits:2676:53: note: in instantiation of template class 'std::__1::add_rvalue_reference<std::__1::allocator<char> >' requested here
: public is_nothrow_constructible<_Tp, typename add_rvalue_reference<_Tp>::type>
^
In file included from /Users/Mani/Development/Projects/flowOfLife/Graphics/Graphics/TestCompileError.cpp:1:
In file included from /Users/Mani/Development/Projects/flowOfLife/Graphics/Graphics/TestCompileError.h:5:
/usr/local/bin/../lib/c++/v1/string:1196:20: note: in instantiation of template class 'std::__1::is_nothrow_move_constructible<std::__1::allocator<char> >' requested here
_NOEXCEPT_(is_nothrow_move_constructible<allocator_type>::value);
^
In file included from /Users/Mani/Development/Projects/flowOfLife/Graphics/Graphics/TestCompileError.cpp:1:
In file included from /Users/Mani/Development/Projects/flowOfLife/Graphics/Graphics/TestCompileError.h:4:
In file included from /usr/local/bin/../lib/c++/v1/vector:264:
/usr/local/bin/../lib/c++/v1/__config:325:34: note: expanded from macro '_NOEXCEPT_'
# define _NOEXCEPT_(x) noexcept(x)
^
In file included from /Users/Mani/Development/Projects/flowOfLife/Graphics/Graphics/TestCompileError.cpp:1:
/Users/Mani/Development/Projects/flowOfLife/Graphics/Graphics/TestCompileError.h:11:16: note: in instantiation of exception specification for 'basic_string' requested here
std::string name;
^
In file included from /Users/Mani/Development/Projects/flowOfLife/Graphics/Graphics/TestCompileError.cpp:1:
In file included from /Users/Mani/Development/Projects/flowOfLife/Graphics/Graphics/TestCompileError.h:4:
/usr/local/bin/../lib/c++/v1/vector:573:67: error: no member named 'value' in 'std::__1::is_nothrow_move_constructible<std::__1::allocator<Bar> >'
_NOEXCEPT_(is_nothrow_move_constructible<allocator_type>::value);
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
In file included from /Users/Mani/Development/Projects/flowOfLife/Graphics/Graphics/TestCompileError.cpp:1:
In file included from /Users/Mani/Development/Projects/flowOfLife/Graphics/Graphics/TestCompileError.h:4:
In file included from /usr/local/bin/../lib/c++/v1/vector:264:
/usr/local/bin/../lib/c++/v1/__config:325:34: note: expanded from macro '_NOEXCEPT_'
# define _NOEXCEPT_(x) noexcept(x)
^
In file included from /Users/Mani/Development/Projects/flowOfLife/Graphics/Graphics/TestCompileError.cpp:1:
/Users/Mani/Development/Projects/flowOfLife/Graphics/Graphics/TestCompileError.h:29:21: note: in instantiation of exception specification for 'vector' requested here
std::vector<Bar> vectorFoo_;
^
In file included from /Users/Mani/Development/Projects/flowOfLife/Graphics/Graphics/TestCompileError.cpp:1:
In file included from /Users/Mani/Development/Projects/flowOfLife/Graphics/Graphics/TestCompileError.h:4:
In file included from /usr/local/bin/../lib/c++/v1/vector:265:
In file included from /usr/local/bin/../lib/c++/v1/__bit_reference:15:
In file included from /usr/local/bin/../lib/c++/v1/algorithm:624:
/usr/local/bin/../lib/c++/v1/type_traits:2676:53: note: in instantiation of template class 'std::__1::add_rvalue_reference<std::__1::allocator<Bar> >' requested here
: public is_nothrow_constructible<_Tp, typename add_rvalue_reference<_Tp>::type>
^
In file included from /Users/Mani/Development/Projects/flowOfLife/Graphics/Graphics/TestCompileError.cpp:1:
In file included from /Users/Mani/Development/Projects/flowOfLife/Graphics/Graphics/TestCompileError.h:4:
/usr/local/bin/../lib/c++/v1/vector:573:20: note: in instantiation of template class 'std::__1::is_nothrow_move_constructible<std::__1::allocator<Bar> >' requested here
_NOEXCEPT_(is_nothrow_move_constructible<allocator_type>::value);
^
In file included from /Users/Mani/Development/Projects/flowOfLife/Graphics/Graphics/TestCompileError.cpp:1:
In file included from /Users/Mani/Development/Projects/flowOfLife/Graphics/Graphics/TestCompileError.h:4:
In file included from /usr/local/bin/../lib/c++/v1/vector:264:
/usr/local/bin/../lib/c++/v1/__config:325:34: note: expanded from macro '_NOEXCEPT_'
# define _NOEXCEPT_(x) noexcept(x)
^
In file included from /Users/Mani/Development/Projects/flowOfLife/Graphics/Graphics/TestCompileError.cpp:1:
/Users/Mani/Development/Projects/flowOfLife/Graphics/Graphics/TestCompileError.h:29:21: note: in instantiation of exception specification for 'vector' requested here
std::vector<Bar> vectorFoo_;
^
In file included from /Users/Mani/Development/Projects/flowOfLife/Graphics/Graphics/TestCompileError.cpp:1:
In file included from /Users/Mani/Development/Projects/flowOfLife/Graphics/Graphics/TestCompileError.h:4:
/usr/local/bin/../lib/c++/v1/vector:580:58: error: no member named 'value' in 'std::__1::is_nothrow_move_assignable<std::__1::allocator<Bar> >'
is_nothrow_move_assignable<allocator_type>::value);
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
In file included from /Users/Mani/Development/Projects/flowOfLife/Graphics/Graphics/TestCompileError.cpp:1:
In file included from /Users/Mani/Development/Projects/flowOfLife/Graphics/Graphics/TestCompileError.h:4:
In file included from /usr/local/bin/../lib/c++/v1/vector:264:
/usr/local/bin/../lib/c++/v1/__config:325:34: note: expanded from macro '_NOEXCEPT_'
# define _NOEXCEPT_(x) noexcept(x)
^
In file included from /Users/Mani/Development/Projects/flowOfLife/Graphics/Graphics/TestCompileError.cpp:1:
/Users/Mani/Development/Projects/flowOfLife/Graphics/Graphics/TestCompileError.h:29:21: note: in instantiation of exception specification for 'operator=' requested here
std::vector<Bar> vectorFoo_;
^
In file included from /Users/Mani/Development/Projects/flowOfLife/Graphics/Graphics/TestCompileError.cpp:1:
In file included from /Users/Mani/Development/Projects/flowOfLife/Graphics/Graphics/TestCompileError.h:4:
In file included from /usr/local/bin/../lib/c++/v1/vector:265:
In file included from /usr/local/bin/../lib/c++/v1/__bit_reference:15:
In file included from /usr/local/bin/../lib/c++/v1/algorithm:624:
/usr/local/bin/../lib/c++/v1/type_traits:2760:45: note: in instantiation of template class 'std::__1::add_lvalue_reference<std::__1::allocator<Bar> >' requested here
: public is_nothrow_assignable<typename add_lvalue_reference<_Tp>::type,
^
In file included from /Users/Mani/Development/Projects/flowOfLife/Graphics/Graphics/TestCompileError.cpp:1:
In file included from /Users/Mani/Development/Projects/flowOfLife/Graphics/Graphics/TestCompileError.h:4:
/usr/local/bin/../lib/c++/v1/vector:580:14: note: in instantiation of template class 'std::__1::is_nothrow_move_assignable<std::__1::allocator<Bar> >' requested here
is_nothrow_move_assignable<allocator_type>::value);
^
In file included from /Users/Mani/Development/Projects/flowOfLife/Graphics/Graphics/TestCompileError.cpp:1:
In file included from /Users/Mani/Development/Projects/flowOfLife/Graphics/Graphics/TestCompileError.h:4:
In file included from /usr/local/bin/../lib/c++/v1/vector:264:
/usr/local/bin/../lib/c++/v1/__config:325:34: note: expanded from macro '_NOEXCEPT_'
# define _NOEXCEPT_(x) noexcept(x)
^
In file included from /Users/Mani/Development/Projects/flowOfLife/Graphics/Graphics/TestCompileError.cpp:1:
/Users/Mani/Development/Projects/flowOfLife/Graphics/Graphics/TestCompileError.h:29:21: note: in instantiation of exception specification for 'operator=' requested here
std::vector<Bar> vectorFoo_;
^
In file included from /Users/Mani/Development/Projects/flowOfLife/Graphics/Graphics/TestCompileError.cpp:1:
In file included from /Users/Mani/Development/Projects/flowOfLife/Graphics/Graphics/TestCompileError.h:4:
In file included from /usr/local/bin/../lib/c++/v1/vector:265:
In file included from /usr/local/bin/../lib/c++/v1/__bit_reference:15:
In file included from /usr/local/bin/../lib/c++/v1/algorithm:624:
/usr/local/bin/../lib/c++/v1/type_traits:2676:53: note: in instantiation of template class 'std::__1::add_rvalue_reference<std::__1::allocator<Bar> >' requested here
: public is_nothrow_constructible<_Tp, typename add_rvalue_reference<_Tp>::type>
^
In file included from /Users/Mani/Development/Projects/flowOfLife/Graphics/Graphics/TestCompileError.cpp:1:
In file included from /Users/Mani/Development/Projects/flowOfLife/Graphics/Graphics/TestCompileError.h:4:
/usr/local/bin/../lib/c++/v1/vector:573:20: note: in instantiation of template class 'std::__1::is_nothrow_move_constructible<std::__1::allocator<Bar> >' requested here
_NOEXCEPT_(is_nothrow_move_constructible<allocator_type>::value);
^
In file included from /Users/Mani/Development/Projects/flowOfLife/Graphics/Graphics/TestCompileError.cpp:1:
In file included from /Users/Mani/Development/Projects/flowOfLife/Graphics/Graphics/TestCompileError.h:4:
In file included from /usr/local/bin/../lib/c++/v1/vector:264:
/usr/local/bin/../lib/c++/v1/__config:325:34: note: expanded from macro '_NOEXCEPT_'
# define _NOEXCEPT_(x) noexcept(x)
^
In file included from /Users/Mani/Development/Projects/flowOfLife/Graphics/Graphics/TestCompileError.cpp:1:
/Users/Mani/Development/Projects/flowOfLife/Graphics/Graphics/TestCompileError.h:29:21: note: in instantiation of exception specification for 'vector' requested here
std::vector<Bar> vectorFoo_;

Thanks
Emmanuel