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

#1974: fix various c++17 deprecations and compile errors #1975

Closed
wants to merge 2 commits into from

Conversation

nmm0
Copy link
Collaborator

@nmm0 nmm0 commented Sep 22, 2022

Fixes #1974

@nmm0 nmm0 linked an issue Sep 22, 2022 that may be closed by this pull request
2 tasks
@github-actions
Copy link

github-actions bot commented Sep 22, 2022

Pipelines results

PR tests (gcc-7, ubuntu, mpich, trace runtime, LB)

Build for a4212f8

FAILED: src/CMakeFiles/vt.dir/Unity/unity_20_cxx.cxx.o 
/usr/bin/ccache /usr/bin/g++ -DJSON_USE_IMPLICIT_CONVERSIONS=1 -DVT_NO_COLOR_ENABLED -I/vt/lib/CLI -Irelease -I/vt/src -I/vt/lib/json/include -I/vt/lib/brotli/c/include -I/vt/lib/libfort/lib -isystem /vt/lib/fmt/include -isystem /vt/lib/EngFormat-Cpp/include -isystem /build/checkpoint/install/include -isystem /build/detector/install/include -O3 -DNDEBUG -Wall -pedantic -Wshadow -Wno-unknown-pragmas -Wsign-compare -ftemplate-backtrace-limit=100 -Werror -Og --coverage -fPIC -std=c++14 -MD -MT src/CMakeFiles/vt.dir/Unity/unity_20_cxx.cxx.o -MF src/CMakeFiles/vt.dir/Unity/unity_20_cxx.cxx.o.d -o src/CMakeFiles/vt.dir/Unity/unity_20_cxx.cxx.o -c src/CMakeFiles/vt.dir/Unity/unity_20_cxx.cxx
In file included from /vt/src/vt/collective/reduce/reduce.h:386:0,
                 from /vt/src/vt/vrt/collection/balance/phase_msg.h:48,
                 from /vt/src/vt/vrt/collection/balance/col_lb_data.h:51,
                 from /vt/src/vt/vrt/collection/types/migratable.h:54,
                 from /vt/src/vt/vrt/collection/types/indexable.h:52,
                 from /vt/src/vt/vrt/collection/types/base.h:51,
                 from /vt/src/vt/vrt/collection/types/headers.h:55,
                 from /vt/src/vt/vrt/collection/messages/system_create.h:50,
                 from /vt/src/vt/vrt/collection/manager.h:51,
                 from /vt/src/vt/scheduler/scheduler.cc:50,
                 from src/CMakeFiles/vt.dir/Unity/unity_20_cxx.cxx:6:
