From dc3eb83d08d63d41824d87e64c10021faee44c6e Mon Sep 17 00:00:00 2001 From: Marshall Clow Date: Mon, 11 Jul 2016 21:38:08 +0000 Subject: Always use the allocator to construct/destruct elements of a deque/vector. Fixes PR#28412. Thanks to Jonathan Wakely for the report. llvm-svn: 275105 --- libcxx/include/vector | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'libcxx/include/vector') diff --git a/libcxx/include/vector b/libcxx/include/vector index 81c514ee6b7..021bbfb6643 100644 --- a/libcxx/include/vector +++ b/libcxx/include/vector @@ -1812,9 +1812,9 @@ vector<_Tp, _Allocator>::emplace(const_iterator __position, _Args&&... __args) } else { - value_type __tmp(_VSTD::forward<_Args>(__args)...); + __temp_value __tmp(this->__alloc(), _VSTD::forward<_Args>(__args)...); __move_range(__p, this->__end_, __p + 1); - *__p = _VSTD::move(__tmp); + *__p = _VSTD::move(__tmp.get()); } __annotator.__done(); } -- cgit v1.2.3