Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

partitioned_vector_subview test failing #2735

Closed
hkaiser opened this issue Jul 2, 2017 · 7 comments
Closed

partitioned_vector_subview test failing #2735

hkaiser opened this issue Jul 2, 2017 · 7 comments

Comments

@hkaiser
Copy link
Member

hkaiser commented Jul 2, 2017

This failure ("vector iterator + offset out of range") manifests itself only using VS in Debug mode because this enables iterator debugging. Here is the stack backtrace of the error:

 	msvcp140d.dll!std::_Debug_message() + 70 bytes	Unknown
>	partitioned_vector_subview_test.exe!std::_Vector_const_iterator<std::_Vector_val<std::_Simple_types<hpx::partitioned_vector<double,std::vector<double,std::allocator<double> > >::partition_data> > >::operator+=(__int64 _Off) Line 157	C++
 	partitioned_vector_subview_test.exe!std::_Vector_iterator<std::_Vector_val<std::_Simple_types<hpx::partitioned_vector<double,std::vector<double,std::allocator<double> > >::partition_data> > >::operator+=(__int64 _Off) Line 359	C++
 	partitioned_vector_subview_test.exe!hpx::util::iterator_adaptor<hpx::segment_vector_iterator<double,std::vector<double,std::allocator<double> >,std::_Vector_iterator<std::_Vector_val<std::_Simple_types<hpx::partitioned_vector<double,std::vector<double,std::allocator<double> > >::partition_data> > > >,std::_Vector_iterator<std::_Vector_val<std::_Simple_types<hpx::partitioned_vector<double,std::vector<double,std::allocator<double> > >::partition_data> > >,void,void,void,void,void>::advance(__int64 n) Line 179	C++
 	partitioned_vector_subview_test.exe!hpx::util::iterator_core_access::advance<hpx::segment_vector_iterator<double,std::vector<double,std::allocator<double> >,std::_Vector_iterator<std::_Vector_val<std::_Simple_types<hpx::partitioned_vector<double,std::vector<double,std::allocator<double> > >::partition_data> > > >,__int64>(hpx::segment_vector_iterator<double,std::vector<double,std::allocator<double> >,std::_Vector_iterator<std::_Vector_val<std::_Simple_types<hpx::partitioned_vector<double,std::vector<double,std::allocator<double> > >::partition_data> > > > & it, __int64 n) Line 66	C++
 	partitioned_vector_subview_test.exe!hpx::util::detail::iterator_facade_base<hpx::segment_vector_iterator<double,std::vector<double,std::allocator<double> >,std::_Vector_iterator<std::_Vector_val<std::_Simple_types<hpx::partitioned_vector<double,std::vector<double,std::allocator<double> > >::partition_data> > > >,hpx::partitioned_vector<double,std::vector<double,std::allocator<double> > >::partition_data,std::random_access_iterator_tag,hpx::partitioned_vector<double,std::vector<double,std::allocator<double> > >::partition_data & __ptr64,__int64,void>::operator+=(__int64 n) Line 283	C++
 	partitioned_vector_subview_test.exe!hpx::util::operator+<hpx::segment_vector_iterator<double,std::vector<double,std::allocator<double> >,std::_Vector_iterator<std::_Vector_val<std::_Simple_types<hpx::partitioned_vector<double,std::vector<double,std::allocator<double> > >::partition_data> > > >,hpx::partitioned_vector<double,std::vector<double,std::allocator<double> > >::partition_data,std::random_access_iterator_tag,hpx::partitioned_vector<double,std::vector<double,std::allocator<double> > >::partition_data & __ptr64,__int64,void>(const hpx::util::iterator_facade<hpx::segment_vector_iterator<double,std::vector<double,std::allocator<double> >,std::_Vector_iterator<std::_Vector_val<std::_Simple_types<hpx::partitioned_vector<double,std::vector<double,std::allocator<double> > >::partition_data> > > >,hpx::partitioned_vector<double,std::vector<double,std::allocator<double> > >::partition_data,std::random_access_iterator_tag,hpx::partitioned_vector<double,std::vector<double,std::allocator<double> > >::partition_data &,__int64,void> & it, __int64 n) Line 616	C++
 	partitioned_vector_subview_test.exe!hpx::partitioned_vector_view_iterator<double,2,std::vector<double,std::allocator<double> > >::increment() Line 94	C++
 	partitioned_vector_subview_test.exe!boost::iterators::iterator_core_access::increment<hpx::partitioned_vector_view_iterator<double,2,std::vector<double,std::allocator<double> > > >(hpx::partitioned_vector_view_iterator<double,2,std::vector<double,std::allocator<double> > > & f) Line 556	C++
 	partitioned_vector_subview_test.exe!boost::iterators::detail::iterator_facade_base<hpx::partitioned_vector_view_iterator<double,2,std::vector<double,std::allocator<double> > >,hpx::detail::view_element<double,std::vector<double,std::allocator<double> > >,std::random_access_iterator_tag,hpx::detail::view_element<double,std::vector<double,std::allocator<double> > >,__int64,0,0>::operator++() Line 666	C++
 	partitioned_vector_subview_test.exe!hpx::partitioned_vector_local_view_iterator<std::vector<double,std::allocator<double> >,hpx::partitioned_vector_view_iterator<double,2,std::vector<double,std::allocator<double> > > >::satisfy_predicate() Line 72	C++
 	partitioned_vector_subview_test.exe!hpx::partitioned_vector_local_view_iterator<std::vector<double,std::allocator<double> >,hpx::partitioned_vector_view_iterator<double,2,std::vector<double,std::allocator<double> > > >::increment() Line 64	C++
 	partitioned_vector_subview_test.exe!boost::iterators::iterator_core_access::increment<hpx::partitioned_vector_local_view_iterator<std::vector<double,std::allocator<double> >,hpx::partitioned_vector_view_iterator<double,2,std::vector<double,std::allocator<double> > > > >(hpx::partitioned_vector_local_view_iterator<std::vector<double,std::allocator<double> >,hpx::partitioned_vector_view_iterator<double,2,std::vector<double,std::allocator<double> > > > & f) Line 556	C++
 	partitioned_vector_subview_test.exe!boost::iterators::detail::iterator_facade_base<hpx::partitioned_vector_local_view_iterator<std::vector<double,std::allocator<double> >,hpx::partitioned_vector_view_iterator<double,2,std::vector<double,std::allocator<double> > > >,std::vector<double,std::allocator<double> >,std::forward_iterator_tag,std::vector<double,std::allocator<double> > & __ptr64,__int64,0,0>::operator++() Line 666	C++
 	partitioned_vector_subview_test.exe!bulk_test(hpx::lcos::spmd_block block, unsigned __int64 N, unsigned __int64 tile, unsigned __int64 elt_size, std::basic_string<char,std::char_traits<char>,std::allocator<char> > vec_name) Line 52	C++
 	partitioned_vector_subview_test.exe!hpx::actions::basic_action_impl<void (__cdecl*)(hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> >),void (__cdecl*)(hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> >),&bulk_test,bulk_test_action>::invoke<hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> > >(unsigned __int64 __formal, hpx::lcos::spmd_block && <vs_0>, unsigned __int64 && <vs_1>, unsigned __int64 && <vs_2>, unsigned __int64 && <vs_3>, std::basic_string<char,std::char_traits<char>,std::allocator<char> > && <vs_4>) Line 80	C++
 	partitioned_vector_subview_test.exe!hpx::actions::basic_action<hpx::actions::detail::plain_function,void __cdecl(hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> >),bulk_test_action>::invoker::invoke<hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> > >(std::integral_constant<bool,1> __formal, unsigned __int64 lva, hpx::lcos::spmd_block && <vs_0>, unsigned __int64 && <vs_1>, unsigned __int64 && <vs_2>, unsigned __int64 && <vs_3>, std::basic_string<char,std::char_traits<char>,std::allocator<char> > && <vs_4>) Line 206	C++
 	partitioned_vector_subview_test.exe!hpx::actions::basic_action<hpx::actions::detail::plain_function,void __cdecl(hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> >),bulk_test_action>::invoker::operator()<hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> > >(unsigned __int64 lva, hpx::lcos::spmd_block && <vs_0>, unsigned __int64 && <vs_1>, unsigned __int64 && <vs_2>, unsigned __int64 && <vs_3>, std::basic_string<char,std::char_traits<char>,std::allocator<char> > && <vs_4>) Line 197	C++
 	partitioned_vector_subview_test.exe!hpx::util::detail::invoke_impl<hpx::util::unused_type,hpx::actions::basic_action<hpx::actions::detail::plain_function,void __cdecl(hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> >),bulk_test_action>::invoker>::operator()<hpx::actions::basic_action<hpx::actions::detail::plain_function,void __cdecl(hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> >),bulk_test_action>::invoker,unsigned __int64,hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> > >(hpx::actions::basic_action<hpx::actions::detail::plain_function,void __cdecl(hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> >),bulk_test_action>::invoker && f, unsigned __int64 && <vs_0>, hpx::lcos::spmd_block && <vs_1>, unsigned __int64 && <vs_2>, unsigned __int64 && <vs_3>, unsigned __int64 && <vs_4>, std::basic_string<char,std::char_traits<char>,std::allocator<char> > && <vs_5>) Line 35	C++
 	partitioned_vector_subview_test.exe!hpx::util::invoke_r<hpx::util::unused_type,hpx::actions::basic_action<hpx::actions::detail::plain_function,void __cdecl(hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> >),bulk_test_action>::invoker,unsigned __int64,hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> > >(hpx::actions::basic_action<hpx::actions::detail::plain_function,void __cdecl(hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> >),bulk_test_action>::invoker && f, unsigned __int64 && <vs_0>, hpx::lcos::spmd_block && <vs_1>, unsigned __int64 && <vs_2>, unsigned __int64 && <vs_3>, unsigned __int64 && <vs_4>, std::basic_string<char,std::char_traits<char>,std::allocator<char> > && <vs_5>) Line 165	C++
 	partitioned_vector_subview_test.exe!hpx::util::detail::invoke_fused_impl<hpx::util::unused_type,hpx::actions::basic_action<hpx::actions::detail::plain_function,void __cdecl(hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> >),bulk_test_action>::invoker,hpx::util::tuple<unsigned __int64,hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,0,1,2,3,4,5>(hpx::actions::basic_action<hpx::actions::detail::plain_function,void __cdecl(hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> >),bulk_test_action>::invoker && f, hpx::util::tuple<unsigned __int64,hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> > > && t, hpx::util::detail::pack_c<unsigned __int64,0,1,2,3,4,5> __formal) Line 73	C++
 	partitioned_vector_subview_test.exe!hpx::util::invoke_fused<hpx::actions::basic_action<hpx::actions::detail::plain_function,void __cdecl(hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> >),bulk_test_action>::invoker,hpx::util::tuple<unsigned __int64,hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> > > >(hpx::actions::basic_action<hpx::actions::detail::plain_function,void __cdecl(hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> >),bulk_test_action>::invoker && f, hpx::util::tuple<unsigned __int64,hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> > > && t) Line 102	C++
 	partitioned_vector_subview_test.exe!hpx::util::detail::deferred<hpx::actions::basic_action<hpx::actions::detail::plain_function,void __cdecl(hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> >),bulk_test_action>::invoker __cdecl(unsigned __int64 & __ptr64,hpx::lcos::spmd_block && __ptr64,unsigned __int64 && __ptr64,unsigned __int64 && __ptr64,unsigned __int64 && __ptr64,std::basic_string<char,std::char_traits<char>,std::allocator<char> > && __ptr64)>::operator()() Line 103	C++
 	partitioned_vector_subview_test.exe!hpx::util::detail::invoke_impl<hpx::util::unused_type,hpx::util::detail::deferred<hpx::actions::basic_action<hpx::actions::detail::plain_function,void __cdecl(hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> >),bulk_test_action>::invoker __cdecl(unsigned __int64 & __ptr64,hpx::lcos::spmd_block && __ptr64,unsigned __int64 && __ptr64,unsigned __int64 && __ptr64,unsigned __int64 && __ptr64,std::basic_string<char,std::char_traits<char>,std::allocator<char> > && __ptr64)> >::operator()<hpx::util::detail::deferred<hpx::actions::basic_action<hpx::actions::detail::plain_function,void __cdecl(hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> >),bulk_test_action>::invoker __cdecl(unsigned __int64 & __ptr64,hpx::lcos::spmd_block && __ptr64,unsigned __int64 && __ptr64,unsigned __int64 && __ptr64,unsigned __int64 && __ptr64,std::basic_string<char,std::char_traits<char>,std::allocator<char> > && __ptr64)> & __ptr64>(hpx::util::detail::deferred<hpx::actions::basic_action<hpx::actions::detail::plain_function,void __cdecl(hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> >),bulk_test_action>::invoker __cdecl(unsigned __int64 &,hpx::lcos::spmd_block &&,unsigned __int64 &&,unsigned __int64 &&,unsigned __int64 &&,std::basic_string<char,std::char_traits<char>,std::allocator<char> > &&)> & f) Line 35	C++
 	partitioned_vector_subview_test.exe!hpx::util::invoke<hpx::util::detail::deferred<hpx::actions::basic_action<hpx::actions::detail::plain_function,void __cdecl(hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> >),bulk_test_action>::invoker __cdecl(unsigned __int64 & __ptr64,hpx::lcos::spmd_block && __ptr64,unsigned __int64 && __ptr64,unsigned __int64 && __ptr64,unsigned __int64 && __ptr64,std::basic_string<char,std::char_traits<char>,std::allocator<char> > && __ptr64)> & __ptr64>(hpx::util::detail::deferred<hpx::actions::basic_action<hpx::actions::detail::plain_function,void __cdecl(hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> >),bulk_test_action>::invoker __cdecl(unsigned __int64 &,hpx::lcos::spmd_block &&,unsigned __int64 &&,unsigned __int64 &&,unsigned __int64 &&,std::basic_string<char,std::char_traits<char>,std::allocator<char> > &&)> & f) Line 153	C++
 	partitioned_vector_subview_test.exe!hpx::actions::detail::trigger_impl<void,hpx::util::unused_type,hpx::util::detail::deferred<hpx::actions::basic_action<hpx::actions::detail::plain_function,void __cdecl(hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> >),bulk_test_action>::invoker __cdecl(unsigned __int64 & __ptr64,hpx::lcos::spmd_block && __ptr64,unsigned __int64 && __ptr64,unsigned __int64 && __ptr64,unsigned __int64 && __ptr64,std::basic_string<char,std::char_traits<char>,std::allocator<char> > && __ptr64)> & __ptr64>(std::integral_constant<bool,1> __formal, hpx::actions::typed_continuation<void,hpx::util::unused_type> && cont, hpx::util::detail::deferred<hpx::actions::basic_action<hpx::actions::detail::plain_function,void __cdecl(hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> >),bulk_test_action>::invoker __cdecl(unsigned __int64 &,hpx::lcos::spmd_block &&,unsigned __int64 &&,unsigned __int64 &&,unsigned __int64 &&,std::basic_string<char,std::char_traits<char>,std::allocator<char> > &&)> & f) Line 113	C++
 	partitioned_vector_subview_test.exe!hpx::actions::detail::trigger_impl_future<void,hpx::util::unused_type,hpx::util::detail::deferred<hpx::actions::basic_action<hpx::actions::detail::plain_function,void __cdecl(hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> >),bulk_test_action>::invoker __cdecl(unsigned __int64 & __ptr64,hpx::lcos::spmd_block && __ptr64,unsigned __int64 && __ptr64,unsigned __int64 && __ptr64,unsigned __int64 && __ptr64,std::basic_string<char,std::char_traits<char>,std::allocator<char> > && __ptr64)> & __ptr64>(std::integral_constant<bool,0> __formal, hpx::actions::typed_continuation<void,hpx::util::unused_type> && cont, hpx::util::detail::deferred<hpx::actions::basic_action<hpx::actions::detail::plain_function,void __cdecl(hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> >),bulk_test_action>::invoker __cdecl(unsigned __int64 &,hpx::lcos::spmd_block &&,unsigned __int64 &&,unsigned __int64 &&,unsigned __int64 &&,std::basic_string<char,std::char_traits<char>,std::allocator<char> > &&)> & f) Line 129	C++
 	partitioned_vector_subview_test.exe!hpx::actions::trigger<void,hpx::util::unused_type,hpx::util::detail::deferred<hpx::actions::basic_action<hpx::actions::detail::plain_function,void __cdecl(hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> >),bulk_test_action>::invoker __cdecl(unsigned __int64 & __ptr64,hpx::lcos::spmd_block && __ptr64,unsigned __int64 && __ptr64,unsigned __int64 && __ptr64,unsigned __int64 && __ptr64,std::basic_string<char,std::char_traits<char>,std::allocator<char> > && __ptr64)> & __ptr64>(hpx::actions::typed_continuation<void,hpx::util::unused_type> && cont, hpx::util::detail::deferred<hpx::actions::basic_action<hpx::actions::detail::plain_function,void __cdecl(hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> >),bulk_test_action>::invoker __cdecl(unsigned __int64 &,hpx::lcos::spmd_block &&,unsigned __int64 &&,unsigned __int64 &&,unsigned __int64 &&,std::basic_string<char,std::char_traits<char>,std::allocator<char> > &&)> & f) Line 141	C++
 	partitioned_vector_subview_test.exe!hpx::actions::detail::continuation_thread_function<bulk_test_action,hpx::actions::basic_action<hpx::actions::detail::plain_function,void __cdecl(hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> >),bulk_test_action>::invoker,unsigned __int64 & __ptr64,hpx::lcos::spmd_block && __ptr64,unsigned __int64 && __ptr64,unsigned __int64 && __ptr64,unsigned __int64 && __ptr64,std::basic_string<char,std::char_traits<char>,std::allocator<char> > && __ptr64>::operator()(hpx::threads::thread_state_ex_enum __formal) Line 105	C++
 	partitioned_vector_subview_test.exe!hpx::util::detail::invoke_impl<std::pair<enum hpx::threads::thread_state_enum,boost::intrusive_ptr<hpx::threads::thread_data> >,hpx::actions::detail::continuation_thread_function<bulk_test_action,hpx::actions::basic_action<hpx::actions::detail::plain_function,void __cdecl(hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> >),bulk_test_action>::invoker,unsigned __int64 & __ptr64,hpx::lcos::spmd_block && __ptr64,unsigned __int64 && __ptr64,unsigned __int64 && __ptr64,unsigned __int64 && __ptr64,std::basic_string<char,std::char_traits<char>,std::allocator<char> > && __ptr64> >::operator()<hpx::actions::detail::continuation_thread_function<bulk_test_action,hpx::actions::basic_action<hpx::actions::detail::plain_function,void __cdecl(hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> >),bulk_test_action>::invoker,unsigned __int64 & __ptr64,hpx::lcos::spmd_block && __ptr64,unsigned __int64 && __ptr64,unsigned __int64 && __ptr64,unsigned __int64 && __ptr64,std::basic_string<char,std::char_traits<char>,std::allocator<char> > && __ptr64> & __ptr64,enum hpx::threads::thread_state_ex_enum>(hpx::actions::detail::continuation_thread_function<bulk_test_action,hpx::actions::basic_action<hpx::actions::detail::plain_function,void __cdecl(hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> >),bulk_test_action>::invoker,unsigned __int64 &,hpx::lcos::spmd_block &&,unsigned __int64 &&,unsigned __int64 &&,unsigned __int64 &&,std::basic_string<char,std::char_traits<char>,std::allocator<char> > &&> & f, hpx::threads::thread_state_ex_enum && <vs_0>) Line 35	C++
 	partitioned_vector_subview_test.exe!hpx::util::invoke_r<std::pair<enum hpx::threads::thread_state_enum,boost::intrusive_ptr<hpx::threads::thread_data> >,hpx::actions::detail::continuation_thread_function<bulk_test_action,hpx::actions::basic_action<hpx::actions::detail::plain_function,void __cdecl(hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> >),bulk_test_action>::invoker,unsigned __int64 & __ptr64,hpx::lcos::spmd_block && __ptr64,unsigned __int64 && __ptr64,unsigned __int64 && __ptr64,unsigned __int64 && __ptr64,std::basic_string<char,std::char_traits<char>,std::allocator<char> > && __ptr64> & __ptr64,enum hpx::threads::thread_state_ex_enum>(hpx::actions::detail::continuation_thread_function<bulk_test_action,hpx::actions::basic_action<hpx::actions::detail::plain_function,void __cdecl(hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> >),bulk_test_action>::invoker,unsigned __int64 &,hpx::lcos::spmd_block &&,unsigned __int64 &&,unsigned __int64 &&,unsigned __int64 &&,std::basic_string<char,std::char_traits<char>,std::allocator<char> > &&> & f, hpx::threads::thread_state_ex_enum && <vs_0>) Line 165	C++
 	partitioned_vector_subview_test.exe!hpx::util::detail::callable_vtable<std::pair<enum hpx::threads::thread_state_enum,boost::intrusive_ptr<hpx::threads::thread_data> > __cdecl(enum hpx::threads::thread_state_ex_enum)>::_invoke<hpx::actions::detail::continuation_thread_function<bulk_test_action,hpx::actions::basic_action<hpx::actions::detail::plain_function,void __cdecl(hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> >),bulk_test_action>::invoker,unsigned __int64 & __ptr64,hpx::lcos::spmd_block && __ptr64,unsigned __int64 && __ptr64,unsigned __int64 && __ptr64,unsigned __int64 && __ptr64,std::basic_string<char,std::char_traits<char>,std::allocator<char> > && __ptr64> >(void * * f, hpx::threads::thread_state_ex_enum && <vs_0>) Line 60	C++
 	hpxd.dll!hpx::util::detail::function_base<hpx::util::detail::unique_function_vtable<std::pair<enum hpx::threads::thread_state_enum,boost::intrusive_ptr<hpx::threads::thread_data> > __cdecl(enum hpx::threads::thread_state_ex_enum)>,std::pair<enum hpx::threads::thread_state_enum,boost::intrusive_ptr<hpx::threads::thread_data> > __cdecl(enum hpx::threads::thread_state_ex_enum)>::operator()(hpx::threads::thread_state_ex_enum <vs_0>) Line 195	C++
 	hpxd.dll!hpx::threads::coroutines::detail::coroutine_impl::operator()() Line 96	C++
 	hpxd.dll!hpx::threads::coroutines::detail::windows::trampoline<hpx::threads::coroutines::detail::coroutine_impl>(void * pv) Line 179	C++
 	KernelBase.dll!GetOsSafeBootMode() + 241 bytes	Unknown