/vt/src/vt/collective/reduce/reduce.impl.h: In member function 'vt::collective::reduce::Reduce::PendingSendType vt::collective::reduce::Reduce::reduce(vt::NodeType, MsgT*, vt::collective::reduce::detail::ReduceStamp, vt::collective::reduce::Reduce::ReduceNumType)':
/vt/src/vt/collective/reduce/reduce.impl.h:131:69: error: explicit by-copy capture of 'this' redundant with by-copy capture default [-Werror]
   return PendingSendType{theMsg()->getEpochContextMsg(msg_ptr), [=, this](){
                                                                     ^~~~
In file included from /vt/src/vt/topos/location/location.h:464:0,
                 from /vt/src/vt/topos/location/location_headers.h:48,
                 from /vt/src/vt/vrt/collection/manager.h:68,
                 from /vt/src/vt/scheduler/scheduler.cc:50,
                 from src/CMakeFiles/vt.dir/Unity/unity_20_cxx.cxx:6:
/vt/src/vt/topos/location/location.impl.h: In member function 'void vt::location::EntityLocationCoord<EntityID>::routeMsgNode(bool, const EntityID&, const NodeType&, const NodeType&, vt::MsgSharedPtr<MsgT>)':
/vt/src/vt/topos/location/location.impl.h:528:43: error: explicit by-copy capture of 'this' redundant with by-copy capture default [-Werror]
     auto trigger_msg_handler_action = [=, this](EntityID const& hid) {
                                 %0D%0A%0D%0A%0D%0A ==> And there is more. Read log. <==

Build log


PR tests (gcc-8, ubuntu, mpich, address sanitizer)

Build for 2375eda

Compilation - successful

Testing - passed

Build log


PR tests (clang-5.0, ubuntu, mpich)

Build for 2375eda

Compilation - successful

Testing - passed

Build log


PR tests (clang-3.9, ubuntu, mpich)

Build for 2375eda

Compilation - successful

Testing - passed

Build log


PR tests (nvidia cuda 10.1, ubuntu, mpich)

Build for 2375eda

Compilation - successful

Testing - passed

Build log


PR tests (nvidia cuda 11.0, ubuntu, mpich)

Build for 2375eda

Compilation - successful

Testing - passed

Build log


PR tests (gcc-6, ubuntu, mpich)

Build for 2375eda

Compilation - successful

Testing - passed

Build log


PR tests (clang-11, ubuntu, mpich)

Build for a4212f8

FAILED: src/CMakeFiles/vt.dir/Unity/unity_20_cxx.cxx.o 
/usr/bin/ccache /usr/bin/clang++ -DJSON_USE_IMPLICIT_CONVERSIONS=1 -DVT_NO_COLOR_ENABLED -I/vt/lib/CLI -Irelease -I/vt/src -I/vt/lib/json/include -I/vt/lib/brotli/c/include -I/vt/lib/libfort/lib -isystem /vt/lib/fmt/include -isystem /vt/lib/EngFormat-Cpp/include -isystem /build/checkpoint/install/include -isystem /build/detector/install/include -O3 -DNDEBUG -Wall -pedantic -Wshadow -Wno-unknown-pragmas -Wsign-compare -ftemplate-backtrace-limit=100 -Werror -ftemplate-depth=900 -fPIC -std=c++14 -MD -MT src/CMakeFiles/vt.dir/Unity/unity_20_cxx.cxx.o -MF src/CMakeFiles/vt.dir/Unity/unity_20_cxx.cxx.o.d -o src/CMakeFiles/vt.dir/Unity/unity_20_cxx.cxx.o -c src/CMakeFiles/vt.dir/Unity/unity_20_cxx.cxx
In file included from src/CMakeFiles/vt.dir/Unity/unity_20_cxx.cxx:6:
In file included from /vt/src/vt/scheduler/scheduler.cc:50:
In file included from /vt/src/vt/vrt/collection/manager.h:51:
In file included from /vt/src/vt/vrt/collection/messages/system_create.h:50:
In file included from /vt/src/vt/vrt/collection/types/headers.h:55:
In file included from /vt/src/vt/vrt/collection/types/base.h:51:
In file included from /vt/src/vt/vrt/collection/types/indexable.h:52:
In file included from /vt/src/vt/vrt/collection/types/migratable.h:54:
In file included from /vt/src/vt/vrt/collection/balance/col_lb_data.h:51:
In file included from /vt/src/vt/vrt/collection/balance/phase_msg.h:48:
In file included from /vt/src/vt/collective/reduce/reduce.h:386:
/vt/src/vt/collective/reduce/reduce.impl.h:131:69: error: explicit capture of 'this' with a capture default of '=' is a C++20 extension [-Werror,-Wc++20-extensions]
  return PendingSendType{theMsg()->getEpochContextMsg(msg_ptr), [=, this](){
                                                                    ^
In file included from src/CMakeFiles/vt.dir/Unity/unity_20_cxx.cxx:6:
In file included from /vt/src/vt/scheduler/scheduler.cc:50:
In file included from /vt/src/vt/vrt/collection/manager.h:68:
In file included from /vt/src/vt/topos/location/location_headers.h:48:
In file included from /vt/src/vt/topos/location/location.h:464:
/vt/src/vt/topos/location/location.impl.h:528:43: error: explicit capture of 'this' with a capture default of '=' is a C++20 extension [-Werror,-Wc++20-extensions]
    auto trigger_msg_handler_action = [=, this](EntityID const& hid) {
                                          ^
/vt/src/vt/topos/location/location.impl.h:593:42: error: explicit capture of 'this' with a capture default of '=' is a C++20 extension [-Werror,-Wc++20-extensions]
      insertPendingEntityAction(id_, [=, this](NodeType resolved) {
                                         ^
/vt/src/vt/topos/location/location.impl.h:715:36: error: explicit capture of 'this' with a capture default of '=' is a C++20 extens%0D%0A%0D%0A%0D%0A ==> And there is more. Read log. <==

Build log


PR tests (clang-10, ubuntu, mpich)

Build for a4212f8

FAILED: src/CMakeFiles/vt.dir/Unity/unity_20_cxx.cxx.o 
/usr/bin/ccache /usr/bin/clang++ -DJSON_USE_IMPLICIT_CONVERSIONS=1 -DVT_NO_COLOR_ENABLED -DVT_UBSAN_ENABLED -I/vt/lib/CLI -Irelease -I/vt/src -I/vt/lib/json/include -I/vt/lib/brotli/c/include -I/vt/lib/libfort/lib -isystem /vt/lib/fmt/include -isystem /vt/lib/EngFormat-Cpp/include -isystem /build/checkpoint/install/include -isystem /build/detector/install/include -O3 -DNDEBUG -Wall -pedantic -Wshadow -Wno-unknown-pragmas -Wsign-compare -ftemplate-backtrace-limit=100 -Werror -ftemplate-depth=900 -fsanitize=undefined -fno-omit-frame-pointer -fPIC -std=c++14 -MD -MT src/CMakeFiles/vt.dir/Unity/unity_20_cxx.cxx.o -MF src/CMakeFiles/vt.dir/Unity/unity_20_cxx.cxx.o.d -o src/CMakeFiles/vt.dir/Unity/unity_20_cxx.cxx.o -c src/CMakeFiles/vt.dir/Unity/unity_20_cxx.cxx
In file included from src/CMakeFiles/vt.dir/Unity/unity_20_cxx.cxx:6:
In file included from /vt/src/vt/scheduler/scheduler.cc:50:
In file included from /vt/src/vt/vrt/collection/manager.h:51:
In file included from /vt/src/vt/vrt/collection/messages/system_create.h:50:
In file included from /vt/src/vt/vrt/collection/types/headers.h:55:
In file included from /vt/src/vt/vrt/collection/types/base.h:51:
In file included from /vt/src/vt/vrt/collection/types/indexable.h:52:
In file included from /vt/src/vt/vrt/collection/types/migratable.h:54:
In file included from /vt/src/vt/vrt/collection/balance/col_lb_data.h:51:
In file included from /vt/src/vt/vrt/collection/balance/phase_msg.h:48:
In file included from /vt/src/vt/collective/reduce/reduce.h:386:
/vt/src/vt/collective/reduce/reduce.impl.h:131:69: error: explicit capture of 'this' with a capture default of '=' is a C++20 extension [-Werror,-Wc++20-extensions]
  return PendingSendType{theMsg()->getEpochContextMsg(msg_ptr), [=, this](){
                                                                    ^
In file included from src/CMakeFiles/vt.dir/Unity/unity_20_cxx.cxx:6:
In file included from /vt/src/vt/scheduler/scheduler.cc:50:
In file included from /vt/src/vt/vrt/collection/manager.h:68:
In file included from /vt/src/vt/topos/location/location_headers.h:48:
In file included from /vt/src/vt/topos/location/location.h:464:
/vt/src/vt/topos/location/location.impl.h:528:43: error: explicit capture of 'this' with a capture default of '=' is a C++20 extension [-Werror,-Wc++20-extensions]
    auto trigger_msg_handler_action = [=, this](EntityID const& hid) {
                                          ^
/vt/src/vt/topos/location/location.impl.h:593:42: error: explicit capture of 'this' with a capture default of '=' is a C++20 extension [-Werror,-Wc++20-extensions]
      insertPendingEntityAction(id_, [=, this](NodeType resolved) {
                                         ^
/vt/src/vt/topos/location/location.impl.h:715:36: error: explicit c%0D%0A%0D%0A%0D%0A ==> And there is more. Read log. <==

Build log


PR tests (gcc-11, ubuntu, mpich, json schema test)

Build for a4212f8

FAILED: src/CMakeFiles/vt.dir/Unity/unity_20_cxx.cxx.o 
/usr/bin/ccache /usr/bin/g++ -DJSON_USE_IMPLICIT_CONVERSIONS=1 -DVT_NO_COLOR_ENABLED -I/vt/lib/CLI -Irelease -I/vt/src -I/vt/lib/json/include -I/vt/lib/brotli/c/include -I/vt/lib/libfort/lib -isystem /vt/lib/fmt/include -isystem /vt/lib/EngFormat-Cpp/include -isystem /build/checkpoint/install/include -isystem /build/detector/install/include -O3 -DNDEBUG -Wall -pedantic -Wshadow -Wno-unknown-pragmas -Wsign-compare -ftemplate-backtrace-limit=100 -Werror -fPIC -std=c++14 -MD -MT src/CMakeFiles/vt.dir/Unity/unity_20_cxx.cxx.o -MF src/CMakeFiles/vt.dir/Unity/unity_20_cxx.cxx.o.d -o src/CMakeFiles/vt.dir/Unity/unity_20_cxx.cxx.o -c src/CMakeFiles/vt.dir/Unity/unity_20_cxx.cxx
In file included from /vt/src/vt/collective/reduce/reduce.h:386,
                 from /vt/src/vt/vrt/collection/balance/phase_msg.h:48,
                 from /vt/src/vt/vrt/collection/balance/col_lb_data.h:51,
                 from /vt/src/vt/vrt/collection/types/migratable.h:54,
                 from /vt/src/vt/vrt/collection/types/indexable.h:52,
                 from /vt/src/vt/vrt/collection/types/base.h:51,
                 from /vt/src/vt/vrt/collection/types/headers.h:55,
                 from /vt/src/vt/vrt/collection/messages/system_create.h:50,
                 from /vt/src/vt/vrt/collection/manager.h:51,
                 from /vt/src/vt/scheduler/scheduler.cc:50,
                 from src/CMakeFiles/vt.dir/Unity/unity_20_cxx.cxx:6:
/vt/src/vt/collective/reduce/reduce.impl.h: In member function 'vt::collective::reduce::Reduce::PendingSendType vt::collective::reduce::Reduce::reduce(vt::NodeType, MsgT*, vt::collective::reduce::detail::ReduceStamp, vt::collective::reduce::Reduce::ReduceNumType)':
/vt/src/vt/collective/reduce/reduce.impl.h:131:69: error: explicit by-copy capture of 'this' with by-copy capture default only available with '-std=c++20' or '-std=gnu++20' [-Werror]
  131 |   return PendingSendType{theMsg()->getEpochContextMsg(msg_ptr), [=, this](){
      |                                                                     ^~~~
In file included from /vt/src/vt/topos/location/location.h:464,
                 from /vt/src/vt/topos/location/location_headers.h:48,
                 from /vt/src/vt/vrt/collection/manager.h:68,
                 from /vt/src/vt/scheduler/scheduler.cc:50,
                 from src/CMakeFiles/vt.dir/Unity/unity_20_cxx.cxx:6:
/vt/src/vt/topos/location/location.impl.h: In member function 'void vt::location::EntityLocationCoord<EntityID>::routeMsgNode(bool, const EntityID&, const NodeType&, const NodeType&, vt::MsgSharedPtr<MsgT>)':
/vt/src/vt/topos/location/location.impl.h:528:43: error: explicit by-copy capture of 'this' with by-copy capture default only available with '-std=c++20' or '-std=gnu++20' [-Werror]
  528 |     auto trigger_msg_handl%0D%0A%0D%0A%0D%0A ==> And there is more. Read log. <==

Build log


PR tests (gcc-12, ubuntu, mpich)

Build for a4212f8

FAILED: src/CMakeFiles/vt.dir/Unity/unity_20_cxx.cxx.o 
/usr/bin/ccache /usr/lib/ccache/g++ -DJSON_USE_IMPLICIT_CONVERSIONS=1 -DVT_NO_COLOR_ENABLED -I/vt/lib/CLI -Irelease -I/vt/src -I/vt/lib/json/include -I/vt/lib/brotli/c/include -I/vt/lib/libfort/lib -isystem /vt/lib/fmt/include -isystem /vt/lib/EngFormat-Cpp/include -isystem /build/checkpoint/install/include -isystem /build/detector/install/include -O3 -DNDEBUG -Wall -pedantic -Wshadow -Wno-unknown-pragmas -Wsign-compare -ftemplate-backtrace-limit=100 -Werror -fPIC -std=c++14 -MD -MT src/CMakeFiles/vt.dir/Unity/unity_20_cxx.cxx.o -MF src/CMakeFiles/vt.dir/Unity/unity_20_cxx.cxx.o.d -o src/CMakeFiles/vt.dir/Unity/unity_20_cxx.cxx.o -c src/CMakeFiles/vt.dir/Unity/unity_20_cxx.cxx
In file included from /vt/src/vt/collective/reduce/reduce.h:386,
                 from /vt/src/vt/vrt/collection/balance/phase_msg.h:48,
                 from /vt/src/vt/vrt/collection/balance/col_lb_data.h:51,
                 from /vt/src/vt/vrt/collection/types/migratable.h:54,
                 from /vt/src/vt/vrt/collection/types/indexable.h:52,
                 from /vt/src/vt/vrt/collection/types/base.h:51,
                 from /vt/src/vt/vrt/collection/types/headers.h:55,
                 from /vt/src/vt/vrt/collection/messages/system_create.h:50,
                 from /vt/src/vt/vrt/collection/manager.h:51,
                 from /vt/src/vt/scheduler/scheduler.cc:50,
                 from src/CMakeFiles/vt.dir/Unity/unity_20_cxx.cxx:6:
/vt/src/vt/collective/reduce/reduce.impl.h: In member function 'vt::collective::reduce::Reduce::PendingSendType vt::collective::reduce::Reduce::reduce(vt::NodeType, MsgT*, vt::collective::reduce::detail::ReduceStamp, ReduceNumType)':
/vt/src/vt/collective/reduce/reduce.impl.h:131:69: error: explicit by-copy capture of 'this' with by-copy capture default only available with '-std=c++20' or '-std=gnu++20' [-Werror=c++20-extensions]
  131 |   return PendingSendType{theMsg()->getEpochContextMsg(msg_ptr), [=, this](){
      |                                                                     ^~~~
In file included from /vt/src/vt/topos/location/location.h:464,
                 from /vt/src/vt/topos/location/location_headers.h:48,
                 from /vt/src/vt/vrt/collection/manager.h:68:
/vt/src/vt/topos/location/location.impl.h: In member function 'void vt::location::EntityLocationCoord<EntityID>::routeMsgNode(bool, const EntityID&, const vt::NodeType&, const vt::NodeType&, vt::MsgSharedPtr<MsgT>)':
/vt/src/vt/topos/location/location.impl.h:528:43: error: explicit by-copy capture of 'this' with by-copy capture default only available with '-std=c++20' or '-std=gnu++20' [-Werror=c++20-extensions]
  528 |     auto trigger_msg_handler_action = [=, this](EntityID const& hid) {
      |                                           ^~~~
/vt/src/vt/to%0D%0A%0D%0A%0D%0A ==> And there is more. Read log. <==

Build log


PR tests (intel icpc, ubuntu, mpich)

Build for a4212f8

FAILED: src/CMakeFiles/vt.dir/Unity/unity_19_cxx.cxx.o 
/usr/bin/ccache /usr/local/bin/mpicxx -DJSON_USE_IMPLICIT_CONVERSIONS=1 -DVT_NO_COLOR_ENABLED -I/vt/lib/CLI -I/build/vt/release -I/vt/src -I/vt/lib/json/include -I/vt/lib/brotli/c/include -I/vt/lib/libfort/lib -isystem /vt/lib/fmt/include -isystem /vt/lib/EngFormat-Cpp/include -isystem /build/checkpoint/install/include -isystem /build/detector/install/include -O3 -DNDEBUG -Wall -pedantic -Wshadow -Wno-unknown-pragmas -Wsign-compare -Werror -fPIC -std=c++14 -MD -MT src/CMakeFiles/vt.dir/Unity/unity_19_cxx.cxx.o -MF src/CMakeFiles/vt.dir/Unity/unity_19_cxx.cxx.o.d -o src/CMakeFiles/vt.dir/Unity/unity_19_cxx.cxx.o -c /build/vt/src/CMakeFiles/vt.dir/Unity/unity_19_cxx.cxx
In file included from /build/vt/src/CMakeFiles/vt.dir/Unity/unity_19_cxx.cxx(3):
/vt/src/vt/runnable/runnable.cc(62): error #2471: explicit capture matches default
        task_ = [=, this] { objgroup::dispatchObjGroup(msg_, handler); };
                    ^

compilation aborted for /build/vt/src/CMakeFiles/vt.dir/Unity/unity_19_cxx.cxx (code 2)


Build log


PR tests (gcc-10, ubuntu, openmpi, no LB)

Build for 2375eda

Compilation - successful

Testing - passed

Build log


PR tests (intel icpx, ubuntu, mpich)

Build for a4212f8

FAILED: src/CMakeFiles/vt.dir/Unity/unity_19_cxx.cxx.o 
/usr/bin/ccache /usr/local/bin/mpicxx -DJSON_USE_IMPLICIT_CONVERSIONS=1 -DVT_NO_COLOR_ENABLED -I/vt/lib/CLI -I/build/vt/release -I/vt/src -I/vt/lib/json/include -I/vt/lib/brotli/c/include -I/vt/lib/libfort/lib -isystem /vt/lib/fmt/include -isystem /vt/lib/EngFormat-Cpp/include -isystem /build/checkpoint/install/include -isystem /build/detector/install/include -O3 -DNDEBUG -Wall -pedantic -Wshadow -Wno-unknown-pragmas -Wsign-compare -ftemplate-backtrace-limit=100 -Werror -fhonor-infinites -fhonor-nans -fPIC -std=c++14 -MD -MT src/CMakeFiles/vt.dir/Unity/unity_19_cxx.cxx.o -MF src/CMakeFiles/vt.dir/Unity/unity_19_cxx.cxx.o.d -o src/CMakeFiles/vt.dir/Unity/unity_19_cxx.cxx.o -c /build/vt/src/CMakeFiles/vt.dir/Unity/unity_19_cxx.cxx
In file included from /build/vt/src/CMakeFiles/vt.dir/Unity/unity_19_cxx.cxx:3:
In file included from /vt/src/vt/runnable/runnable.cc:45:
In file included from /vt/src/vt/objgroup/manager.h:469:
In file included from /vt/src/vt/objgroup/proxy/proxy_objgroup.impl.h:51:
In file included from /vt/src/vt/collective/collective_alg.h:173:
In file included from /vt/src/vt/collective/reduce/reduce_manager.impl.h:48:
In file included from /vt/src/vt/collective/reduce/reduce.h:386:
/vt/src/vt/collective/reduce/reduce.impl.h:131:69: error: explicit capture of 'this' with a capture default of '=' is a C++20 extension [-Werror,-Wc++20-extensions]
  return PendingSendType{theMsg()->getEpochContextMsg(msg_ptr), [=, this](){
                                                                    ^
In file included from /build/vt/src/CMakeFiles/vt.dir/Unity/unity_19_cxx.cxx:3:
In file included from /vt/src/vt/runnable/runnable.cc:45:
In file included from /vt/src/vt/objgroup/manager.h:469:
In file included from /vt/src/vt/objgroup/proxy/proxy_objgroup.impl.h:54:
In file included from /vt/src/vt/rdmahandle/manager.h:52:
In file included from /vt/src/vt/rdmahandle/holder.h:145:
/vt/src/vt/rdmahandle/holder.impl.h:153:15: error: explicit capture of 'this' with a capture default of '=' is a C++20 extension [-Werror,-Wc++20-extensions]
    r.add([=, this]{
              ^
/vt/src/vt/rdmahandle/holder.impl.h:191:15: error: explicit capture of 'this' with a capture default of '=' is a C++20 extension [-Werror,-Wc++20-extensions]
    r.add([=, this]{
              ^
/vt/src/vt/rdmahandle/holder.impl.h:248:15: error: explicit capture of 'this' with a capture default of '=' is a C++20 extension [-Werror,-Wc++20-extensions]
    r.add([=, this]{
              ^
In file included from /build/vt/src/CMakeFiles/vt.dir/Unity/unity_19_cxx.cxx:3:
/vt/src/vt/runnable/runnable.cc:62:19: error: explicit capture of 'this' with a capture default of '=' is a C++20 extension [-Werror,-Wc++20-extensions]
      task_ = [=, this] { objgroup::dis%0D%0A%0D%0A%0D%0A ==> And there is more. Read log. <==

Build log


PR tests (clang-9, ubuntu, mpich)

Build for a4212f8

In file included from src/CMakeFiles/vt.dir/Unity/unity_20_cxx.cxx:6:
In file included from /vt/src/vt/scheduler/scheduler.cc:50:
In file included from /vt/src/vt/vrt/collection/manager.h:51:
In file included from /vt/src/vt/vrt/collection/messages/system_create.h:50:
In file included from /vt/src/vt/vrt/collection/types/headers.h:55:
In file included from /vt/src/vt/vrt/collection/types/base.h:51:
In file included from /vt/src/vt/vrt/collection/types/indexable.h:52:
In file included from /vt/src/vt/vrt/collection/types/migratable.h:54:
In file included from /vt/src/vt/vrt/collection/balance/col_lb_data.h:51:
In file included from /vt/src/vt/vrt/collection/balance/phase_msg.h:48:
In file included from /vt/src/vt/collective/reduce/reduce.h:386:
/vt/src/vt/collective/reduce/reduce.impl.h:131:69: warning: explicit capture of 'this' with a capture default of '=' is a C++2a extension [-Wc++2a-extensions]
  return PendingSendType{theMsg()->getEpochContextMsg(msg_ptr), [=, this](){
                                                                    ^
In file included from src/CMakeFiles/vt.dir/Unity/unity_20_cxx.cxx:6:
In file included from /vt/src/vt/scheduler/scheduler.cc:50:
In file included from /vt/src/vt/vrt/collection/manager.h:68:
In file included from /vt/src/vt/topos/location/location_headers.h:48:
In file included from /vt/src/vt/topos/location/location.h:464:
/vt/src/vt/topos/location/location.impl.h:528:43: warning: explicit capture of 'this' with a capture default of '=' is a C++2a extension [-Wc++2a-extensions]
    auto trigger_msg_handler_action = [=, this](EntityID const& hid) {
                                          ^
/vt/src/vt/topos/location/location.impl.h:593:42: warning: explicit capture of 'this' with a capture default of '=' is a C++2a extension [-Wc++2a-extensions]
      insertPendingEntityAction(id_, [=, this](NodeType resolved) {
                                         ^
/vt/src/vt/topos/location/location.impl.h:715:36: warning: explicit capture of 'this' with a capture default of '=' is a C++2a extension [-Wc++2a-extensions]
    getLocation(id, home_node, [=, this](NodeType node) {
                                   ^
In file included from src/CMakeFiles/vt.dir/Unity/unity_20_cxx.cxx:6:
In file included from /vt/src/vt/scheduler/scheduler.cc:50:
In file included from /vt/src/vt/vrt/collection/manager.h:1874:
/vt/src/vt/vrt/collection/manager.impl.h:131:37: warning: explicit capture of 'this' with a capture default of '=' is a C++2a extension [-Wc++2a-extensions]
  cleanup_fns_[proxy].push_back([=, this]{
                                    ^
/vt/src/vt/vrt/collection/manager.impl.h:1836:16: warning: explicit capture of 'this' with a capture default of '=' is a C++2a extension [-Wc++2a-extensions]
  schedule([=, thi%0D%0A%0D%0A%0D%0A ==> And there is more. Read log. <==

Build log


PR tests (gcc-5, ubuntu, mpich)

Build for 2375eda

Compilation - successful

Testing - passed

Build log


PR tests (gcc-9, ubuntu, mpich, zoltan)

Build for 2375eda

Compilation - successful

Testing - passed

Build log


@PhilMiller
Copy link
Member

Lol at those compiler errors

@nmm0
Copy link
Collaborator Author

nmm0 commented Sep 22, 2022

Lol at those compiler errors

🤦 maybe I should have tested with C++14.... well I guess I'm going to have to find another way. Maybe the least gross way will be to just do explicit capture for everything, no default capture

@PhilMiller
Copy link
Member

Lol at those compiler errors

🤦 maybe I should have tested with C++14.... well I guess I'm going to have to find another way. Maybe the least gross way will be to just do explicit capture for everything, no default capture

Or wait a bit, and we can fold in "require C++17" with the changes to adapt to it. EMPIRE will be able to accept that in the next few weeks, BVH is already there as I understand it, and I can check on our other app.

@nmm0
Copy link
Collaborator Author

nmm0 commented Sep 22, 2022

Lol at those compiler errors

facepalm maybe I should have tested with C++14.... well I guess I'm going to have to find another way. Maybe the least gross way will be to just do explicit capture for everything, no default capture

Or wait a bit, and we can fold in "require C++17" with the changes to adapt to it. EMPIRE will be able to accept that in the next few weeks, BVH is already there as I understand it, and I can check on our other app.

Yeah that is my bad, I was getting the C++20 flag from Kokkos. I forgot implicit this is deprecated in 20, not 17. I'll remove it from the PR

@PhilMiller
Copy link
Member

Incidentally, you're "I'll revert that" are a good argument for committing distinct changes separately - it would be really easy to just rebase to put the iterator change we're keeping first, push that on this branch, and push the rest on a C++20 branch.

We'll want to figure out how to write code that's happy compiled as C++17 or C++20 starting once we require 17.

@nmm0 nmm0 force-pushed the 1974-address-c++17-deprecations branch from a4212f8 to 2375eda Compare September 23, 2022 00:11
@nmm0
Copy link
Collaborator Author

nmm0 commented Sep 23, 2022

Incidentally, you're "I'll revert that" are a good argument for committing distinct changes separately - it would be really easy to just rebase to put the iterator change we're keeping first, push that on this branch, and push the rest on a C++20 branch.

We'll want to figure out how to write code that's happy compiled as C++17 or C++20 starting once we require 17.

Split into two commits, made a third one for implicit this on the C++20 deprecations branch: https://github.com/DARMA-tasking/vt/tree/1976-address-cpp20-deprecations

@nmm0
Copy link
Collaborator Author

nmm0 commented Sep 23, 2022

This PR is broken because our checking scripts don't allow '+' in the name of the branch. New PR: #1978

@nmm0 nmm0 closed this Sep 23, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

address C++17 deprecations
2 participants