In file included from /ccs/home/prkkumar/warpx_dir/WarpX/build/_deps/fetchedopenpmd-src/src/IO/ADIOS/ADIOS2IOHandler.cpp:22:
/ccs/home/prkkumar/warpx_dir/WarpX/build/_deps/fetchedopenpmd-src/src/IO/ADIOS/ADIOS2IOHandler.cpp: In instantiation of 'openPMD::detail::WriteDataset::call(openPMD::detail::BufferedActions&, openPMD::detail::BufferedPut&) [with T = char]::<lambda(auto:29&&)> [with auto:29 = openPMD::UniquePtrWithLambda<void>&]':
/autofs/nccs-svm1_sw/summit/gcc/9.3.0-2/include/c++/9.3.0/type_traits:2336:26: required by substitution of 'template<class _Fn, class ... _Args> static std::__result_of_success<decltype (declval<_Fn>()((declval<_Args>)()...)), std::__invoke_other> std::__result_of_other_impl::_S_test(int) [with _Fn = openPMD::detail::WriteDataset::call(openPMD::detail::BufferedActions&, openPMD::detail::BufferedPut&) [with T = char]::<lambda(auto:29&&)>; _Args = {openPMD::UniquePtrWithLambda<void>&}]'
/autofs/nccs-svm1_sw/summit/gcc/9.3.0-2/include/c++/9.3.0/type_traits:2347:55: required from 'struct std::__result_of_impl<false, false, openPMD::detail::WriteDataset::call(openPMD::detail::BufferedActions&, openPMD::detail::BufferedPut&) [with T = char]::<lambda(auto:29&&)>, openPMD::UniquePtrWithLambda<void>&>'
/autofs/nccs-svm1_sw/summit/gcc/9.3.0-2/include/c++/9.3.0/type_traits:2352:12: required from 'struct std::__invoke_result<openPMD::detail::WriteDataset::call(openPMD::detail::BufferedActions&, openPMD::detail::BufferedPut&) [with T = char]::<lambda(auto:29&&)>, openPMD::UniquePtrWithLambda<void>&>'
/autofs/nccs-svm1_sw/summit/gcc/9.3.0-2/include/c++/9.3.0/bits/invoke.h:89:5: required by substitution of 'template<class _Callable, class ... _Args> constexpr typename std::__invoke_result<_Functor, _ArgTypes>::type std::__invoke(_Callable&&, _Args&& ...) [with _Callable = openPMD::detail::WriteDataset::call(openPMD::detail::BufferedActions&, openPMD::detail::BufferedPut&) [with T = char]::<lambda(auto:29&&)>; _Args = {openPMD::UniquePtrWithLambda<void>&}]'
/autofs/nccs-svm1_sw/summit/gcc/9.3.0-2/include/c++/9.3.0/variant:972:24: required from 'static constexpr decltype(auto) std::__detail::__variant::__gen_vtable_impl<__same_return_types, std::__detail::__variant::_Multi_array<_Result_type (*)(_Visitor, _Variants ...)>, std::tuple<_Variants ...>, std::integer_sequence<long unsigned int, __indices ...> >::__visit_invoke_impl(_Visitor&&, _Variants ...) [with bool __same_return_types = true; _Result_type = void; _Visitor = openPMD::detail::WriteDataset::call(openPMD::detail::BufferedActions&, openPMD::detail::BufferedPut&) [with T = char]::<lambda(auto:29&&)>&&; _Variants = {std::variant<std::shared_ptr<const void>, openPMD::UniquePtrWithLambda<void> >&}; long unsigned int ...__indices = {1}]'
/autofs/nccs-svm1_sw/summit/gcc/9.3.0-2/include/c++/9.3.0/variant:980:28: [ skipping 4 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/autofs/nccs-svm1_sw/summit/gcc/9.3.0-2/include/c++/9.3.0/variant:900:48: required from 'constexpr const _Array_type std::__detail::__variant::__gen_vtable<true, void, openPMD::detail::WriteDataset::call(openPMD::detail::BufferedActions&, openPMD::detail::BufferedPut&) [with T = char]::<lambda(auto:29&&)>&&, std::variant<std::shared_ptr<const void>, openPMD::UniquePtrWithLambda<void> >&>::_S_vtable'
/autofs/nccs-svm1_sw/summit/gcc/9.3.0-2/include/c++/9.3.0/variant:1638:23: required from 'constexpr decltype(auto) std::__do_visit(_Visitor&&, _Variants&& ...) [with bool __use_index = false; bool __same_return_types = true; _Visitor = openPMD::detail::WriteDataset::call(openPMD::detail::BufferedActions&, openPMD::detail::BufferedPut&) [with T = char]::<lambda(auto:29&&)>; _Variants = {std::variant<std::shared_ptr<const void>, openPMD::UniquePtrWithLambda<void> >&}]'
/autofs/nccs-svm1_sw/summit/gcc/9.3.0-2/include/c++/9.3.0/variant:1654:24: required from 'constexpr decltype(auto) std::visit(_Visitor&&, _Variants&& ...) [with _Visitor = openPMD::detail::WriteDataset::call(openPMD::detail::BufferedActions&, openPMD::detail::BufferedPut&) [with T = char]::<lambda(auto:29&&)>; _Variants = {std::variant<std::shared_ptr<const void>, openPMD::UniquePtrWithLambda<void> >&}]'
/ccs/home/prkkumar/warpx_dir/WarpX/build/_deps/fetchedopenpmd-src/src/IO/ADIOS/ADIOS2IOHandler.cpp:1949:19: required from 'static void openPMD::detail::WriteDataset::call(openPMD::detail::BufferedActions&, openPMD::detail::BufferedPut&) [with T = char]'
/ccs/home/prkkumar/warpx_dir/WarpX/build/_deps/fetchedopenpmd-src/include/openPMD/IO/ADIOS/ADIOS2Auxiliary.hpp:228:43: required from 'decltype (Action::call<char>((forward<Args>)(openPMD::switchAdios2VariableType::args)...)) openPMD::switchAdios2VariableType(openPMD::Datatype, Args&& ...) [with Action = openPMD::detail::WriteDataset; Args = {openPMD::detail::BufferedActions&, openPMD::detail::BufferedPut&}; decltype (Action::call<char>((forward<Args>)(openPMD::switchAdios2VariableType::args)...)) = void]'
/ccs/home/prkkumar/warpx_dir/WarpX/build/_deps/fetchedopenpmd-src/src/IO/ADIOS/ADIOS2IOHandler.cpp:2427:78: required from here
/autofs/nccs-svm1_sw/summit/gcc/9.3.0-2/include/c++/9.3.0/variant:1019:40: in 'constexpr' expansion of 'std::__detail::__variant::__gen_vtable_impl<true, std::__detail::__variant::_Multi_array<void (*)(openPMD::detail::WriteDataset::call(openPMD::detail::BufferedActions&, openPMD::detail::BufferedPut&) [with T = char]::<lambda(auto:29&&)>&&, std::variant<std::shared_ptr<const void>, openPMD::UniquePtrWithLambda<void> >&), 2>, std::tuple<std::variant<std::shared_ptr<const void>, openPMD::UniquePtrWithLambda<void> >&>, std::integer_sequence<long unsigned int> >::_S_apply()'
/autofs/nccs-svm1_sw/summit/gcc/9.3.0-2/include/c++/9.3.0/variant:885:19: in 'constexpr' expansion of 'std::__detail::__variant::__gen_vtable_impl<true, std::__detail::__variant::_Multi_array<void (*)(openPMD::detail::WriteDataset::call(openPMD::detail::BufferedActions&, openPMD::detail::BufferedPut&) [with T = char]::<lambda(auto:29&&)>&&, std::variant<std::shared_ptr<const void>, openPMD::UniquePtrWithLambda<void> >&), 2>, std::tuple<std::variant<std::shared_ptr<const void>, openPMD::UniquePtrWithLambda<void> >&>, std::integer_sequence<long unsigned int> >::_S_apply_all_alts<0, 1>(__vtable, (std::make_index_sequence<2>(), std::make_index_sequence<2>()))'
/ccs/home/prkkumar/warpx_dir/WarpX/build/_deps/fetchedopenpmd-src/include/openPMD/IO/ADIOS/ADIOS2IOHandler.hpp:917:12: note: 'struct openPMD::detail::BufferedUniquePtrPut' has no user-provided default constructor
917 | struct BufferedUniquePtrPut
| ^~~~~~~~~~~~~~~~~~~~
/ccs/home/prkkumar/warpx_dir/WarpX/build/_deps/fetchedopenpmd-src/include/openPMD/IO/ADIOS/ADIOS2IOHandler.hpp:923:18: note: and the implicitly-defined constructor does not initialize 'openPMD::Datatype openPMD::detail::BufferedUniquePtrPut::dtype'
923 | Datatype dtype;
| ^~~~~
Note that, I do not see this on my Linux system or Perlmutter.
cmake -S . -B build -DWarpX_DIMS=3 -DWarpX_COMPUTE=CUDA -DWarpX_PSATD=ONgave the following
configure.txt
When I build the code, I see a bunch of warnings all related to OpenPMD. Here is a snippet of that:
Full out put of
cmake --build build -j 6is attached below.cmakeoutput.txt
Note that, I do not see this on my Linux system or Perlmutter.