@atrantan This is happening in code contributed by you. Would you mind having a look?

@atrantan
Copy link

atrantan commented Jul 2, 2017

@hkaiser Could you try with that branch https://github.com/atrantan/hpx/tree/fixing_2735 ?

@hkaiser
Copy link
Member Author

hkaiser commented Jul 2, 2017

@atrantan: With this branch the test in question does not compile for me:

1>------ Build started: Project: partitioned_vector_subview_test_exe, Configuration: Debug x64 ------
1>partitioned_vector_subview.cpp
1>d:\devel\hpx\hpx\components\containers\partitioned_vector\partitioned_vector_view.hpp(111): error C2676: binary '[': 'hpx::partitioned_vector_view<double,2,std::vector<double,std::allocator<_Ty>>>::list_type' does not define this operator or a conversion to a type acceptable to the predefined operator
1>        with
1>        [
1>            _Ty=double
1>        ]
1>d:\devel\hpx\hpx\components\containers\partitioned_vector\partitioned_vector_view.hpp(72): note: while compiling class template member function 'hpx::partitioned_vector_view<double,2,std::vector<double,std::allocator<_Ty>>>::partitioned_vector_view(const hpx::lcos::spmd_block &,hpx::segment_vector_iterator<T,Data,std::_Vector_iterator<std::_Vector_val<std::_Simple_types<hpx::partitioned_vector<T,Data>::partition_data>>>> &&,hpx::segment_vector_iterator<T,Data,std::_Vector_iterator<std::_Vector_val<std::_Simple_types<hpx::partitioned_vector<T,Data>::partition_data>>>> &&,hpx::partitioned_vector_view<T,2,Data>::list_type,hpx::partitioned_vector_view<T,2,Data>::list_type)'
1>        with
1>        [
1>            _Ty=double,
1>            T=double,
1>            Data=std::vector<double,std::allocator<double>>
1>        ]
1>d:\devel\hpx\tests\unit\component\partitioned_vector_subview.cpp(47): note: see reference to function template instantiation 'hpx::partitioned_vector_view<double,2,std::vector<double,std::allocator<_Ty>>>::partitioned_vector_view(const hpx::lcos::spmd_block &,hpx::segment_vector_iterator<T,Data,std::_Vector_iterator<std::_Vector_val<std::_Simple_types<hpx::partitioned_vector<T,Data>::partition_data>>>> &&,hpx::segment_vector_iterator<T,Data,std::_Vector_iterator<std::_Vector_val<std::_Simple_types<hpx::partitioned_vector<T,Data>::partition_data>>>> &&,hpx::partitioned_vector_view<T,2,Data>::list_type,hpx::partitioned_vector_view<T,2,Data>::list_type)' being compiled
1>        with
1>        [
1>            _Ty=double,
1>            T=double,
1>            Data=std::vector<double,std::allocator<double>>
1>        ]
1>d:\devel\hpx\tests\unit\component\partitioned_vector_subview.cpp(40): note: see reference to class template instantiation 'hpx::partitioned_vector_view<double,2,std::vector<double,std::allocator<_Ty>>>' being compiled
1>        with
1>        [
1>            _Ty=double
1>        ]
1>Done building project "partitioned_vector_subview_test_exe.vcxproj" -- FAILED.
========== Build: 0 succeeded, 1 failed, 4 up-to-date, 0 skipped ==========

