Hi Gavin/Joaquin,
Since we saw the error in construct in buckets.hpp. I searched for
"construct(" in my pre-processed file. This is the template replacement,
.
.
.
template inline
void _Construct(_Ty1 *_Ptr, _Ty2&& _Val)
{
void *_Vptr = _Ptr;
::new (_Vptr) _Ty1(::std:: forward<_Ty2>(_Val));
}
template<class _Ty1> inline
void _Construct(_Ty1 *_Ptr)
{
void *_Vptr = _Ptr;
::new (_Vptr) _Ty1();
}
.
.
.
struct _Alloc_construct { template static auto _Fn(int, _Ty& _Al, _Objty *_Ptr, _Types&&... _Args) ->
decltype( _Al.construct(_Ptr, ::std:: forward<_Types>(_Args)...)) {
_Al.construct(_Ptr, ::std:: forward<_Types>(_Args)...); } template static auto _Fn(_Wrap_int, _Ty&, _Objty
*_Ptr, _Types&&... _Args) -> void { ::new (static_cast(_Ptr))
_Objty(::std:: forward<_Types>(_Args)...); } };
.
.
.
template
static void construct(_Alloc& _Al, _Ty *_Ptr,
_Types&&... _Args)
{
_Alloc_construct::_Fn(0, _Al, _Ptr,
::std:: forward<_Types>(_Args)...);
}
.
.
.
void construct(_Ty *_Ptr) { ::new ((void *)_Ptr) _Ty(); } void
construct(_Ty *_Ptr, const _Ty& _Val) { ::new ((void *)_Ptr) _Ty(_Val); }
template void construct(_Objty *_Ptr,
_Types&&... _Args) { ::new ((void *)_Ptr) _Objty(::std::
forward<_Types>(_Args)...); }
.
.
.
Thanks,
Ram