@atrantan
Copy link

atrantan commented Jul 2, 2017

@hkaiser My bad. Should be fine now.

@hkaiser
Copy link
Member Author

hkaiser commented Jul 2, 2017

@atrantan: this compiles now, thanks. However it still fails at runtime (but at a different spot):

 	msvcp140d.dll!std::_Debug_message() + 70 bytes	Unknown
>	partitioned_vector_subview_test.exe!std::_Vector_const_iterator<std::_Vector_val<std::_Simple_types<hpx::partitioned_vector<double,std::vector<double,std::allocator<double> > >::partition_data> > >::operator+=(__int64 _Off) Line 157	C++
 	partitioned_vector_subview_test.exe!std::_Vector_iterator<std::_Vector_val<std::_Simple_types<hpx::partitioned_vector<double,std::vector<double,std::allocator<double> > >::partition_data> > >::operator+=(__int64 _Off) Line 359	C++
 	partitioned_vector_subview_test.exe!hpx::util::iterator_adaptor<hpx::segment_vector_iterator<double,std::vector<double,std::allocator<double> >,std::_Vector_iterator<std::_Vector_val<std::_Simple_types<hpx::partitioned_vector<double,std::vector<double,std::allocator<double> > >::partition_data> > > >,std::_Vector_iterator<std::_Vector_val<std::_Simple_types<hpx::partitioned_vector<double,std::vector<double,std::allocator<double> > >::partition_data> > >,void,void,void,void,void>::advance(__int64 n) Line 179	C++
 	partitioned_vector_subview_test.exe!hpx::util::iterator_core_access::advance<hpx::segment_vector_iterator<double,std::vector<double,std::allocator<double> >,std::_Vector_iterator<std::_Vector_val<std::_Simple_types<hpx::partitioned_vector<double,std::vector<double,std::allocator<double> > >::partition_data> > > >,__int64>(hpx::segment_vector_iterator<double,std::vector<double,std::allocator<double> >,std::_Vector_iterator<std::_Vector_val<std::_Simple_types<hpx::partitioned_vector<double,std::vector<double,std::allocator<double> > >::partition_data> > > > & it, __int64 n) Line 66	C++
 	partitioned_vector_subview_test.exe!hpx::util::detail::iterator_facade_base<hpx::segment_vector_iterator<double,std::vector<double,std::allocator<double> >,std::_Vector_iterator<std::_Vector_val<std::_Simple_types<hpx::partitioned_vector<double,std::vector<double,std::allocator<double> > >::partition_data> > > >,hpx::partitioned_vector<double,std::vector<double,std::allocator<double> > >::partition_data,std::random_access_iterator_tag,hpx::partitioned_vector<double,std::vector<double,std::allocator<double> > >::partition_data & __ptr64,__int64,void>::operator+=(__int64 n) Line 283	C++
 	partitioned_vector_subview_test.exe!hpx::partitioned_vector_view<double,2,std::vector<double,std::allocator<double> > >::partitioned_vector_view<double,2,std::vector<double,std::allocator<double> > >(const hpx::lcos::spmd_block & block, hpx::segment_vector_iterator<double,std::vector<double,std::allocator<double> >,std::_Vector_iterator<std::_Vector_val<std::_Simple_types<hpx::partitioned_vector<double,std::vector<double,std::allocator<double> > >::partition_data> > > > && begin, hpx::segment_vector_iterator<double,std::vector<double,std::allocator<double> >,std::_Vector_iterator<std::_Vector_val<std::_Simple_types<hpx::partitioned_vector<double,std::vector<double,std::allocator<double> > >::partition_data> > > > && last, std::initializer_list<unsigned __int64> sw_sizes, std::initializer_list<unsigned __int64> hw_sizes) Line 111	C++
 	partitioned_vector_subview_test.exe!bulk_test(hpx::lcos::spmd_block block, unsigned __int64 N, unsigned __int64 tile, unsigned __int64 elt_size, std::basic_string<char,std::char_traits<char>,std::allocator<char> > vec_name) Line 47	C++
 	partitioned_vector_subview_test.exe!hpx::actions::basic_action_impl<void (__cdecl*)(hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> >),void (__cdecl*)(hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> >),&bulk_test,bulk_test_action>::invoke<hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> > >(unsigned __int64 __formal, hpx::lcos::spmd_block && <vs_0>, unsigned __int64 && <vs_1>, unsigned __int64 && <vs_2>, unsigned __int64 && <vs_3>, std::basic_string<char,std::char_traits<char>,std::allocator<char> > && <vs_4>) Line 80	C++
 	partitioned_vector_subview_test.exe!hpx::actions::basic_action<hpx::actions::detail::plain_function,void __cdecl(hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> >),bulk_test_action>::invoker::invoke<hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> > >(std::integral_constant<bool,1> __formal, unsigned __int64 lva, hpx::lcos::spmd_block && <vs_0>, unsigned __int64 && <vs_1>, unsigned __int64 && <vs_2>, unsigned __int64 && <vs_3>, std::basic_string<char,std::char_traits<char>,std::allocator<char> > && <vs_4>) Line 206	C++
 	partitioned_vector_subview_test.exe!hpx::actions::basic_action<hpx::actions::detail::plain_function,void __cdecl(hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> >),bulk_test_action>::invoker::operator()<hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> > >(unsigned __int64 lva, hpx::lcos::spmd_block && <vs_0>, unsigned __int64 && <vs_1>, unsigned __int64 && <vs_2>, unsigned __int64 && <vs_3>, std::basic_string<char,std::char_traits<char>,std::allocator<char> > && <vs_4>) Line 197	C++
 	partitioned_vector_subview_test.exe!hpx::util::detail::invoke_impl<hpx::util::unused_type,hpx::actions::basic_action<hpx::actions::detail::plain_function,void __cdecl(hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> >),bulk_test_action>::invoker>::operator()<hpx::actions::basic_action<hpx::actions::detail::plain_function,void __cdecl(hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> >),bulk_test_action>::invoker,unsigned __int64,hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> > >(hpx::actions::basic_action<hpx::actions::detail::plain_function,void __cdecl(hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> >),bulk_test_action>::invoker && f, unsigned __int64 && <vs_0>, hpx::lcos::spmd_block && <vs_1>, unsigned __int64 && <vs_2>, unsigned __int64 && <vs_3>, unsigned __int64 && <vs_4>, std::basic_string<char,std::char_traits<char>,std::allocator<char> > && <vs_5>) Line 35	C++
 	partitioned_vector_subview_test.exe!hpx::util::invoke_r<hpx::util::unused_type,hpx::actions::basic_action<hpx::actions::detail::plain_function,void __cdecl(hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> >),bulk_test_action>::invoker,unsigned __int64,hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> > >(hpx::actions::basic_action<hpx::actions::detail::plain_function,void __cdecl(hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> >),bulk_test_action>::invoker && f, unsigned __int64 && <vs_0>, hpx::lcos::spmd_block && <vs_1>, unsigned __int64 && <vs_2>, unsigned __int64 && <vs_3>, unsigned __int64 && <vs_4>, std::basic_string<char,std::char_traits<char>,std::allocator<char> > && <vs_5>) Line 165	C++
 	partitioned_vector_subview_test.exe!hpx::util::detail::invoke_fused_impl<hpx::util::unused_type,hpx::actions::basic_action<hpx::actions::detail::plain_function,void __cdecl(hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> >),bulk_test_action>::invoker,hpx::util::tuple<unsigned __int64,hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,0,1,2,3,4,5>(hpx::actions::basic_action<hpx::actions::detail::plain_function,void __cdecl(hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> >),bulk_test_action>::invoker && f, hpx::util::tuple<unsigned __int64,hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> > > && t, hpx::util::detail::pack_c<unsigned __int64,0,1,2,3,4,5> __formal) Line 73	C++
 	partitioned_vector_subview_test.exe!hpx::util::invoke_fused<hpx::actions::basic_action<hpx::actions::detail::plain_function,void __cdecl(hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> >),bulk_test_action>::invoker,hpx::util::tuple<unsigned __int64,hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> > > >(hpx::actions::basic_action<hpx::actions::detail::plain_function,void __cdecl(hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> >),bulk_test_action>::invoker && f, hpx::util::tuple<unsigned __int64,hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> > > && t) Line 102	C++
 	partitioned_vector_subview_test.exe!hpx::util::detail::deferred<hpx::actions::basic_action<hpx::actions::detail::plain_function,void __cdecl(hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> >),bulk_test_action>::invoker __cdecl(unsigned __int64 & __ptr64,hpx::lcos::spmd_block && __ptr64,unsigned __int64 && __ptr64,unsigned __int64 && __ptr64,unsigned __int64 && __ptr64,std::basic_string<char,std::char_traits<char>,std::allocator<char> > && __ptr64)>::operator()() Line 103	C++
 	partitioned_vector_subview_test.exe!hpx::util::detail::invoke_impl<hpx::util::unused_type,hpx::util::detail::deferred<hpx::actions::basic_action<hpx::actions::detail::plain_function,void __cdecl(hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> >),bulk_test_action>::invoker __cdecl(unsigned __int64 & __ptr64,hpx::lcos::spmd_block && __ptr64,unsigned __int64 && __ptr64,unsigned __int64 && __ptr64,unsigned __int64 && __ptr64,std::basic_string<char,std::char_traits<char>,std::allocator<char> > && __ptr64)> >::operator()<hpx::util::detail::deferred<hpx::actions::basic_action<hpx::actions::detail::plain_function,void __cdecl(hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> >),bulk_test_action>::invoker __cdecl(unsigned __int64 & __ptr64,hpx::lcos::spmd_block && __ptr64,unsigned __int64 && __ptr64,unsigned __int64 && __ptr64,unsigned __int64 && __ptr64,std::basic_string<char,std::char_traits<char>,std::allocator<char> > && __ptr64)> & __ptr64>(hpx::util::detail::deferred<hpx::actions::basic_action<hpx::actions::detail::plain_function,void __cdecl(hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> >),bulk_test_action>::invoker __cdecl(unsigned __int64 &,hpx::lcos::spmd_block &&,unsigned __int64 &&,unsigned __int64 &&,unsigned __int64 &&,std::basic_string<char,std::char_traits<char>,std::allocator<char> > &&)> & f) Line 35	C++
 	partitioned_vector_subview_test.exe!hpx::util::invoke<hpx::util::detail::deferred<hpx::actions::basic_action<hpx::actions::detail::plain_function,void __cdecl(hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> >),bulk_test_action>::invoker __cdecl(unsigned __int64 & __ptr64,hpx::lcos::spmd_block && __ptr64,unsigned __int64 && __ptr64,unsigned __int64 && __ptr64,unsigned __int64 && __ptr64,std::basic_string<char,std::char_traits<char>,std::allocator<char> > && __ptr64)> & __ptr64>(hpx::util::detail::deferred<hpx::actions::basic_action<hpx::actions::detail::plain_function,void __cdecl(hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> >),bulk_test_action>::invoker __cdecl(unsigned __int64 &,hpx::lcos::spmd_block &&,unsigned __int64 &&,unsigned __int64 &&,unsigned __int64 &&,std::basic_string<char,std::char_traits<char>,std::allocator<char> > &&)> & f) Line 153	C++
 	partitioned_vector_subview_test.exe!hpx::actions::detail::trigger_impl<void,hpx::util::unused_type,hpx::util::detail::deferred<hpx::actions::basic_action<hpx::actions::detail::plain_function,void __cdecl(hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> >),bulk_test_action>::invoker __cdecl(unsigned __int64 & __ptr64,hpx::lcos::spmd_block && __ptr64,unsigned __int64 && __ptr64,unsigned __int64 && __ptr64,unsigned __int64 && __ptr64,std::basic_string<char,std::char_traits<char>,std::allocator<char> > && __ptr64)> & __ptr64>(std::integral_constant<bool,1> __formal, hpx::actions::typed_continuation<void,hpx::util::unused_type> && cont, hpx::util::detail::deferred<hpx::actions::basic_action<hpx::actions::detail::plain_function,void __cdecl(hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> >),bulk_test_action>::invoker __cdecl(unsigned __int64 &,hpx::lcos::spmd_block &&,unsigned __int64 &&,unsigned __int64 &&,unsigned __int64 &&,std::basic_string<char,std::char_traits<char>,std::allocator<char> > &&)> & f) Line 113	C++
 	partitioned_vector_subview_test.exe!hpx::actions::detail::trigger_impl_future<void,hpx::util::unused_type,hpx::util::detail::deferred<hpx::actions::basic_action<hpx::actions::detail::plain_function,void __cdecl(hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> >),bulk_test_action>::invoker __cdecl(unsigned __int64 & __ptr64,hpx::lcos::spmd_block && __ptr64,unsigned __int64 && __ptr64,unsigned __int64 && __ptr64,unsigned __int64 && __ptr64,std::basic_string<char,std::char_traits<char>,std::allocator<char> > && __ptr64)> & __ptr64>(std::integral_constant<bool,0> __formal, hpx::actions::typed_continuation<void,hpx::util::unused_type> && cont, hpx::util::detail::deferred<hpx::actions::basic_action<hpx::actions::detail::plain_function,void __cdecl(hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> >),bulk_test_action>::invoker __cdecl(unsigned __int64 &,hpx::lcos::spmd_block &&,unsigned __int64 &&,unsigned __int64 &&,unsigned __int64 &&,std::basic_string<char,std::char_traits<char>,std::allocator<char> > &&)> & f) Line 129	C++
 	partitioned_vector_subview_test.exe!hpx::actions::trigger<void,hpx::util::unused_type,hpx::util::detail::deferred<hpx::actions::basic_action<hpx::actions::detail::plain_function,void __cdecl(hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> >),bulk_test_action>::invoker __cdecl(unsigned __int64 & __ptr64,hpx::lcos::spmd_block && __ptr64,unsigned __int64 && __ptr64,unsigned __int64 && __ptr64,unsigned __int64 && __ptr64,std::basic_string<char,std::char_traits<char>,std::allocator<char> > && __ptr64)> & __ptr64>(hpx::actions::typed_continuation<void,hpx::util::unused_type> && cont, hpx::util::detail::deferred<hpx::actions::basic_action<hpx::actions::detail::plain_function,void __cdecl(hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> >),bulk_test_action>::invoker __cdecl(unsigned __int64 &,hpx::lcos::spmd_block &&,unsigned __int64 &&,unsigned __int64 &&,unsigned __int64 &&,std::basic_string<char,std::char_traits<char>,std::allocator<char> > &&)> & f) Line 141	C++
 	partitioned_vector_subview_test.exe!hpx::actions::detail::continuation_thread_function<bulk_test_action,hpx::actions::basic_action<hpx::actions::detail::plain_function,void __cdecl(hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> >),bulk_test_action>::invoker,unsigned __int64 & __ptr64,hpx::lcos::spmd_block && __ptr64,unsigned __int64 && __ptr64,unsigned __int64 && __ptr64,unsigned __int64 && __ptr64,std::basic_string<char,std::char_traits<char>,std::allocator<char> > && __ptr64>::operator()(hpx::threads::thread_state_ex_enum __formal) Line 105	C++
 	partitioned_vector_subview_test.exe!hpx::util::detail::invoke_impl<std::pair<enum hpx::threads::thread_state_enum,boost::intrusive_ptr<hpx::threads::thread_data> >,hpx::actions::detail::continuation_thread_function<bulk_test_action,hpx::actions::basic_action<hpx::actions::detail::plain_function,void __cdecl(hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> >),bulk_test_action>::invoker,unsigned __int64 & __ptr64,hpx::lcos::spmd_block && __ptr64,unsigned __int64 && __ptr64,unsigned __int64 && __ptr64,unsigned __int64 && __ptr64,std::basic_string<char,std::char_traits<char>,std::allocator<char> > && __ptr64> >::operator()<hpx::actions::detail::continuation_thread_function<bulk_test_action,hpx::actions::basic_action<hpx::actions::detail::plain_function,void __cdecl(hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> >),bulk_test_action>::invoker,unsigned __int64 & __ptr64,hpx::lcos::spmd_block && __ptr64,unsigned __int64 && __ptr64,unsigned __int64 && __ptr64,unsigned __int64 && __ptr64,std::basic_string<char,std::char_traits<char>,std::allocator<char> > && __ptr64> & __ptr64,enum hpx::threads::thread_state_ex_enum>(hpx::actions::detail::continuation_thread_function<bulk_test_action,hpx::actions::basic_action<hpx::actions::detail::plain_function,void __cdecl(hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> >),bulk_test_action>::invoker,unsigned __int64 &,hpx::lcos::spmd_block &&,unsigned __int64 &&,unsigned __int64 &&,unsigned __int64 &&,std::basic_string<char,std::char_traits<char>,std::allocator<char> > &&> & f, hpx::threads::thread_state_ex_enum && <vs_0>) Line 35	C++
 	partitioned_vector_subview_test.exe!hpx::util::invoke_r<std::pair<enum hpx::threads::thread_state_enum,boost::intrusive_ptr<hpx::threads::thread_data> >,hpx::actions::detail::continuation_thread_function<bulk_test_action,hpx::actions::basic_action<hpx::actions::detail::plain_function,void __cdecl(hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> >),bulk_test_action>::invoker,unsigned __int64 & __ptr64,hpx::lcos::spmd_block && __ptr64,unsigned __int64 && __ptr64,unsigned __int64 && __ptr64,unsigned __int64 && __ptr64,std::basic_string<char,std::char_traits<char>,std::allocator<char> > && __ptr64> & __ptr64,enum hpx::threads::thread_state_ex_enum>(hpx::actions::detail::continuation_thread_function<bulk_test_action,hpx::actions::basic_action<hpx::actions::detail::plain_function,void __cdecl(hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> >),bulk_test_action>::invoker,unsigned __int64 &,hpx::lcos::spmd_block &&,unsigned __int64 &&,unsigned __int64 &&,unsigned __int64 &&,std::basic_string<char,std::char_traits<char>,std::allocator<char> > &&> & f, hpx::threads::thread_state_ex_enum && <vs_0>) Line 165	C++
 	partitioned_vector_subview_test.exe!hpx::util::detail::callable_vtable<std::pair<enum hpx::threads::thread_state_enum,boost::intrusive_ptr<hpx::threads::thread_data> > __cdecl(enum hpx::threads::thread_state_ex_enum)>::_invoke<hpx::actions::detail::continuation_thread_function<bulk_test_action,hpx::actions::basic_action<hpx::actions::detail::plain_function,void __cdecl(hpx::lcos::spmd_block,unsigned __int64,unsigned __int64,unsigned __int64,std::basic_string<char,std::char_traits<char>,std::allocator<char> >),bulk_test_action>::invoker,unsigned __int64 & __ptr64,hpx::lcos::spmd_block && __ptr64,unsigned __int64 && __ptr64,unsigned __int64 && __ptr64,unsigned __int64 && __ptr64,std::basic_string<char,std::char_traits<char>,std::allocator<char> > && __ptr64> >(void * * f, hpx::threads::thread_state_ex_enum && <vs_0>) Line 60	C++
 	hpxd.dll!hpx::util::detail::function_base<hpx::util::detail::unique_function_vtable<std::pair<enum hpx::threads::thread_state_enum,boost::intrusive_ptr<hpx::threads::thread_data> > __cdecl(enum hpx::threads::thread_state_ex_enum)>,std::pair<enum hpx::threads::thread_state_enum,boost::intrusive_ptr<hpx::threads::thread_data> > __cdecl(enum hpx::threads::thread_state_ex_enum)>::operator()(hpx::threads::thread_state_ex_enum <vs_0>) Line 195	C++
 	hpxd.dll!hpx::threads::coroutines::detail::coroutine_impl::operator()() Line 96	C++
 	hpxd.dll!hpx::threads::coroutines::detail::windows::trampoline<hpx::threads::coroutines::detail::coroutine_impl>(void * pv) Line 179	C++
 	KernelBase.dll!GetOsSafeBootMode() + 241 bytes	Unknown

@atrantan
Copy link

atrantan commented Jul 3, 2017

@hkaiser And now?

@hkaiser
Copy link
Member Author

hkaiser commented Jul 3, 2017

@atrantan The test does not fail anymore. Thanks!

@hkaiser
Copy link
Member Author

hkaiser commented Jul 4, 2017

This was fixed by merging #2737

@hkaiser hkaiser closed this as completed Jul 4, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants