* installing *source* package ‘PCMBaseCpp’ ...
** this is package ‘PCMBaseCpp’ version ‘0.1.11’
** package ‘PCMBaseCpp’ successfully unpacked and MD5 sums checked
** using staged installation
** libs
using C++ compiler: ‘g++ (GCC) 15.1.1 20250521 (Red Hat 15.1.1-2)’
make[1]: Entering directory '/data/gannet/ripley/R/packages/tests-devel/PCMBaseCpp/src'
g++ -std=gnu++20 -I"/data/gannet/ripley/R/R-devel/include" -DNDEBUG -I'/data/gannet/ripley/R/test-dev/Rcpp/include' -I'/data/gannet/ripley/R/test-dev/RcppArmadillo/include' -I/usr/local/include -DARMA_DONT_USE_OPENMP -fpic -g -O2 -Wall -pedantic -mtune=native -Wno-ignored-attributes -Wno-parentheses -Wp,-D_FORTIFY_SOURCE=3 -fexceptions -fstack-protector-strong -fstack-clash-protection -fcf-protection -c Rcpp.cpp -o Rcpp.o
In file included from QuadraticPoly.h:27,
from QuadraticPolyWhite.h:28,
from Rcpp.cpp:30:
SPLITT.h:2054: warning: ignoring ‘#pragma omp simd’ [-Wunknown-pragmas]
2054 | _PRAGMA_OMP_SIMD
SPLITT.h:2072: warning: ignoring ‘#pragma omp simd’ [-Wunknown-pragmas]
2072 | _PRAGMA_OMP_SIMD
SPLITT.h:2085: warning: ignoring ‘#pragma omp simd’ [-Wunknown-pragmas]
2085 | _PRAGMA_OMP_SIMD
SPLITT.h:2097: warning: ignoring ‘#pragma omp simd’ [-Wunknown-pragmas]
2097 | _PRAGMA_OMP_SIMD
SPLITT.h:2107: warning: ignoring ‘#pragma omp simd’ [-Wunknown-pragmas]
2107 | _PRAGMA_OMP_SIMD
SPLITT.h:2133: warning: ignoring ‘#pragma omp parallel’ [-Wunknown-pragmas]
2133 | #pragma omp parallel
SPLITT.h:2135: warning: ignoring ‘#pragma omp for’ [-Wunknown-pragmas]
2135 | _PRAGMA_OMP_FOR_SIMD
SPLITT.h:2146: warning: ignoring ‘#pragma omp barrier’ [-Wunknown-pragmas]
2146 | #pragma omp barrier
SPLITT.h:2149: warning: ignoring ‘#pragma omp for’ [-Wunknown-pragmas]
2149 | _PRAGMA_OMP_FOR_SIMD
SPLITT.h:2160: warning: ignoring ‘#pragma omp barrier’ [-Wunknown-pragmas]
2160 | #pragma omp barrier
SPLITT.h:2163: warning: ignoring ‘#pragma omp for’ [-Wunknown-pragmas]
2163 | _PRAGMA_OMP_FOR_SIMD
SPLITT.h:2179: warning: ignoring ‘#pragma omp parallel’ [-Wunknown-pragmas]
2179 | #pragma omp parallel
SPLITT.h:2188: warning: ignoring ‘#pragma omp for’ [-Wunknown-pragmas]
2188 | _PRAGMA_OMP_FOR_SIMD
SPLITT.h:2198: warning: ignoring ‘#pragma omp for’ [-Wunknown-pragmas]
2198 | _PRAGMA_OMP_FOR_SIMD
SPLITT.h:2224: warning: ignoring ‘#pragma omp parallel’ [-Wunknown-pragmas]
2224 | #pragma omp parallel
SPLITT.h:2264: warning: ignoring ‘#pragma omp parallel’ [-Wunknown-pragmas]
2264 | #pragma omp parallel
SPLITT.h:2266: warning: ignoring ‘#pragma omp for’ [-Wunknown-pragmas]
2266 | _PRAGMA_OMP_FOR_SIMD
SPLITT.h:2277: warning: ignoring ‘#pragma omp for’ [-Wunknown-pragmas]
2277 | _PRAGMA_OMP_FOR_SIMD
SPLITT.h:2291: warning: ignoring ‘#pragma omp parallel’ [-Wunknown-pragmas]
2291 | #pragma omp parallel
SPLITT.h:2293: warning: ignoring ‘#pragma omp for’ [-Wunknown-pragmas]
2293 | _PRAGMA_OMP_FOR_SIMD
SPLITT.h:2301: warning: ignoring ‘#pragma omp for’ [-Wunknown-pragmas]
2301 | _PRAGMA_OMP_FOR_SIMD
SPLITT.h:2312: warning: ignoring ‘#pragma omp parallel’ [-Wunknown-pragmas]
2312 | #pragma omp parallel
SPLITT.h:2321: warning: ignoring ‘#pragma omp for’ [-Wunknown-pragmas]
2321 | _PRAGMA_OMP_FOR_SIMD
SPLITT.h:2332: warning: ignoring ‘#pragma omp barrier’ [-Wunknown-pragmas]
2332 | #pragma omp barrier
SPLITT.h:2335: warning: ignoring ‘#pragma omp for’ [-Wunknown-pragmas]
2335 | _PRAGMA_OMP_FOR_SIMD
SPLITT.h:2344: warning: ignoring ‘#pragma omp simd’ [-Wunknown-pragmas]
2344 | _PRAGMA_OMP_SIMD
SPLITT.h:2358: warning: ignoring ‘#pragma omp simd’ [-Wunknown-pragmas]
2358 | _PRAGMA_OMP_SIMD
SPLITT.h:2376: warning: ignoring ‘#pragma omp parallel’ [-Wunknown-pragmas]
2376 | #pragma omp parallel
SPLITT.h:2385: warning: ignoring ‘#pragma omp for’ [-Wunknown-pragmas]
2385 | _PRAGMA_OMP_FOR_SIMD
SPLITT.h:2396: warning: ignoring ‘#pragma omp barrier’ [-Wunknown-pragmas]
2396 | #pragma omp barrier
SPLITT.h:2399: warning: ignoring ‘#pragma omp for’ [-Wunknown-pragmas]
2399 | _PRAGMA_OMP_FOR_SIMD
SPLITT.h:2409: warning: ignoring ‘#pragma omp simd’ [-Wunknown-pragmas]
2409 | _PRAGMA_OMP_SIMD
SPLITT.h:2424: warning: ignoring ‘#pragma omp parallel’ [-Wunknown-pragmas]
2424 | #pragma omp parallel
SPLITT.h:2433: warning: ignoring ‘#pragma omp for’ [-Wunknown-pragmas]
2433 | _PRAGMA_OMP_FOR_SIMD
SPLITT.h:2443: warning: ignoring ‘#pragma omp barrier’ [-Wunknown-pragmas]
2443 | #pragma omp barrier
SPLITT.h:2446: warning: ignoring ‘#pragma omp for’ [-Wunknown-pragmas]
2446 | _PRAGMA_OMP_FOR_SIMD
SPLITT.h:2464: warning: ignoring ‘#pragma omp simd’ [-Wunknown-pragmas]
2464 | _PRAGMA_OMP_SIMD
SPLITT.h:2608: warning: ignoring ‘#pragma omp simd’ [-Wunknown-pragmas]
2608 | _PRAGMA_OMP_SIMD
SPLITT.h:2622: warning: ignoring ‘#pragma omp simd’ [-Wunknown-pragmas]
2622 | _PRAGMA_OMP_SIMD
SPLITT.h:2631: warning: ignoring ‘#pragma omp simd’ [-Wunknown-pragmas]
2631 | _PRAGMA_OMP_SIMD
SPLITT.h:2639: warning: ignoring ‘#pragma omp parallel’ [-Wunknown-pragmas]
2639 | #pragma omp parallel
SPLITT.h:2648: warning: ignoring ‘#pragma omp for’ [-Wunknown-pragmas]
2648 | _PRAGMA_OMP_FOR_SIMD
SPLITT.h:2657: warning: ignoring ‘#pragma omp for’ [-Wunknown-pragmas]
2657 | _PRAGMA_OMP_FOR_SIMD
QuadraticPoly.h: In instantiation of ‘bool PCMBaseCpp::IsDiagonal(const MatType&) [with MatType = arma::Mat<double>]’:
QuadraticPoly.h:94:16: required from ‘void PCMBaseCpp::DecomposeH(MatEigvalType&, CubeEigvecType&, CubeEigvecType&, const CubeHType&, arma::uword, double) [with MatEigvalType = arma::Mat<std::complex<double> >; CubeEigvecType = arma::Cube<std::complex<double> >; CubeHType = arma::Cube<double>; arma::uword = unsigned int]’
94 | if(IsDiagonal(H.slice(r))) {
| ~~~~~~~~~~^~~~~~~~~~~~
QuadraticPolyOU.h:152:17: required from ‘arma::uword PCMBaseCpp::CondGaussianOU<TreeType, DataType>::SetParameter(const std::vector<double>&, arma::uword) [with TreeType = SPLITT::OrderedTree<unsigned int, PCMBaseCpp::LengthAndRegime>; DataType = PCMBaseCpp::NumericTraitData<unsigned int>; arma::uword = unsigned int]’
152 | DecomposeH(lambda, P, P_1, H, r, threshold_SV_);
| ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyOU.h:203:28: required from here
203 | cond_dist_.SetParameter(par, 0);
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
QuadraticPoly.h:47:20: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const arma::uword’ {aka ‘const unsigned int’} [-Wsign-compare]
47 | for(int i = 0; i < X.n_rows; ++i) {
| ~~^~~~~~~~~~
QuadraticPoly.h:48:26: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const arma::uword’ {aka ‘const unsigned int’} [-Wsign-compare]
48 | for(int j = i + 1; j < X.n_cols; ++j) {
| ~~^~~~~~~~~~
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeSingleThreadLoopPostorder() [with TraversalSpecification = PCMBaseCpp::White]’:
SPLITT.h:1926:50: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::White; ModeType = SPLITT::PostOrderMode]’
1926 | case ModeType::SINGLE_THREAD_LOOP_POSTORDER: TraverseTreeSingleThreadLoopPostorder(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::White; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::White; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:265:53: required from here
265 | .method( "TraverseTree", &QuadraticPolyWhite::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2056:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2056 | exception_handler_.Run([=]{
| ^~~~
2057 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2058 | });
| ~
SPLITT.h:2056:30: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2063:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2063 | exception_handler_.Run([=]{
| ^~~~
2064 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2065 | ParentType::ref_spec_.PruneNode(i, ParentType::ref_tree_.FindIdOfParent(i));
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2066 | });
| ~
SPLITT.h:2063:30: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeSingleThreadLoopPrunes() [with TraversalSpecification = PCMBaseCpp::White]’:
SPLITT.h:1927:47: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::White; ModeType = SPLITT::PostOrderMode]’
1927 | case ModeType::SINGLE_THREAD_LOOP_PRUNES: TraverseTreeSingleThreadLoopPrunes(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::White; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::White; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:265:53: required from here
265 | .method( "TraverseTree", &QuadraticPolyWhite::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2074:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2074 | exception_handler_.Run([=]{
| ^~~~
2075 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2076 | });
| ~
SPLITT.h:2074:30: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2087:32: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2087 | exception_handler_.Run([=]{
| ^~~~
2088 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2089 | ParentType::ref_spec_.PruneNode(i, ParentType::ref_tree_.FindIdOfParent(i));
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2090 | });
| ~
SPLITT.h:2087:32: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeSingleThreadLoopVisits() [with TraversalSpecification = PCMBaseCpp::White]’:
SPLITT.h:1928:47: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::White; ModeType = SPLITT::PostOrderMode]’
1928 | case ModeType::SINGLE_THREAD_LOOP_VISITS: TraverseTreeSingleThreadLoopVisits(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::White; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::White; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:265:53: required from here
265 | .method( "TraverseTree", &QuadraticPolyWhite::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2099:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2099 | exception_handler_.Run([=]{
| ^~~~
2100 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2101 | });
| ~
SPLITT.h:2099:30: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2109:32: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2109 | exception_handler_.Run([=]{
| ^~~~
2110 | if(i < ParentType::ref_tree_.num_tips()) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2111 | // i is a tip (only Visit)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~
2112 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2113 | } else {
| ~~~~~~~~
2114 | // i is internal
| ~~~~~~~~~~~~~~~~
2115 | for(uint j: ParentType::ref_tree_.FindChildren(i)) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2116 | ParentType::ref_spec_.PruneNode(j, i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2117 | }
| ~
2118 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2119 | }
| ~
2120 | });
| ~
SPLITT.h:2109:32: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeMultiThreadLoopPrunes() [with TraversalSpecification = PCMBaseCpp::White]’:
SPLITT.h:1929:46: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::White; ModeType = SPLITT::PostOrderMode]’
1929 | case ModeType::MULTI_THREAD_LOOP_PRUNES: TraverseTreeMultiThreadLoopPrunes(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::White; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::White; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:265:53: required from here
265 | .method( "TraverseTree", &QuadraticPolyWhite::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2268:28: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2268 | exception_handler_.Run([=]{
| ^~~~
2269 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2270 | });
| ~
SPLITT.h:2268:28: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2279:32: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2279 | exception_handler_.Run([=]{
| ^~~~
2280 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2281 | ParentType::ref_spec_.PruneNode(i, ParentType::ref_tree_.FindIdOfParent(i));
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2282 | });
| ~
SPLITT.h:2279:32: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeMultiThreadLoopVisitsThenLoopPrunes() [with TraversalSpecification = PCMBaseCpp::White]’:
SPLITT.h:1930:63: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::White; ModeType = SPLITT::PostOrderMode]’
1930 | case ModeType::MULTI_THREAD_LOOP_VISITS_THEN_LOOP_PRUNES: TraverseTreeMultiThreadLoopVisitsThenLoopPrunes(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::White; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::White; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:265:53: required from here
265 | .method( "TraverseTree", &QuadraticPolyWhite::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2137:28: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2137 | exception_handler_.Run([=]{
| ^~~~
2138 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2139 | });
| ~
SPLITT.h:2137:28: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2151:32: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2151 | exception_handler_.Run([=]{
| ^~~~
2152 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2153 | });
| ~
SPLITT.h:2151:32: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2165:34: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2165 | exception_handler_.Run([=]{
| ^~~~
2166 | ParentType::ref_spec_.PruneNode(i, ParentType::ref_tree_.FindIdOfParent(i));
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2167 | });
| ~
SPLITT.h:2165:34: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeMultiThreadLoopVisits() [with TraversalSpecification = PCMBaseCpp::White]’:
SPLITT.h:1931:46: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::White; ModeType = SPLITT::PostOrderMode]’
1931 | case ModeType::MULTI_THREAD_LOOP_VISITS: TraverseTreeMultiThreadLoopVisits(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::White; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::White; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:265:53: required from here
265 | .method( "TraverseTree", &QuadraticPolyWhite::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2190:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2190 | exception_handler_.Run([=]{
| ^~~~
2191 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2192 | });
| ~
SPLITT.h:2190:30: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2200:32: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2200 | exception_handler_.Run([=]{
| ^~~~
2201 | if(i < ParentType::ref_tree_.num_tips()) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2202 | // i is a tip (only Visit)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~
2203 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2204 | } else {
| ~~~~~~~~
2205 | // i is internal
| ~~~~~~~~~~~~~~~~
2206 | for(uint j: ParentType::ref_tree_.FindChildren(i)) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2207 | ParentType::ref_spec_.PruneNode(j, i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2208 | }
| ~
2209 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2210 | }
| ~
2211 | });
| ~
SPLITT.h:2200:32: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2181:8: warning: variable ‘tid’ set but not used [-Wunused-but-set-variable]
2181 | uint tid;
| ^~~
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeMultiThreadVisitQueue() [with TraversalSpecification = PCMBaseCpp::White]’:
SPLITT.h:1932:46: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::White; ModeType = SPLITT::PostOrderMode]’
1932 | case ModeType::MULTI_THREAD_VISIT_QUEUE: TraverseTreeMultiThreadVisitQueue(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::White; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::White; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:265:53: required from here
265 | .method( "TraverseTree", &QuadraticPolyWhite::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2226:26: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2226 | exception_handler_.Run([=]{
| ^~~~
2227 | while(true) {
| ~~~~~~~~~~~~~
2228 | uint i = ParentType::visit_queue_.NextInQueue();
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2229 | if(i == G_NA_UINT) {
| ~~~~~~~~~~~~~~~~~~~~
2230 | continue;
| ~~~~~~~~~
2231 | } else if(i == ParentType::ref_tree_.num_nodes()) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2232 | break;
| ~~~~~~
2233 | } else if(i < ParentType::ref_tree_.num_tips()) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2234 | // i is a tip (only Visit)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~
2235 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2236 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2237 | ParentType::visit_queue_.RemoveVisitedNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2238 | } else if(i < ParentType::ref_tree_.num_nodes() - 1){
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2239 | // i is internal
| ~~~~~~~~~~~~~~~~
2240 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2241 | uvec const& children = ParentType::ref_tree_.FindChildren(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2242 | for(uint j: children) {
| ~~~~~~~~~~~~~~~~~~~~~~~
2243 | ParentType::ref_spec_.PruneNode(j, i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2244 | }
| ~
2245 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2246 | ParentType::visit_queue_.RemoveVisitedNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2247 | } else {
| ~~~~~~~~
2248 | // i is the root
| ~~~~~~~~~~~~~~~~
2249 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2250 | uvec const& children = ParentType::ref_tree_.FindChildren(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2251 | for(uint j: children) {
| ~~~~~~~~~~~~~~~~~~~~~~~
2252 | ParentType::ref_spec_.PruneNode(j, i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2253 | }
| ~
2254 | // don't visit the root
| ~~~~~~~~~~~~~~~~~~~~~~~
2255 | }
| ~
2256 | }
| ~
2257 | });
| ~
SPLITT.h:2226:26: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeHybridLoopPrunes() [with TraversalSpecification = PCMBaseCpp::White]’:
SPLITT.h:1934:40: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::White; ModeType = SPLITT::PostOrderMode]’
1934 | case ModeType::HYBRID_LOOP_PRUNES: TraverseTreeHybridLoopPrunes(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::White; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::White; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:265:53: required from here
265 | .method( "TraverseTree", &QuadraticPolyWhite::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2387:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2387 | exception_handler_.Run([=]{
| ^~~~
2388 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2389 | });
| ~
SPLITT.h:2387:30: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2401:34: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2401 | exception_handler_.Run([=]{
| ^~~~
2402 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2403 | ParentType::ref_spec_.PruneNode(i, ParentType::ref_tree_.FindIdOfParent(i));
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2404 | });
| ~
SPLITT.h:2401:34: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2411:34: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2411 | exception_handler_.Run([=]{
| ^~~~
2412 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2413 | ParentType::ref_spec_.PruneNode(i, ParentType::ref_tree_.FindIdOfParent(i));
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2414 | });
| ~
SPLITT.h:2411:34: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeHybridLoopVisitsThenLoopPrunes() [with TraversalSpecification = PCMBaseCpp::White]’:
SPLITT.h:1935:57: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::White; ModeType = SPLITT::PostOrderMode]’
1935 | case ModeType::HYBRID_LOOP_VISITS_THEN_LOOP_PRUNES: TraverseTreeHybridLoopVisitsThenLoopPrunes(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::White; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::White; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:265:53: required from here
265 | .method( "TraverseTree", &QuadraticPolyWhite::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2323:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2323 | exception_handler_.Run([=]{
| ^~~~
2324 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2325 | });
| ~
SPLITT.h:2323:30: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2337:34: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2337 | exception_handler_.Run([=]{
| ^~~~
2338 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2339 | });
| ~
SPLITT.h:2337:34: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2346:32: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2346 | exception_handler_.Run([=]{
| ^~~~
2347 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2348 | });
| ~
SPLITT.h:2346:32: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2360:36: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2360 | exception_handler_.Run([=]{
| ^~~~
2361 | ParentType::ref_spec_.PruneNode(i, ParentType::ref_tree_.FindIdOfParent(i));
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2362 | });
| ~
SPLITT.h:2360:36: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeHybridLoopVisits() [with TraversalSpecification = PCMBaseCpp::White]’:
SPLITT.h:1936:40: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::White; ModeType = SPLITT::PostOrderMode]’
1936 | case ModeType::HYBRID_LOOP_VISITS: TraverseTreeHybridLoopVisits(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::White; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::White; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:265:53: required from here
265 | .method( "TraverseTree", &QuadraticPolyWhite::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2435:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2435 | exception_handler_.Run([=]{
| ^~~~
2436 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2437 | });
| ~
SPLITT.h:2435:30: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2448:32: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2448 | exception_handler_.Run([=]{
| ^~~~
2449 | if(i < ParentType::ref_tree_.num_tips()) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2450 | // i is a tip (only Visit)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~
2451 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2452 | } else if(i < ParentType::ref_tree_.num_nodes() - 1){
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2453 | // i is internal
| ~~~~~~~~~~~~~~~~
2454 | for(uint j: ParentType::ref_tree_.FindChildren(i)) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2455 | ParentType::ref_spec_.PruneNode(j, i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2456 | }
| ~
2457 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2458 | }
| ~
2459 | });
| ~
SPLITT.h:2448:32: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2466:32: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2466 | exception_handler_.Run([=]{
| ^~~~
2467 | if(i < ParentType::ref_tree_.num_tips()) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2468 | // i is a tip (only Visit)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~
2469 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2470 | } else if(i < ParentType::ref_tree_.num_nodes() - 1){
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2471 | // i is internal
| ~~~~~~~~~~~~~~~~
2472 | for(uint j: ParentType::ref_tree_.FindChildren(i)) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2473 | ParentType::ref_spec_.PruneNode(j, i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2474 | }
| ~
2475 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2476 | }
| ~
2477 | });
| ~
SPLITT.h:2466:32: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2485:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2485 | exception_handler_.Run([=]{
| ^~~~
2486 | ParentType::ref_spec_.PruneNode(j, ParentType::ref_tree_.num_nodes() - 1);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2487 | });
| ~
SPLITT.h:2485:30: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeSingleThreadLoopPostorder() [with TraversalSpecification = PCMBaseCpp::BM]’:
SPLITT.h:1926:50: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::BM; ModeType = SPLITT::PostOrderMode]’
1926 | case ModeType::SINGLE_THREAD_LOOP_POSTORDER: TraverseTreeSingleThreadLoopPostorder(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::BM; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::BM; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:335:48: required from here
335 | .method( "TraverseTree", &QuadraticPolyBM::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2056:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2056 | exception_handler_.Run([=]{
| ^~~~
2057 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2058 | });
| ~
SPLITT.h:2056:30: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2063:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2063 | exception_handler_.Run([=]{
| ^~~~
2064 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2065 | ParentType::ref_spec_.PruneNode(i, ParentType::ref_tree_.FindIdOfParent(i));
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2066 | });
| ~
SPLITT.h:2063:30: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeSingleThreadLoopPrunes() [with TraversalSpecification = PCMBaseCpp::BM]’:
SPLITT.h:1927:47: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::BM; ModeType = SPLITT::PostOrderMode]’
1927 | case ModeType::SINGLE_THREAD_LOOP_PRUNES: TraverseTreeSingleThreadLoopPrunes(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::BM; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::BM; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:335:48: required from here
335 | .method( "TraverseTree", &QuadraticPolyBM::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2074:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2074 | exception_handler_.Run([=]{
| ^~~~
2075 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2076 | });
| ~
SPLITT.h:2074:30: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2087:32: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2087 | exception_handler_.Run([=]{
| ^~~~
2088 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2089 | ParentType::ref_spec_.PruneNode(i, ParentType::ref_tree_.FindIdOfParent(i));
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2090 | });
| ~
SPLITT.h:2087:32: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeSingleThreadLoopVisits() [with TraversalSpecification = PCMBaseCpp::BM]’:
SPLITT.h:1928:47: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::BM; ModeType = SPLITT::PostOrderMode]’
1928 | case ModeType::SINGLE_THREAD_LOOP_VISITS: TraverseTreeSingleThreadLoopVisits(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::BM; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::BM; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:335:48: required from here
335 | .method( "TraverseTree", &QuadraticPolyBM::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2099:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2099 | exception_handler_.Run([=]{
| ^~~~
2100 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2101 | });
| ~
SPLITT.h:2099:30: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2109:32: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2109 | exception_handler_.Run([=]{
| ^~~~
2110 | if(i < ParentType::ref_tree_.num_tips()) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2111 | // i is a tip (only Visit)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~
2112 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2113 | } else {
| ~~~~~~~~
2114 | // i is internal
| ~~~~~~~~~~~~~~~~
2115 | for(uint j: ParentType::ref_tree_.FindChildren(i)) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2116 | ParentType::ref_spec_.PruneNode(j, i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2117 | }
| ~
2118 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2119 | }
| ~
2120 | });
| ~
SPLITT.h:2109:32: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeMultiThreadLoopPrunes() [with TraversalSpecification = PCMBaseCpp::BM]’:
SPLITT.h:1929:46: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::BM; ModeType = SPLITT::PostOrderMode]’
1929 | case ModeType::MULTI_THREAD_LOOP_PRUNES: TraverseTreeMultiThreadLoopPrunes(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::BM; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::BM; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:335:48: required from here
335 | .method( "TraverseTree", &QuadraticPolyBM::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2268:28: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2268 | exception_handler_.Run([=]{
| ^~~~
2269 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2270 | });
| ~
SPLITT.h:2268:28: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2279:32: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2279 | exception_handler_.Run([=]{
| ^~~~
2280 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2281 | ParentType::ref_spec_.PruneNode(i, ParentType::ref_tree_.FindIdOfParent(i));
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2282 | });
| ~
SPLITT.h:2279:32: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeMultiThreadLoopVisitsThenLoopPrunes() [with TraversalSpecification = PCMBaseCpp::BM]’:
SPLITT.h:1930:63: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::BM; ModeType = SPLITT::PostOrderMode]’
1930 | case ModeType::MULTI_THREAD_LOOP_VISITS_THEN_LOOP_PRUNES: TraverseTreeMultiThreadLoopVisitsThenLoopPrunes(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::BM; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::BM; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:335:48: required from here
335 | .method( "TraverseTree", &QuadraticPolyBM::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2137:28: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2137 | exception_handler_.Run([=]{
| ^~~~
2138 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2139 | });
| ~
SPLITT.h:2137:28: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2151:32: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2151 | exception_handler_.Run([=]{
| ^~~~
2152 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2153 | });
| ~
SPLITT.h:2151:32: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2165:34: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2165 | exception_handler_.Run([=]{
| ^~~~
2166 | ParentType::ref_spec_.PruneNode(i, ParentType::ref_tree_.FindIdOfParent(i));
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2167 | });
| ~
SPLITT.h:2165:34: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeMultiThreadLoopVisits() [with TraversalSpecification = PCMBaseCpp::BM]’:
SPLITT.h:1931:46: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::BM; ModeType = SPLITT::PostOrderMode]’
1931 | case ModeType::MULTI_THREAD_LOOP_VISITS: TraverseTreeMultiThreadLoopVisits(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::BM; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::BM; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:335:48: required from here
335 | .method( "TraverseTree", &QuadraticPolyBM::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2190:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2190 | exception_handler_.Run([=]{
| ^~~~
2191 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2192 | });
| ~
SPLITT.h:2190:30: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2200:32: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2200 | exception_handler_.Run([=]{
| ^~~~
2201 | if(i < ParentType::ref_tree_.num_tips()) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2202 | // i is a tip (only Visit)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~
2203 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2204 | } else {
| ~~~~~~~~
2205 | // i is internal
| ~~~~~~~~~~~~~~~~
2206 | for(uint j: ParentType::ref_tree_.FindChildren(i)) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2207 | ParentType::ref_spec_.PruneNode(j, i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2208 | }
| ~
2209 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2210 | }
| ~
2211 | });
| ~
SPLITT.h:2200:32: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2181:8: warning: variable ‘tid’ set but not used [-Wunused-but-set-variable]
2181 | uint tid;
| ^~~
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeMultiThreadVisitQueue() [with TraversalSpecification = PCMBaseCpp::BM]’:
SPLITT.h:1932:46: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::BM; ModeType = SPLITT::PostOrderMode]’
1932 | case ModeType::MULTI_THREAD_VISIT_QUEUE: TraverseTreeMultiThreadVisitQueue(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::BM; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::BM; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:335:48: required from here
335 | .method( "TraverseTree", &QuadraticPolyBM::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2226:26: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2226 | exception_handler_.Run([=]{
| ^~~~
2227 | while(true) {
| ~~~~~~~~~~~~~
2228 | uint i = ParentType::visit_queue_.NextInQueue();
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2229 | if(i == G_NA_UINT) {
| ~~~~~~~~~~~~~~~~~~~~
2230 | continue;
| ~~~~~~~~~
2231 | } else if(i == ParentType::ref_tree_.num_nodes()) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2232 | break;
| ~~~~~~
2233 | } else if(i < ParentType::ref_tree_.num_tips()) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2234 | // i is a tip (only Visit)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~
2235 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2236 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2237 | ParentType::visit_queue_.RemoveVisitedNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2238 | } else if(i < ParentType::ref_tree_.num_nodes() - 1){
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2239 | // i is internal
| ~~~~~~~~~~~~~~~~
2240 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2241 | uvec const& children = ParentType::ref_tree_.FindChildren(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2242 | for(uint j: children) {
| ~~~~~~~~~~~~~~~~~~~~~~~
2243 | ParentType::ref_spec_.PruneNode(j, i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2244 | }
| ~
2245 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2246 | ParentType::visit_queue_.RemoveVisitedNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2247 | } else {
| ~~~~~~~~
2248 | // i is the root
| ~~~~~~~~~~~~~~~~
2249 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2250 | uvec const& children = ParentType::ref_tree_.FindChildren(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2251 | for(uint j: children) {
| ~~~~~~~~~~~~~~~~~~~~~~~
2252 | ParentType::ref_spec_.PruneNode(j, i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2253 | }
| ~
2254 | // don't visit the root
| ~~~~~~~~~~~~~~~~~~~~~~~
2255 | }
| ~
2256 | }
| ~
2257 | });
| ~
SPLITT.h:2226:26: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeHybridLoopPrunes() [with TraversalSpecification = PCMBaseCpp::BM]’:
SPLITT.h:1934:40: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::BM; ModeType = SPLITT::PostOrderMode]’
1934 | case ModeType::HYBRID_LOOP_PRUNES: TraverseTreeHybridLoopPrunes(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::BM; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::BM; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:335:48: required from here
335 | .method( "TraverseTree", &QuadraticPolyBM::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2387:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2387 | exception_handler_.Run([=]{
| ^~~~
2388 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2389 | });
| ~
SPLITT.h:2387:30: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2401:34: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2401 | exception_handler_.Run([=]{
| ^~~~
2402 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2403 | ParentType::ref_spec_.PruneNode(i, ParentType::ref_tree_.FindIdOfParent(i));
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2404 | });
| ~
SPLITT.h:2401:34: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2411:34: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2411 | exception_handler_.Run([=]{
| ^~~~
2412 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2413 | ParentType::ref_spec_.PruneNode(i, ParentType::ref_tree_.FindIdOfParent(i));
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2414 | });
| ~
SPLITT.h:2411:34: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeHybridLoopVisitsThenLoopPrunes() [with TraversalSpecification = PCMBaseCpp::BM]’:
SPLITT.h:1935:57: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::BM; ModeType = SPLITT::PostOrderMode]’
1935 | case ModeType::HYBRID_LOOP_VISITS_THEN_LOOP_PRUNES: TraverseTreeHybridLoopVisitsThenLoopPrunes(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::BM; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::BM; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:335:48: required from here
335 | .method( "TraverseTree", &QuadraticPolyBM::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2323:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2323 | exception_handler_.Run([=]{
| ^~~~
2324 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2325 | });
| ~
SPLITT.h:2323:30: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2337:34: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2337 | exception_handler_.Run([=]{
| ^~~~
2338 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2339 | });
| ~
SPLITT.h:2337:34: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2346:32: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2346 | exception_handler_.Run([=]{
| ^~~~
2347 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2348 | });
| ~
SPLITT.h:2346:32: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2360:36: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2360 | exception_handler_.Run([=]{
| ^~~~
2361 | ParentType::ref_spec_.PruneNode(i, ParentType::ref_tree_.FindIdOfParent(i));
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2362 | });
| ~
SPLITT.h:2360:36: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeHybridLoopVisits() [with TraversalSpecification = PCMBaseCpp::BM]’:
SPLITT.h:1936:40: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::BM; ModeType = SPLITT::PostOrderMode]’
1936 | case ModeType::HYBRID_LOOP_VISITS: TraverseTreeHybridLoopVisits(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::BM; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::BM; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:335:48: required from here
335 | .method( "TraverseTree", &QuadraticPolyBM::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2435:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2435 | exception_handler_.Run([=]{
| ^~~~
2436 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2437 | });
| ~
SPLITT.h:2435:30: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2448:32: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2448 | exception_handler_.Run([=]{
| ^~~~
2449 | if(i < ParentType::ref_tree_.num_tips()) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2450 | // i is a tip (only Visit)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~
2451 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2452 | } else if(i < ParentType::ref_tree_.num_nodes() - 1){
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2453 | // i is internal
| ~~~~~~~~~~~~~~~~
2454 | for(uint j: ParentType::ref_tree_.FindChildren(i)) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2455 | ParentType::ref_spec_.PruneNode(j, i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2456 | }
| ~
2457 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2458 | }
| ~
2459 | });
| ~
SPLITT.h:2448:32: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2466:32: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2466 | exception_handler_.Run([=]{
| ^~~~
2467 | if(i < ParentType::ref_tree_.num_tips()) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2468 | // i is a tip (only Visit)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~
2469 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2470 | } else if(i < ParentType::ref_tree_.num_nodes() - 1){
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2471 | // i is internal
| ~~~~~~~~~~~~~~~~
2472 | for(uint j: ParentType::ref_tree_.FindChildren(i)) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2473 | ParentType::ref_spec_.PruneNode(j, i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2474 | }
| ~
2475 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2476 | }
| ~
2477 | });
| ~
SPLITT.h:2466:32: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2485:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2485 | exception_handler_.Run([=]{
| ^~~~
2486 | ParentType::ref_spec_.PruneNode(j, ParentType::ref_tree_.num_nodes() - 1);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2487 | });
| ~
SPLITT.h:2485:30: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeSingleThreadLoopPostorder() [with TraversalSpecification = PCMBaseCpp::BM1D]’:
SPLITT.h:1926:50: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::BM1D; ModeType = SPLITT::PostOrderMode]’
1926 | case ModeType::SINGLE_THREAD_LOOP_POSTORDER: TraverseTreeSingleThreadLoopPostorder(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::BM1D; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::BM1D; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:407:52: required from here
407 | .method( "TraverseTree", &QuadraticPolyBM1D::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2056:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2056 | exception_handler_.Run([=]{
| ^~~~
2057 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2058 | });
| ~
SPLITT.h:2056:30: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2063:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2063 | exception_handler_.Run([=]{
| ^~~~
2064 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2065 | ParentType::ref_spec_.PruneNode(i, ParentType::ref_tree_.FindIdOfParent(i));
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2066 | });
| ~
SPLITT.h:2063:30: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeSingleThreadLoopPrunes() [with TraversalSpecification = PCMBaseCpp::BM1D]’:
SPLITT.h:1927:47: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::BM1D; ModeType = SPLITT::PostOrderMode]’
1927 | case ModeType::SINGLE_THREAD_LOOP_PRUNES: TraverseTreeSingleThreadLoopPrunes(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::BM1D; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::BM1D; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:407:52: required from here
407 | .method( "TraverseTree", &QuadraticPolyBM1D::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2074:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2074 | exception_handler_.Run([=]{
| ^~~~
2075 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2076 | });
| ~
SPLITT.h:2074:30: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2087:32: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2087 | exception_handler_.Run([=]{
| ^~~~
2088 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2089 | ParentType::ref_spec_.PruneNode(i, ParentType::ref_tree_.FindIdOfParent(i));
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2090 | });
| ~
SPLITT.h:2087:32: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeSingleThreadLoopVisits() [with TraversalSpecification = PCMBaseCpp::BM1D]’:
SPLITT.h:1928:47: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::BM1D; ModeType = SPLITT::PostOrderMode]’
1928 | case ModeType::SINGLE_THREAD_LOOP_VISITS: TraverseTreeSingleThreadLoopVisits(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::BM1D; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::BM1D; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:407:52: required from here
407 | .method( "TraverseTree", &QuadraticPolyBM1D::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2099:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2099 | exception_handler_.Run([=]{
| ^~~~
2100 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2101 | });
| ~
SPLITT.h:2099:30: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2109:32: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2109 | exception_handler_.Run([=]{
| ^~~~
2110 | if(i < ParentType::ref_tree_.num_tips()) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2111 | // i is a tip (only Visit)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~
2112 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2113 | } else {
| ~~~~~~~~
2114 | // i is internal
| ~~~~~~~~~~~~~~~~
2115 | for(uint j: ParentType::ref_tree_.FindChildren(i)) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2116 | ParentType::ref_spec_.PruneNode(j, i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2117 | }
| ~
2118 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2119 | }
| ~
2120 | });
| ~
SPLITT.h:2109:32: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeMultiThreadLoopPrunes() [with TraversalSpecification = PCMBaseCpp::BM1D]’:
SPLITT.h:1929:46: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::BM1D; ModeType = SPLITT::PostOrderMode]’
1929 | case ModeType::MULTI_THREAD_LOOP_PRUNES: TraverseTreeMultiThreadLoopPrunes(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::BM1D; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::BM1D; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:407:52: required from here
407 | .method( "TraverseTree", &QuadraticPolyBM1D::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2268:28: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2268 | exception_handler_.Run([=]{
| ^~~~
2269 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2270 | });
| ~
SPLITT.h:2268:28: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2279:32: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2279 | exception_handler_.Run([=]{
| ^~~~
2280 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2281 | ParentType::ref_spec_.PruneNode(i, ParentType::ref_tree_.FindIdOfParent(i));
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2282 | });
| ~
SPLITT.h:2279:32: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeMultiThreadLoopVisitsThenLoopPrunes() [with TraversalSpecification = PCMBaseCpp::BM1D]’:
SPLITT.h:1930:63: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::BM1D; ModeType = SPLITT::PostOrderMode]’
1930 | case ModeType::MULTI_THREAD_LOOP_VISITS_THEN_LOOP_PRUNES: TraverseTreeMultiThreadLoopVisitsThenLoopPrunes(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::BM1D; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::BM1D; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:407:52: required from here
407 | .method( "TraverseTree", &QuadraticPolyBM1D::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2137:28: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2137 | exception_handler_.Run([=]{
| ^~~~
2138 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2139 | });
| ~
SPLITT.h:2137:28: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2151:32: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2151 | exception_handler_.Run([=]{
| ^~~~
2152 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2153 | });
| ~
SPLITT.h:2151:32: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2165:34: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2165 | exception_handler_.Run([=]{
| ^~~~
2166 | ParentType::ref_spec_.PruneNode(i, ParentType::ref_tree_.FindIdOfParent(i));
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2167 | });
| ~
SPLITT.h:2165:34: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeMultiThreadLoopVisits() [with TraversalSpecification = PCMBaseCpp::BM1D]’:
SPLITT.h:1931:46: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::BM1D; ModeType = SPLITT::PostOrderMode]’
1931 | case ModeType::MULTI_THREAD_LOOP_VISITS: TraverseTreeMultiThreadLoopVisits(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::BM1D; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::BM1D; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:407:52: required from here
407 | .method( "TraverseTree", &QuadraticPolyBM1D::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2190:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2190 | exception_handler_.Run([=]{
| ^~~~
2191 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2192 | });
| ~
SPLITT.h:2190:30: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2200:32: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2200 | exception_handler_.Run([=]{
| ^~~~
2201 | if(i < ParentType::ref_tree_.num_tips()) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2202 | // i is a tip (only Visit)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~
2203 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2204 | } else {
| ~~~~~~~~
2205 | // i is internal
| ~~~~~~~~~~~~~~~~
2206 | for(uint j: ParentType::ref_tree_.FindChildren(i)) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2207 | ParentType::ref_spec_.PruneNode(j, i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2208 | }
| ~
2209 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2210 | }
| ~
2211 | });
| ~
SPLITT.h:2200:32: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2181:8: warning: variable ‘tid’ set but not used [-Wunused-but-set-variable]
2181 | uint tid;
| ^~~
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeMultiThreadVisitQueue() [with TraversalSpecification = PCMBaseCpp::BM1D]’:
SPLITT.h:1932:46: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::BM1D; ModeType = SPLITT::PostOrderMode]’
1932 | case ModeType::MULTI_THREAD_VISIT_QUEUE: TraverseTreeMultiThreadVisitQueue(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::BM1D; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::BM1D; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:407:52: required from here
407 | .method( "TraverseTree", &QuadraticPolyBM1D::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2226:26: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2226 | exception_handler_.Run([=]{
| ^~~~
2227 | while(true) {
| ~~~~~~~~~~~~~
2228 | uint i = ParentType::visit_queue_.NextInQueue();
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2229 | if(i == G_NA_UINT) {
| ~~~~~~~~~~~~~~~~~~~~
2230 | continue;
| ~~~~~~~~~
2231 | } else if(i == ParentType::ref_tree_.num_nodes()) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2232 | break;
| ~~~~~~
2233 | } else if(i < ParentType::ref_tree_.num_tips()) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2234 | // i is a tip (only Visit)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~
2235 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2236 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2237 | ParentType::visit_queue_.RemoveVisitedNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2238 | } else if(i < ParentType::ref_tree_.num_nodes() - 1){
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2239 | // i is internal
| ~~~~~~~~~~~~~~~~
2240 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2241 | uvec const& children = ParentType::ref_tree_.FindChildren(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2242 | for(uint j: children) {
| ~~~~~~~~~~~~~~~~~~~~~~~
2243 | ParentType::ref_spec_.PruneNode(j, i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2244 | }
| ~
2245 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2246 | ParentType::visit_queue_.RemoveVisitedNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2247 | } else {
| ~~~~~~~~
2248 | // i is the root
| ~~~~~~~~~~~~~~~~
2249 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2250 | uvec const& children = ParentType::ref_tree_.FindChildren(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2251 | for(uint j: children) {
| ~~~~~~~~~~~~~~~~~~~~~~~
2252 | ParentType::ref_spec_.PruneNode(j, i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2253 | }
| ~
2254 | // don't visit the root
| ~~~~~~~~~~~~~~~~~~~~~~~
2255 | }
| ~
2256 | }
| ~
2257 | });
| ~
SPLITT.h:2226:26: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeHybridLoopPrunes() [with TraversalSpecification = PCMBaseCpp::BM1D]’:
SPLITT.h:1934:40: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::BM1D; ModeType = SPLITT::PostOrderMode]’
1934 | case ModeType::HYBRID_LOOP_PRUNES: TraverseTreeHybridLoopPrunes(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::BM1D; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::BM1D; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:407:52: required from here
407 | .method( "TraverseTree", &QuadraticPolyBM1D::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2387:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2387 | exception_handler_.Run([=]{
| ^~~~
2388 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2389 | });
| ~
SPLITT.h:2387:30: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2401:34: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2401 | exception_handler_.Run([=]{
| ^~~~
2402 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2403 | ParentType::ref_spec_.PruneNode(i, ParentType::ref_tree_.FindIdOfParent(i));
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2404 | });
| ~
SPLITT.h:2401:34: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2411:34: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2411 | exception_handler_.Run([=]{
| ^~~~
2412 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2413 | ParentType::ref_spec_.PruneNode(i, ParentType::ref_tree_.FindIdOfParent(i));
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2414 | });
| ~
SPLITT.h:2411:34: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeHybridLoopVisitsThenLoopPrunes() [with TraversalSpecification = PCMBaseCpp::BM1D]’:
SPLITT.h:1935:57: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::BM1D; ModeType = SPLITT::PostOrderMode]’
1935 | case ModeType::HYBRID_LOOP_VISITS_THEN_LOOP_PRUNES: TraverseTreeHybridLoopVisitsThenLoopPrunes(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::BM1D; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::BM1D; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:407:52: required from here
407 | .method( "TraverseTree", &QuadraticPolyBM1D::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2323:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2323 | exception_handler_.Run([=]{
| ^~~~
2324 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2325 | });
| ~
SPLITT.h:2323:30: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2337:34: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2337 | exception_handler_.Run([=]{
| ^~~~
2338 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2339 | });
| ~
SPLITT.h:2337:34: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2346:32: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2346 | exception_handler_.Run([=]{
| ^~~~
2347 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2348 | });
| ~
SPLITT.h:2346:32: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2360:36: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2360 | exception_handler_.Run([=]{
| ^~~~
2361 | ParentType::ref_spec_.PruneNode(i, ParentType::ref_tree_.FindIdOfParent(i));
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2362 | });
| ~
SPLITT.h:2360:36: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeHybridLoopVisits() [with TraversalSpecification = PCMBaseCpp::BM1D]’:
SPLITT.h:1936:40: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::BM1D; ModeType = SPLITT::PostOrderMode]’
1936 | case ModeType::HYBRID_LOOP_VISITS: TraverseTreeHybridLoopVisits(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::BM1D; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::BM1D; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:407:52: required from here
407 | .method( "TraverseTree", &QuadraticPolyBM1D::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2435:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2435 | exception_handler_.Run([=]{
| ^~~~
2436 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2437 | });
| ~
SPLITT.h:2435:30: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2448:32: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2448 | exception_handler_.Run([=]{
| ^~~~
2449 | if(i < ParentType::ref_tree_.num_tips()) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2450 | // i is a tip (only Visit)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~
2451 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2452 | } else if(i < ParentType::ref_tree_.num_nodes() - 1){
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2453 | // i is internal
| ~~~~~~~~~~~~~~~~
2454 | for(uint j: ParentType::ref_tree_.FindChildren(i)) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2455 | ParentType::ref_spec_.PruneNode(j, i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2456 | }
| ~
2457 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2458 | }
| ~
2459 | });
| ~
SPLITT.h:2448:32: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2466:32: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2466 | exception_handler_.Run([=]{
| ^~~~
2467 | if(i < ParentType::ref_tree_.num_tips()) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2468 | // i is a tip (only Visit)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~
2469 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2470 | } else if(i < ParentType::ref_tree_.num_nodes() - 1){
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2471 | // i is internal
| ~~~~~~~~~~~~~~~~
2472 | for(uint j: ParentType::ref_tree_.FindChildren(i)) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2473 | ParentType::ref_spec_.PruneNode(j, i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2474 | }
| ~
2475 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2476 | }
| ~
2477 | });
| ~
SPLITT.h:2466:32: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2485:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2485 | exception_handler_.Run([=]{
| ^~~~
2486 | ParentType::ref_spec_.PruneNode(j, ParentType::ref_tree_.num_nodes() - 1);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2487 | });
| ~
SPLITT.h:2485:30: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeSingleThreadLoopPostorder() [with TraversalSpecification = PCMBaseCpp::OU]’:
SPLITT.h:1926:50: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::OU; ModeType = SPLITT::PostOrderMode]’
1926 | case ModeType::SINGLE_THREAD_LOOP_POSTORDER: TraverseTreeSingleThreadLoopPostorder(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::OU; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::OU; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:477:48: required from here
477 | .method( "TraverseTree", &QuadraticPolyOU::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2056:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2056 | exception_handler_.Run([=]{
| ^~~~
2057 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2058 | });
| ~
SPLITT.h:2056:30: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2063:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2063 | exception_handler_.Run([=]{
| ^~~~
2064 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2065 | ParentType::ref_spec_.PruneNode(i, ParentType::ref_tree_.FindIdOfParent(i));
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2066 | });
| ~
SPLITT.h:2063:30: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeSingleThreadLoopPrunes() [with TraversalSpecification = PCMBaseCpp::OU]’:
SPLITT.h:1927:47: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::OU; ModeType = SPLITT::PostOrderMode]’
1927 | case ModeType::SINGLE_THREAD_LOOP_PRUNES: TraverseTreeSingleThreadLoopPrunes(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::OU; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::OU; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:477:48: required from here
477 | .method( "TraverseTree", &QuadraticPolyOU::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2074:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2074 | exception_handler_.Run([=]{
| ^~~~
2075 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2076 | });
| ~
SPLITT.h:2074:30: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2087:32: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2087 | exception_handler_.Run([=]{
| ^~~~
2088 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2089 | ParentType::ref_spec_.PruneNode(i, ParentType::ref_tree_.FindIdOfParent(i));
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2090 | });
| ~
SPLITT.h:2087:32: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeSingleThreadLoopVisits() [with TraversalSpecification = PCMBaseCpp::OU]’:
SPLITT.h:1928:47: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::OU; ModeType = SPLITT::PostOrderMode]’
1928 | case ModeType::SINGLE_THREAD_LOOP_VISITS: TraverseTreeSingleThreadLoopVisits(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::OU; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::OU; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:477:48: required from here
477 | .method( "TraverseTree", &QuadraticPolyOU::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2099:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2099 | exception_handler_.Run([=]{
| ^~~~
2100 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2101 | });
| ~
SPLITT.h:2099:30: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2109:32: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2109 | exception_handler_.Run([=]{
| ^~~~
2110 | if(i < ParentType::ref_tree_.num_tips()) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2111 | // i is a tip (only Visit)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~
2112 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2113 | } else {
| ~~~~~~~~
2114 | // i is internal
| ~~~~~~~~~~~~~~~~
2115 | for(uint j: ParentType::ref_tree_.FindChildren(i)) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2116 | ParentType::ref_spec_.PruneNode(j, i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2117 | }
| ~
2118 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2119 | }
| ~
2120 | });
| ~
SPLITT.h:2109:32: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeMultiThreadLoopPrunes() [with TraversalSpecification = PCMBaseCpp::OU]’:
SPLITT.h:1929:46: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::OU; ModeType = SPLITT::PostOrderMode]’
1929 | case ModeType::MULTI_THREAD_LOOP_PRUNES: TraverseTreeMultiThreadLoopPrunes(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::OU; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::OU; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:477:48: required from here
477 | .method( "TraverseTree", &QuadraticPolyOU::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2268:28: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2268 | exception_handler_.Run([=]{
| ^~~~
2269 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2270 | });
| ~
SPLITT.h:2268:28: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2279:32: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2279 | exception_handler_.Run([=]{
| ^~~~
2280 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2281 | ParentType::ref_spec_.PruneNode(i, ParentType::ref_tree_.FindIdOfParent(i));
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2282 | });
| ~
SPLITT.h:2279:32: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeMultiThreadLoopVisitsThenLoopPrunes() [with TraversalSpecification = PCMBaseCpp::OU]’:
SPLITT.h:1930:63: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::OU; ModeType = SPLITT::PostOrderMode]’
1930 | case ModeType::MULTI_THREAD_LOOP_VISITS_THEN_LOOP_PRUNES: TraverseTreeMultiThreadLoopVisitsThenLoopPrunes(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::OU; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::OU; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:477:48: required from here
477 | .method( "TraverseTree", &QuadraticPolyOU::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2137:28: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2137 | exception_handler_.Run([=]{
| ^~~~
2138 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2139 | });
| ~
SPLITT.h:2137:28: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2151:32: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2151 | exception_handler_.Run([=]{
| ^~~~
2152 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2153 | });
| ~
SPLITT.h:2151:32: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2165:34: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2165 | exception_handler_.Run([=]{
| ^~~~
2166 | ParentType::ref_spec_.PruneNode(i, ParentType::ref_tree_.FindIdOfParent(i));
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2167 | });
| ~
SPLITT.h:2165:34: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeMultiThreadLoopVisits() [with TraversalSpecification = PCMBaseCpp::OU]’:
SPLITT.h:1931:46: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::OU; ModeType = SPLITT::PostOrderMode]’
1931 | case ModeType::MULTI_THREAD_LOOP_VISITS: TraverseTreeMultiThreadLoopVisits(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::OU; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::OU; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:477:48: required from here
477 | .method( "TraverseTree", &QuadraticPolyOU::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2190:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2190 | exception_handler_.Run([=]{
| ^~~~
2191 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2192 | });
| ~
SPLITT.h:2190:30: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2200:32: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2200 | exception_handler_.Run([=]{
| ^~~~
2201 | if(i < ParentType::ref_tree_.num_tips()) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2202 | // i is a tip (only Visit)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~
2203 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2204 | } else {
| ~~~~~~~~
2205 | // i is internal
| ~~~~~~~~~~~~~~~~
2206 | for(uint j: ParentType::ref_tree_.FindChildren(i)) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2207 | ParentType::ref_spec_.PruneNode(j, i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2208 | }
| ~
2209 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2210 | }
| ~
2211 | });
| ~
SPLITT.h:2200:32: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2181:8: warning: variable ‘tid’ set but not used [-Wunused-but-set-variable]
2181 | uint tid;
| ^~~
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeMultiThreadVisitQueue() [with TraversalSpecification = PCMBaseCpp::OU]’:
SPLITT.h:1932:46: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::OU; ModeType = SPLITT::PostOrderMode]’
1932 | case ModeType::MULTI_THREAD_VISIT_QUEUE: TraverseTreeMultiThreadVisitQueue(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::OU; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::OU; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:477:48: required from here
477 | .method( "TraverseTree", &QuadraticPolyOU::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2226:26: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2226 | exception_handler_.Run([=]{
| ^~~~
2227 | while(true) {
| ~~~~~~~~~~~~~
2228 | uint i = ParentType::visit_queue_.NextInQueue();
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2229 | if(i == G_NA_UINT) {
| ~~~~~~~~~~~~~~~~~~~~
2230 | continue;
| ~~~~~~~~~
2231 | } else if(i == ParentType::ref_tree_.num_nodes()) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2232 | break;
| ~~~~~~
2233 | } else if(i < ParentType::ref_tree_.num_tips()) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2234 | // i is a tip (only Visit)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~
2235 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2236 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2237 | ParentType::visit_queue_.RemoveVisitedNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2238 | } else if(i < ParentType::ref_tree_.num_nodes() - 1){
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2239 | // i is internal
| ~~~~~~~~~~~~~~~~
2240 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2241 | uvec const& children = ParentType::ref_tree_.FindChildren(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2242 | for(uint j: children) {
| ~~~~~~~~~~~~~~~~~~~~~~~
2243 | ParentType::ref_spec_.PruneNode(j, i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2244 | }
| ~
2245 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2246 | ParentType::visit_queue_.RemoveVisitedNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2247 | } else {
| ~~~~~~~~
2248 | // i is the root
| ~~~~~~~~~~~~~~~~
2249 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2250 | uvec const& children = ParentType::ref_tree_.FindChildren(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2251 | for(uint j: children) {
| ~~~~~~~~~~~~~~~~~~~~~~~
2252 | ParentType::ref_spec_.PruneNode(j, i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2253 | }
| ~
2254 | // don't visit the root
| ~~~~~~~~~~~~~~~~~~~~~~~
2255 | }
| ~
2256 | }
| ~
2257 | });
| ~
SPLITT.h:2226:26: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeHybridLoopPrunes() [with TraversalSpecification = PCMBaseCpp::OU]’:
SPLITT.h:1934:40: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::OU; ModeType = SPLITT::PostOrderMode]’
1934 | case ModeType::HYBRID_LOOP_PRUNES: TraverseTreeHybridLoopPrunes(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::OU; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::OU; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:477:48: required from here
477 | .method( "TraverseTree", &QuadraticPolyOU::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2387:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2387 | exception_handler_.Run([=]{
| ^~~~
2388 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2389 | });
| ~
SPLITT.h:2387:30: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2401:34: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2401 | exception_handler_.Run([=]{
| ^~~~
2402 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2403 | ParentType::ref_spec_.PruneNode(i, ParentType::ref_tree_.FindIdOfParent(i));
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2404 | });
| ~
SPLITT.h:2401:34: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2411:34: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2411 | exception_handler_.Run([=]{
| ^~~~
2412 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2413 | ParentType::ref_spec_.PruneNode(i, ParentType::ref_tree_.FindIdOfParent(i));
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2414 | });
| ~
SPLITT.h:2411:34: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeHybridLoopVisitsThenLoopPrunes() [with TraversalSpecification = PCMBaseCpp::OU]’:
SPLITT.h:1935:57: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::OU; ModeType = SPLITT::PostOrderMode]’
1935 | case ModeType::HYBRID_LOOP_VISITS_THEN_LOOP_PRUNES: TraverseTreeHybridLoopVisitsThenLoopPrunes(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::OU; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::OU; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:477:48: required from here
477 | .method( "TraverseTree", &QuadraticPolyOU::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2323:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2323 | exception_handler_.Run([=]{
| ^~~~
2324 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2325 | });
| ~
SPLITT.h:2323:30: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2337:34: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2337 | exception_handler_.Run([=]{
| ^~~~
2338 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2339 | });
| ~
SPLITT.h:2337:34: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2346:32: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2346 | exception_handler_.Run([=]{
| ^~~~
2347 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2348 | });
| ~
SPLITT.h:2346:32: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2360:36: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2360 | exception_handler_.Run([=]{
| ^~~~
2361 | ParentType::ref_spec_.PruneNode(i, ParentType::ref_tree_.FindIdOfParent(i));
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2362 | });
| ~
SPLITT.h:2360:36: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeHybridLoopVisits() [with TraversalSpecification = PCMBaseCpp::OU]’:
SPLITT.h:1936:40: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::OU; ModeType = SPLITT::PostOrderMode]’
1936 | case ModeType::HYBRID_LOOP_VISITS: TraverseTreeHybridLoopVisits(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::OU; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::OU; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:477:48: required from here
477 | .method( "TraverseTree", &QuadraticPolyOU::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2435:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2435 | exception_handler_.Run([=]{
| ^~~~
2436 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2437 | });
| ~
SPLITT.h:2435:30: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2448:32: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2448 | exception_handler_.Run([=]{
| ^~~~
2449 | if(i < ParentType::ref_tree_.num_tips()) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2450 | // i is a tip (only Visit)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~
2451 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2452 | } else if(i < ParentType::ref_tree_.num_nodes() - 1){
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2453 | // i is internal
| ~~~~~~~~~~~~~~~~
2454 | for(uint j: ParentType::ref_tree_.FindChildren(i)) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2455 | ParentType::ref_spec_.PruneNode(j, i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2456 | }
| ~
2457 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2458 | }
| ~
2459 | });
| ~
SPLITT.h:2448:32: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2466:32: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2466 | exception_handler_.Run([=]{
| ^~~~
2467 | if(i < ParentType::ref_tree_.num_tips()) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2468 | // i is a tip (only Visit)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~
2469 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2470 | } else if(i < ParentType::ref_tree_.num_nodes() - 1){
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2471 | // i is internal
| ~~~~~~~~~~~~~~~~
2472 | for(uint j: ParentType::ref_tree_.FindChildren(i)) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2473 | ParentType::ref_spec_.PruneNode(j, i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2474 | }
| ~
2475 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2476 | }
| ~
2477 | });
| ~
SPLITT.h:2466:32: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2485:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2485 | exception_handler_.Run([=]{
| ^~~~
2486 | ParentType::ref_spec_.PruneNode(j, ParentType::ref_tree_.num_nodes() - 1);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2487 | });
| ~
SPLITT.h:2485:30: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeSingleThreadLoopPostorder() [with TraversalSpecification = PCMBaseCpp::OU1D]’:
SPLITT.h:1926:50: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::OU1D; ModeType = SPLITT::PostOrderMode]’
1926 | case ModeType::SINGLE_THREAD_LOOP_POSTORDER: TraverseTreeSingleThreadLoopPostorder(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::OU1D; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::OU1D; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:546:52: required from here
546 | .method( "TraverseTree", &QuadraticPolyOU1D::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2056:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2056 | exception_handler_.Run([=]{
| ^~~~
2057 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2058 | });
| ~
SPLITT.h:2056:30: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2063:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2063 | exception_handler_.Run([=]{
| ^~~~
2064 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2065 | ParentType::ref_spec_.PruneNode(i, ParentType::ref_tree_.FindIdOfParent(i));
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2066 | });
| ~
SPLITT.h:2063:30: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeSingleThreadLoopPrunes() [with TraversalSpecification = PCMBaseCpp::OU1D]’:
SPLITT.h:1927:47: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::OU1D; ModeType = SPLITT::PostOrderMode]’
1927 | case ModeType::SINGLE_THREAD_LOOP_PRUNES: TraverseTreeSingleThreadLoopPrunes(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::OU1D; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::OU1D; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:546:52: required from here
546 | .method( "TraverseTree", &QuadraticPolyOU1D::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2074:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2074 | exception_handler_.Run([=]{
| ^~~~
2075 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2076 | });
| ~
SPLITT.h:2074:30: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2087:32: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2087 | exception_handler_.Run([=]{
| ^~~~
2088 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2089 | ParentType::ref_spec_.PruneNode(i, ParentType::ref_tree_.FindIdOfParent(i));
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2090 | });
| ~
SPLITT.h:2087:32: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeSingleThreadLoopVisits() [with TraversalSpecification = PCMBaseCpp::OU1D]’:
SPLITT.h:1928:47: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::OU1D; ModeType = SPLITT::PostOrderMode]’
1928 | case ModeType::SINGLE_THREAD_LOOP_VISITS: TraverseTreeSingleThreadLoopVisits(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::OU1D; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::OU1D; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:546:52: required from here
546 | .method( "TraverseTree", &QuadraticPolyOU1D::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2099:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2099 | exception_handler_.Run([=]{
| ^~~~
2100 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2101 | });
| ~
SPLITT.h:2099:30: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2109:32: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2109 | exception_handler_.Run([=]{
| ^~~~
2110 | if(i < ParentType::ref_tree_.num_tips()) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2111 | // i is a tip (only Visit)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~
2112 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2113 | } else {
| ~~~~~~~~
2114 | // i is internal
| ~~~~~~~~~~~~~~~~
2115 | for(uint j: ParentType::ref_tree_.FindChildren(i)) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2116 | ParentType::ref_spec_.PruneNode(j, i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2117 | }
| ~
2118 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2119 | }
| ~
2120 | });
| ~
SPLITT.h:2109:32: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeMultiThreadLoopPrunes() [with TraversalSpecification = PCMBaseCpp::OU1D]’:
SPLITT.h:1929:46: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::OU1D; ModeType = SPLITT::PostOrderMode]’
1929 | case ModeType::MULTI_THREAD_LOOP_PRUNES: TraverseTreeMultiThreadLoopPrunes(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::OU1D; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::OU1D; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:546:52: required from here
546 | .method( "TraverseTree", &QuadraticPolyOU1D::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2268:28: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2268 | exception_handler_.Run([=]{
| ^~~~
2269 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2270 | });
| ~
SPLITT.h:2268:28: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2279:32: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2279 | exception_handler_.Run([=]{
| ^~~~
2280 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2281 | ParentType::ref_spec_.PruneNode(i, ParentType::ref_tree_.FindIdOfParent(i));
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2282 | });
| ~
SPLITT.h:2279:32: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeMultiThreadLoopVisitsThenLoopPrunes() [with TraversalSpecification = PCMBaseCpp::OU1D]’:
SPLITT.h:1930:63: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::OU1D; ModeType = SPLITT::PostOrderMode]’
1930 | case ModeType::MULTI_THREAD_LOOP_VISITS_THEN_LOOP_PRUNES: TraverseTreeMultiThreadLoopVisitsThenLoopPrunes(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::OU1D; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::OU1D; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:546:52: required from here
546 | .method( "TraverseTree", &QuadraticPolyOU1D::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2137:28: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2137 | exception_handler_.Run([=]{
| ^~~~
2138 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2139 | });
| ~
SPLITT.h:2137:28: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2151:32: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2151 | exception_handler_.Run([=]{
| ^~~~
2152 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2153 | });
| ~
SPLITT.h:2151:32: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2165:34: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2165 | exception_handler_.Run([=]{
| ^~~~
2166 | ParentType::ref_spec_.PruneNode(i, ParentType::ref_tree_.FindIdOfParent(i));
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2167 | });
| ~
SPLITT.h:2165:34: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeMultiThreadLoopVisits() [with TraversalSpecification = PCMBaseCpp::OU1D]’:
SPLITT.h:1931:46: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::OU1D; ModeType = SPLITT::PostOrderMode]’
1931 | case ModeType::MULTI_THREAD_LOOP_VISITS: TraverseTreeMultiThreadLoopVisits(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::OU1D; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::OU1D; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:546:52: required from here
546 | .method( "TraverseTree", &QuadraticPolyOU1D::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2190:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2190 | exception_handler_.Run([=]{
| ^~~~
2191 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2192 | });
| ~
SPLITT.h:2190:30: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2200:32: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2200 | exception_handler_.Run([=]{
| ^~~~
2201 | if(i < ParentType::ref_tree_.num_tips()) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2202 | // i is a tip (only Visit)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~
2203 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2204 | } else {
| ~~~~~~~~
2205 | // i is internal
| ~~~~~~~~~~~~~~~~
2206 | for(uint j: ParentType::ref_tree_.FindChildren(i)) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2207 | ParentType::ref_spec_.PruneNode(j, i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2208 | }
| ~
2209 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2210 | }
| ~
2211 | });
| ~
SPLITT.h:2200:32: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2181:8: warning: variable ‘tid’ set but not used [-Wunused-but-set-variable]
2181 | uint tid;
| ^~~
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeMultiThreadVisitQueue() [with TraversalSpecification = PCMBaseCpp::OU1D]’:
SPLITT.h:1932:46: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::OU1D; ModeType = SPLITT::PostOrderMode]’
1932 | case ModeType::MULTI_THREAD_VISIT_QUEUE: TraverseTreeMultiThreadVisitQueue(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::OU1D; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::OU1D; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:546:52: required from here
546 | .method( "TraverseTree", &QuadraticPolyOU1D::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2226:26: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2226 | exception_handler_.Run([=]{
| ^~~~
2227 | while(true) {
| ~~~~~~~~~~~~~
2228 | uint i = ParentType::visit_queue_.NextInQueue();
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2229 | if(i == G_NA_UINT) {
| ~~~~~~~~~~~~~~~~~~~~
2230 | continue;
| ~~~~~~~~~
2231 | } else if(i == ParentType::ref_tree_.num_nodes()) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2232 | break;
| ~~~~~~
2233 | } else if(i < ParentType::ref_tree_.num_tips()) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2234 | // i is a tip (only Visit)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~
2235 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2236 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2237 | ParentType::visit_queue_.RemoveVisitedNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2238 | } else if(i < ParentType::ref_tree_.num_nodes() - 1){
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2239 | // i is internal
| ~~~~~~~~~~~~~~~~
2240 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2241 | uvec const& children = ParentType::ref_tree_.FindChildren(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2242 | for(uint j: children) {
| ~~~~~~~~~~~~~~~~~~~~~~~
2243 | ParentType::ref_spec_.PruneNode(j, i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2244 | }
| ~
2245 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2246 | ParentType::visit_queue_.RemoveVisitedNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2247 | } else {
| ~~~~~~~~
2248 | // i is the root
| ~~~~~~~~~~~~~~~~
2249 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2250 | uvec const& children = ParentType::ref_tree_.FindChildren(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2251 | for(uint j: children) {
| ~~~~~~~~~~~~~~~~~~~~~~~
2252 | ParentType::ref_spec_.PruneNode(j, i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2253 | }
| ~
2254 | // don't visit the root
| ~~~~~~~~~~~~~~~~~~~~~~~
2255 | }
| ~
2256 | }
| ~
2257 | });
| ~
SPLITT.h:2226:26: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeHybridLoopPrunes() [with TraversalSpecification = PCMBaseCpp::OU1D]’:
SPLITT.h:1934:40: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::OU1D; ModeType = SPLITT::PostOrderMode]’
1934 | case ModeType::HYBRID_LOOP_PRUNES: TraverseTreeHybridLoopPrunes(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::OU1D; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::OU1D; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:546:52: required from here
546 | .method( "TraverseTree", &QuadraticPolyOU1D::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2387:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2387 | exception_handler_.Run([=]{
| ^~~~
2388 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2389 | });
| ~
SPLITT.h:2387:30: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2401:34: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2401 | exception_handler_.Run([=]{
| ^~~~
2402 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2403 | ParentType::ref_spec_.PruneNode(i, ParentType::ref_tree_.FindIdOfParent(i));
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2404 | });
| ~
SPLITT.h:2401:34: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2411:34: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2411 | exception_handler_.Run([=]{
| ^~~~
2412 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2413 | ParentType::ref_spec_.PruneNode(i, ParentType::ref_tree_.FindIdOfParent(i));
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2414 | });
| ~
SPLITT.h:2411:34: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeHybridLoopVisitsThenLoopPrunes() [with TraversalSpecification = PCMBaseCpp::OU1D]’:
SPLITT.h:1935:57: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::OU1D; ModeType = SPLITT::PostOrderMode]’
1935 | case ModeType::HYBRID_LOOP_VISITS_THEN_LOOP_PRUNES: TraverseTreeHybridLoopVisitsThenLoopPrunes(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::OU1D; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::OU1D; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:546:52: required from here
546 | .method( "TraverseTree", &QuadraticPolyOU1D::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2323:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2323 | exception_handler_.Run([=]{
| ^~~~
2324 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2325 | });
| ~
SPLITT.h:2323:30: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2337:34: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2337 | exception_handler_.Run([=]{
| ^~~~
2338 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2339 | });
| ~
SPLITT.h:2337:34: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2346:32: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2346 | exception_handler_.Run([=]{
| ^~~~
2347 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2348 | });
| ~
SPLITT.h:2346:32: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2360:36: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2360 | exception_handler_.Run([=]{
| ^~~~
2361 | ParentType::ref_spec_.PruneNode(i, ParentType::ref_tree_.FindIdOfParent(i));
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2362 | });
| ~
SPLITT.h:2360:36: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeHybridLoopVisits() [with TraversalSpecification = PCMBaseCpp::OU1D]’:
SPLITT.h:1936:40: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::OU1D; ModeType = SPLITT::PostOrderMode]’
1936 | case ModeType::HYBRID_LOOP_VISITS: TraverseTreeHybridLoopVisits(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::OU1D; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::OU1D; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:546:52: required from here
546 | .method( "TraverseTree", &QuadraticPolyOU1D::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2435:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2435 | exception_handler_.Run([=]{
| ^~~~
2436 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2437 | });
| ~
SPLITT.h:2435:30: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2448:32: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2448 | exception_handler_.Run([=]{
| ^~~~
2449 | if(i < ParentType::ref_tree_.num_tips()) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2450 | // i is a tip (only Visit)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~
2451 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2452 | } else if(i < ParentType::ref_tree_.num_nodes() - 1){
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2453 | // i is internal
| ~~~~~~~~~~~~~~~~
2454 | for(uint j: ParentType::ref_tree_.FindChildren(i)) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2455 | ParentType::ref_spec_.PruneNode(j, i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2456 | }
| ~
2457 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2458 | }
| ~
2459 | });
| ~
SPLITT.h:2448:32: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2466:32: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2466 | exception_handler_.Run([=]{
| ^~~~
2467 | if(i < ParentType::ref_tree_.num_tips()) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2468 | // i is a tip (only Visit)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~
2469 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2470 | } else if(i < ParentType::ref_tree_.num_nodes() - 1){
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2471 | // i is internal
| ~~~~~~~~~~~~~~~~
2472 | for(uint j: ParentType::ref_tree_.FindChildren(i)) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2473 | ParentType::ref_spec_.PruneNode(j, i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2474 | }
| ~
2475 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2476 | }
| ~
2477 | });
| ~
SPLITT.h:2466:32: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2485:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2485 | exception_handler_.Run([=]{
| ^~~~
2486 | ParentType::ref_spec_.PruneNode(j, ParentType::ref_tree_.num_nodes() - 1);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2487 | });
| ~
SPLITT.h:2485:30: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeSingleThreadLoopPostorder() [with TraversalSpecification = PCMBaseCpp::JOU]’:
SPLITT.h:1926:50: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::JOU; ModeType = SPLITT::PostOrderMode]’
1926 | case ModeType::SINGLE_THREAD_LOOP_POSTORDER: TraverseTreeSingleThreadLoopPostorder(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::JOU; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::JOU; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:620:49: required from here
620 | .method( "TraverseTree", &QuadraticPolyJOU::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2056:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2056 | exception_handler_.Run([=]{
| ^~~~
2057 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2058 | });
| ~
SPLITT.h:2056:30: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2063:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2063 | exception_handler_.Run([=]{
| ^~~~
2064 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2065 | ParentType::ref_spec_.PruneNode(i, ParentType::ref_tree_.FindIdOfParent(i));
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2066 | });
| ~
SPLITT.h:2063:30: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeSingleThreadLoopPrunes() [with TraversalSpecification = PCMBaseCpp::JOU]’:
SPLITT.h:1927:47: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::JOU; ModeType = SPLITT::PostOrderMode]’
1927 | case ModeType::SINGLE_THREAD_LOOP_PRUNES: TraverseTreeSingleThreadLoopPrunes(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::JOU; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::JOU; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:620:49: required from here
620 | .method( "TraverseTree", &QuadraticPolyJOU::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2074:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2074 | exception_handler_.Run([=]{
| ^~~~
2075 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2076 | });
| ~
SPLITT.h:2074:30: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2087:32: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2087 | exception_handler_.Run([=]{
| ^~~~
2088 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2089 | ParentType::ref_spec_.PruneNode(i, ParentType::ref_tree_.FindIdOfParent(i));
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2090 | });
| ~
SPLITT.h:2087:32: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeSingleThreadLoopVisits() [with TraversalSpecification = PCMBaseCpp::JOU]’:
SPLITT.h:1928:47: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::JOU; ModeType = SPLITT::PostOrderMode]’
1928 | case ModeType::SINGLE_THREAD_LOOP_VISITS: TraverseTreeSingleThreadLoopVisits(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::JOU; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::JOU; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:620:49: required from here
620 | .method( "TraverseTree", &QuadraticPolyJOU::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2099:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2099 | exception_handler_.Run([=]{
| ^~~~
2100 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2101 | });
| ~
SPLITT.h:2099:30: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2109:32: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2109 | exception_handler_.Run([=]{
| ^~~~
2110 | if(i < ParentType::ref_tree_.num_tips()) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2111 | // i is a tip (only Visit)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~
2112 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2113 | } else {
| ~~~~~~~~
2114 | // i is internal
| ~~~~~~~~~~~~~~~~
2115 | for(uint j: ParentType::ref_tree_.FindChildren(i)) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2116 | ParentType::ref_spec_.PruneNode(j, i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2117 | }
| ~
2118 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2119 | }
| ~
2120 | });
| ~
SPLITT.h:2109:32: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeMultiThreadLoopPrunes() [with TraversalSpecification = PCMBaseCpp::JOU]’:
SPLITT.h:1929:46: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::JOU; ModeType = SPLITT::PostOrderMode]’
1929 | case ModeType::MULTI_THREAD_LOOP_PRUNES: TraverseTreeMultiThreadLoopPrunes(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::JOU; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::JOU; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:620:49: required from here
620 | .method( "TraverseTree", &QuadraticPolyJOU::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2268:28: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2268 | exception_handler_.Run([=]{
| ^~~~
2269 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2270 | });
| ~
SPLITT.h:2268:28: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2279:32: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2279 | exception_handler_.Run([=]{
| ^~~~
2280 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2281 | ParentType::ref_spec_.PruneNode(i, ParentType::ref_tree_.FindIdOfParent(i));
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2282 | });
| ~
SPLITT.h:2279:32: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeMultiThreadLoopVisitsThenLoopPrunes() [with TraversalSpecification = PCMBaseCpp::JOU]’:
SPLITT.h:1930:63: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::JOU; ModeType = SPLITT::PostOrderMode]’
1930 | case ModeType::MULTI_THREAD_LOOP_VISITS_THEN_LOOP_PRUNES: TraverseTreeMultiThreadLoopVisitsThenLoopPrunes(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::JOU; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::JOU; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:620:49: required from here
620 | .method( "TraverseTree", &QuadraticPolyJOU::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2137:28: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2137 | exception_handler_.Run([=]{
| ^~~~
2138 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2139 | });
| ~
SPLITT.h:2137:28: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2151:32: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2151 | exception_handler_.Run([=]{
| ^~~~
2152 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2153 | });
| ~
SPLITT.h:2151:32: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2165:34: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2165 | exception_handler_.Run([=]{
| ^~~~
2166 | ParentType::ref_spec_.PruneNode(i, ParentType::ref_tree_.FindIdOfParent(i));
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2167 | });
| ~
SPLITT.h:2165:34: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeMultiThreadLoopVisits() [with TraversalSpecification = PCMBaseCpp::JOU]’:
SPLITT.h:1931:46: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::JOU; ModeType = SPLITT::PostOrderMode]’
1931 | case ModeType::MULTI_THREAD_LOOP_VISITS: TraverseTreeMultiThreadLoopVisits(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::JOU; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::JOU; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:620:49: required from here
620 | .method( "TraverseTree", &QuadraticPolyJOU::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2190:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2190 | exception_handler_.Run([=]{
| ^~~~
2191 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2192 | });
| ~
SPLITT.h:2190:30: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2200:32: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2200 | exception_handler_.Run([=]{
| ^~~~
2201 | if(i < ParentType::ref_tree_.num_tips()) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2202 | // i is a tip (only Visit)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~
2203 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2204 | } else {
| ~~~~~~~~
2205 | // i is internal
| ~~~~~~~~~~~~~~~~
2206 | for(uint j: ParentType::ref_tree_.FindChildren(i)) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2207 | ParentType::ref_spec_.PruneNode(j, i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2208 | }
| ~
2209 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2210 | }
| ~
2211 | });
| ~
SPLITT.h:2200:32: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2181:8: warning: variable ‘tid’ set but not used [-Wunused-but-set-variable]
2181 | uint tid;
| ^~~
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeMultiThreadVisitQueue() [with TraversalSpecification = PCMBaseCpp::JOU]’:
SPLITT.h:1932:46: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::JOU; ModeType = SPLITT::PostOrderMode]’
1932 | case ModeType::MULTI_THREAD_VISIT_QUEUE: TraverseTreeMultiThreadVisitQueue(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::JOU; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::JOU; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:620:49: required from here
620 | .method( "TraverseTree", &QuadraticPolyJOU::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2226:26: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2226 | exception_handler_.Run([=]{
| ^~~~
2227 | while(true) {
| ~~~~~~~~~~~~~
2228 | uint i = ParentType::visit_queue_.NextInQueue();
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2229 | if(i == G_NA_UINT) {
| ~~~~~~~~~~~~~~~~~~~~
2230 | continue;
| ~~~~~~~~~
2231 | } else if(i == ParentType::ref_tree_.num_nodes()) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2232 | break;
| ~~~~~~
2233 | } else if(i < ParentType::ref_tree_.num_tips()) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2234 | // i is a tip (only Visit)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~
2235 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2236 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2237 | ParentType::visit_queue_.RemoveVisitedNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2238 | } else if(i < ParentType::ref_tree_.num_nodes() - 1){
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2239 | // i is internal
| ~~~~~~~~~~~~~~~~
2240 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2241 | uvec const& children = ParentType::ref_tree_.FindChildren(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2242 | for(uint j: children) {
| ~~~~~~~~~~~~~~~~~~~~~~~
2243 | ParentType::ref_spec_.PruneNode(j, i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2244 | }
| ~
2245 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2246 | ParentType::visit_queue_.RemoveVisitedNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2247 | } else {
| ~~~~~~~~
2248 | // i is the root
| ~~~~~~~~~~~~~~~~
2249 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2250 | uvec const& children = ParentType::ref_tree_.FindChildren(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2251 | for(uint j: children) {
| ~~~~~~~~~~~~~~~~~~~~~~~
2252 | ParentType::ref_spec_.PruneNode(j, i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2253 | }
| ~
2254 | // don't visit the root
| ~~~~~~~~~~~~~~~~~~~~~~~
2255 | }
| ~
2256 | }
| ~
2257 | });
| ~
SPLITT.h:2226:26: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeHybridLoopPrunes() [with TraversalSpecification = PCMBaseCpp::JOU]’:
SPLITT.h:1934:40: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::JOU; ModeType = SPLITT::PostOrderMode]’
1934 | case ModeType::HYBRID_LOOP_PRUNES: TraverseTreeHybridLoopPrunes(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::JOU; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::JOU; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:620:49: required from here
620 | .method( "TraverseTree", &QuadraticPolyJOU::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2387:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2387 | exception_handler_.Run([=]{
| ^~~~
2388 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2389 | });
| ~
SPLITT.h:2387:30: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2401:34: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2401 | exception_handler_.Run([=]{
| ^~~~
2402 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2403 | ParentType::ref_spec_.PruneNode(i, ParentType::ref_tree_.FindIdOfParent(i));
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2404 | });
| ~
SPLITT.h:2401:34: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2411:34: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2411 | exception_handler_.Run([=]{
| ^~~~
2412 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2413 | ParentType::ref_spec_.PruneNode(i, ParentType::ref_tree_.FindIdOfParent(i));
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2414 | });
| ~
SPLITT.h:2411:34: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeHybridLoopVisitsThenLoopPrunes() [with TraversalSpecification = PCMBaseCpp::JOU]’:
SPLITT.h:1935:57: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::JOU; ModeType = SPLITT::PostOrderMode]’
1935 | case ModeType::HYBRID_LOOP_VISITS_THEN_LOOP_PRUNES: TraverseTreeHybridLoopVisitsThenLoopPrunes(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::JOU; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::JOU; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:620:49: required from here
620 | .method( "TraverseTree", &QuadraticPolyJOU::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2323:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2323 | exception_handler_.Run([=]{
| ^~~~
2324 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2325 | });
| ~
SPLITT.h:2323:30: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2337:34: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2337 | exception_handler_.Run([=]{
| ^~~~
2338 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2339 | });
| ~
SPLITT.h:2337:34: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2346:32: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2346 | exception_handler_.Run([=]{
| ^~~~
2347 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2348 | });
| ~
SPLITT.h:2346:32: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2360:36: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2360 | exception_handler_.Run([=]{
| ^~~~
2361 | ParentType::ref_spec_.PruneNode(i, ParentType::ref_tree_.FindIdOfParent(i));
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2362 | });
| ~
SPLITT.h:2360:36: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeHybridLoopVisits() [with TraversalSpecification = PCMBaseCpp::JOU]’:
SPLITT.h:1936:40: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::JOU; ModeType = SPLITT::PostOrderMode]’
1936 | case ModeType::HYBRID_LOOP_VISITS: TraverseTreeHybridLoopVisits(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::JOU; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::JOU; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:620:49: required from here
620 | .method( "TraverseTree", &QuadraticPolyJOU::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2435:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2435 | exception_handler_.Run([=]{
| ^~~~
2436 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2437 | });
| ~
SPLITT.h:2435:30: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2448:32: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2448 | exception_handler_.Run([=]{
| ^~~~
2449 | if(i < ParentType::ref_tree_.num_tips()) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2450 | // i is a tip (only Visit)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~
2451 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2452 | } else if(i < ParentType::ref_tree_.num_nodes() - 1){
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2453 | // i is internal
| ~~~~~~~~~~~~~~~~
2454 | for(uint j: ParentType::ref_tree_.FindChildren(i)) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2455 | ParentType::ref_spec_.PruneNode(j, i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2456 | }
| ~
2457 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2458 | }
| ~
2459 | });
| ~
SPLITT.h:2448:32: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2466:32: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2466 | exception_handler_.Run([=]{
| ^~~~
2467 | if(i < ParentType::ref_tree_.num_tips()) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2468 | // i is a tip (only Visit)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~
2469 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2470 | } else if(i < ParentType::ref_tree_.num_nodes() - 1){
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2471 | // i is internal
| ~~~~~~~~~~~~~~~~
2472 | for(uint j: ParentType::ref_tree_.FindChildren(i)) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2473 | ParentType::ref_spec_.PruneNode(j, i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2474 | }
| ~
2475 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2476 | }
| ~
2477 | });
| ~
SPLITT.h:2466:32: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2485:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2485 | exception_handler_.Run([=]{
| ^~~~
2486 | ParentType::ref_spec_.PruneNode(j, ParentType::ref_tree_.num_nodes() - 1);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2487 | });
| ~
SPLITT.h:2485:30: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeSingleThreadLoopPostorder() [with TraversalSpecification = PCMBaseCpp::DOU]’:
SPLITT.h:1926:50: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::DOU; ModeType = SPLITT::PostOrderMode]’
1926 | case ModeType::SINGLE_THREAD_LOOP_POSTORDER: TraverseTreeSingleThreadLoopPostorder(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::DOU; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::DOU; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:689:49: required from here
689 | .method( "TraverseTree", &QuadraticPolyDOU::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2056:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2056 | exception_handler_.Run([=]{
| ^~~~
2057 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2058 | });
| ~
SPLITT.h:2056:30: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2063:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2063 | exception_handler_.Run([=]{
| ^~~~
2064 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2065 | ParentType::ref_spec_.PruneNode(i, ParentType::ref_tree_.FindIdOfParent(i));
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2066 | });
| ~
SPLITT.h:2063:30: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeSingleThreadLoopPrunes() [with TraversalSpecification = PCMBaseCpp::DOU]’:
SPLITT.h:1927:47: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::DOU; ModeType = SPLITT::PostOrderMode]’
1927 | case ModeType::SINGLE_THREAD_LOOP_PRUNES: TraverseTreeSingleThreadLoopPrunes(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::DOU; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::DOU; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:689:49: required from here
689 | .method( "TraverseTree", &QuadraticPolyDOU::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2074:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2074 | exception_handler_.Run([=]{
| ^~~~
2075 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2076 | });
| ~
SPLITT.h:2074:30: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2087:32: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2087 | exception_handler_.Run([=]{
| ^~~~
2088 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2089 | ParentType::ref_spec_.PruneNode(i, ParentType::ref_tree_.FindIdOfParent(i));
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2090 | });
| ~
SPLITT.h:2087:32: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeSingleThreadLoopVisits() [with TraversalSpecification = PCMBaseCpp::DOU]’:
SPLITT.h:1928:47: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::DOU; ModeType = SPLITT::PostOrderMode]’
1928 | case ModeType::SINGLE_THREAD_LOOP_VISITS: TraverseTreeSingleThreadLoopVisits(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::DOU; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::DOU; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:689:49: required from here
689 | .method( "TraverseTree", &QuadraticPolyDOU::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2099:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2099 | exception_handler_.Run([=]{
| ^~~~
2100 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2101 | });
| ~
SPLITT.h:2099:30: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2109:32: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2109 | exception_handler_.Run([=]{
| ^~~~
2110 | if(i < ParentType::ref_tree_.num_tips()) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2111 | // i is a tip (only Visit)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~
2112 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2113 | } else {
| ~~~~~~~~
2114 | // i is internal
| ~~~~~~~~~~~~~~~~
2115 | for(uint j: ParentType::ref_tree_.FindChildren(i)) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2116 | ParentType::ref_spec_.PruneNode(j, i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2117 | }
| ~
2118 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2119 | }
| ~
2120 | });
| ~
SPLITT.h:2109:32: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeMultiThreadLoopPrunes() [with TraversalSpecification = PCMBaseCpp::DOU]’:
SPLITT.h:1929:46: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::DOU; ModeType = SPLITT::PostOrderMode]’
1929 | case ModeType::MULTI_THREAD_LOOP_PRUNES: TraverseTreeMultiThreadLoopPrunes(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::DOU; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::DOU; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:689:49: required from here
689 | .method( "TraverseTree", &QuadraticPolyDOU::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2268:28: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2268 | exception_handler_.Run([=]{
| ^~~~
2269 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2270 | });
| ~
SPLITT.h:2268:28: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2279:32: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2279 | exception_handler_.Run([=]{
| ^~~~
2280 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2281 | ParentType::ref_spec_.PruneNode(i, ParentType::ref_tree_.FindIdOfParent(i));
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2282 | });
| ~
SPLITT.h:2279:32: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeMultiThreadLoopVisitsThenLoopPrunes() [with TraversalSpecification = PCMBaseCpp::DOU]’:
SPLITT.h:1930:63: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::DOU; ModeType = SPLITT::PostOrderMode]’
1930 | case ModeType::MULTI_THREAD_LOOP_VISITS_THEN_LOOP_PRUNES: TraverseTreeMultiThreadLoopVisitsThenLoopPrunes(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::DOU; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::DOU; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:689:49: required from here
689 | .method( "TraverseTree", &QuadraticPolyDOU::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2137:28: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2137 | exception_handler_.Run([=]{
| ^~~~
2138 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2139 | });
| ~
SPLITT.h:2137:28: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2151:32: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2151 | exception_handler_.Run([=]{
| ^~~~
2152 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2153 | });
| ~
SPLITT.h:2151:32: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2165:34: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2165 | exception_handler_.Run([=]{
| ^~~~
2166 | ParentType::ref_spec_.PruneNode(i, ParentType::ref_tree_.FindIdOfParent(i));
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2167 | });
| ~
SPLITT.h:2165:34: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeMultiThreadLoopVisits() [with TraversalSpecification = PCMBaseCpp::DOU]’:
SPLITT.h:1931:46: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::DOU; ModeType = SPLITT::PostOrderMode]’
1931 | case ModeType::MULTI_THREAD_LOOP_VISITS: TraverseTreeMultiThreadLoopVisits(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::DOU; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::DOU; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:689:49: required from here
689 | .method( "TraverseTree", &QuadraticPolyDOU::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2190:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2190 | exception_handler_.Run([=]{
| ^~~~
2191 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2192 | });
| ~
SPLITT.h:2190:30: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2200:32: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2200 | exception_handler_.Run([=]{
| ^~~~
2201 | if(i < ParentType::ref_tree_.num_tips()) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2202 | // i is a tip (only Visit)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~
2203 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2204 | } else {
| ~~~~~~~~
2205 | // i is internal
| ~~~~~~~~~~~~~~~~
2206 | for(uint j: ParentType::ref_tree_.FindChildren(i)) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2207 | ParentType::ref_spec_.PruneNode(j, i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2208 | }
| ~
2209 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2210 | }
| ~
2211 | });
| ~
SPLITT.h:2200:32: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2181:8: warning: variable ‘tid’ set but not used [-Wunused-but-set-variable]
2181 | uint tid;
| ^~~
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeMultiThreadVisitQueue() [with TraversalSpecification = PCMBaseCpp::DOU]’:
SPLITT.h:1932:46: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::DOU; ModeType = SPLITT::PostOrderMode]’
1932 | case ModeType::MULTI_THREAD_VISIT_QUEUE: TraverseTreeMultiThreadVisitQueue(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::DOU; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::DOU; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:689:49: required from here
689 | .method( "TraverseTree", &QuadraticPolyDOU::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2226:26: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2226 | exception_handler_.Run([=]{
| ^~~~
2227 | while(true) {
| ~~~~~~~~~~~~~
2228 | uint i = ParentType::visit_queue_.NextInQueue();
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2229 | if(i == G_NA_UINT) {
| ~~~~~~~~~~~~~~~~~~~~
2230 | continue;
| ~~~~~~~~~
2231 | } else if(i == ParentType::ref_tree_.num_nodes()) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2232 | break;
| ~~~~~~
2233 | } else if(i < ParentType::ref_tree_.num_tips()) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2234 | // i is a tip (only Visit)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~
2235 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2236 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2237 | ParentType::visit_queue_.RemoveVisitedNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2238 | } else if(i < ParentType::ref_tree_.num_nodes() - 1){
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2239 | // i is internal
| ~~~~~~~~~~~~~~~~
2240 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2241 | uvec const& children = ParentType::ref_tree_.FindChildren(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2242 | for(uint j: children) {
| ~~~~~~~~~~~~~~~~~~~~~~~
2243 | ParentType::ref_spec_.PruneNode(j, i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2244 | }
| ~
2245 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2246 | ParentType::visit_queue_.RemoveVisitedNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2247 | } else {
| ~~~~~~~~
2248 | // i is the root
| ~~~~~~~~~~~~~~~~
2249 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2250 | uvec const& children = ParentType::ref_tree_.FindChildren(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2251 | for(uint j: children) {
| ~~~~~~~~~~~~~~~~~~~~~~~
2252 | ParentType::ref_spec_.PruneNode(j, i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2253 | }
| ~
2254 | // don't visit the root
| ~~~~~~~~~~~~~~~~~~~~~~~
2255 | }
| ~
2256 | }
| ~
2257 | });
| ~
SPLITT.h:2226:26: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeHybridLoopPrunes() [with TraversalSpecification = PCMBaseCpp::DOU]’:
SPLITT.h:1934:40: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::DOU; ModeType = SPLITT::PostOrderMode]’
1934 | case ModeType::HYBRID_LOOP_PRUNES: TraverseTreeHybridLoopPrunes(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::DOU; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::DOU; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:689:49: required from here
689 | .method( "TraverseTree", &QuadraticPolyDOU::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2387:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2387 | exception_handler_.Run([=]{
| ^~~~
2388 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2389 | });
| ~
SPLITT.h:2387:30: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2401:34: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2401 | exception_handler_.Run([=]{
| ^~~~
2402 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2403 | ParentType::ref_spec_.PruneNode(i, ParentType::ref_tree_.FindIdOfParent(i));
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2404 | });
| ~
SPLITT.h:2401:34: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2411:34: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2411 | exception_handler_.Run([=]{
| ^~~~
2412 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2413 | ParentType::ref_spec_.PruneNode(i, ParentType::ref_tree_.FindIdOfParent(i));
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2414 | });
| ~
SPLITT.h:2411:34: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeHybridLoopVisitsThenLoopPrunes() [with TraversalSpecification = PCMBaseCpp::DOU]’:
SPLITT.h:1935:57: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::DOU; ModeType = SPLITT::PostOrderMode]’
1935 | case ModeType::HYBRID_LOOP_VISITS_THEN_LOOP_PRUNES: TraverseTreeHybridLoopVisitsThenLoopPrunes(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::DOU; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::DOU; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:689:49: required from here
689 | .method( "TraverseTree", &QuadraticPolyDOU::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2323:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2323 | exception_handler_.Run([=]{
| ^~~~
2324 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2325 | });
| ~
SPLITT.h:2323:30: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2337:34: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2337 | exception_handler_.Run([=]{
| ^~~~
2338 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2339 | });
| ~
SPLITT.h:2337:34: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2346:32: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2346 | exception_handler_.Run([=]{
| ^~~~
2347 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2348 | });
| ~
SPLITT.h:2346:32: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2360:36: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2360 | exception_handler_.Run([=]{
| ^~~~
2361 | ParentType::ref_spec_.PruneNode(i, ParentType::ref_tree_.FindIdOfParent(i));
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2362 | });
| ~
SPLITT.h:2360:36: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeHybridLoopVisits() [with TraversalSpecification = PCMBaseCpp::DOU]’:
SPLITT.h:1936:40: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::DOU; ModeType = SPLITT::PostOrderMode]’
1936 | case ModeType::HYBRID_LOOP_VISITS: TraverseTreeHybridLoopVisits(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::DOU; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::DOU; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:689:49: required from here
689 | .method( "TraverseTree", &QuadraticPolyDOU::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2435:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2435 | exception_handler_.Run([=]{
| ^~~~
2436 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2437 | });
| ~
SPLITT.h:2435:30: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2448:32: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2448 | exception_handler_.Run([=]{
| ^~~~
2449 | if(i < ParentType::ref_tree_.num_tips()) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2450 | // i is a tip (only Visit)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~
2451 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2452 | } else if(i < ParentType::ref_tree_.num_nodes() - 1){
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2453 | // i is internal
| ~~~~~~~~~~~~~~~~
2454 | for(uint j: ParentType::ref_tree_.FindChildren(i)) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2455 | ParentType::ref_spec_.PruneNode(j, i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2456 | }
| ~
2457 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2458 | }
| ~
2459 | });
| ~
SPLITT.h:2448:32: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2466:32: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2466 | exception_handler_.Run([=]{
| ^~~~
2467 | if(i < ParentType::ref_tree_.num_tips()) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2468 | // i is a tip (only Visit)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~
2469 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2470 | } else if(i < ParentType::ref_tree_.num_nodes() - 1){
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2471 | // i is internal
| ~~~~~~~~~~~~~~~~
2472 | for(uint j: ParentType::ref_tree_.FindChildren(i)) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2473 | ParentType::ref_spec_.PruneNode(j, i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2474 | }
| ~
2475 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2476 | }
| ~
2477 | });
| ~
SPLITT.h:2466:32: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2485:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2485 | exception_handler_.Run([=]{
| ^~~~
2486 | ParentType::ref_spec_.PruneNode(j, ParentType::ref_tree_.num_nodes() - 1);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2487 | });
| ~
SPLITT.h:2485:30: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeSingleThreadLoopPostorder() [with TraversalSpecification = PCMBaseCpp::MixedGaussian]’:
SPLITT.h:1926:50: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::MixedGaussian; ModeType = SPLITT::PostOrderMode]’
1926 | case ModeType::SINGLE_THREAD_LOOP_POSTORDER: TraverseTreeSingleThreadLoopPostorder(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::MixedGaussian; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::MixedGaussian; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:762:61: required from here
762 | .method( "TraverseTree", &QuadraticPolyMixedGaussian::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2056:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2056 | exception_handler_.Run([=]{
| ^~~~
2057 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2058 | });
| ~
SPLITT.h:2056:30: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2063:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2063 | exception_handler_.Run([=]{
| ^~~~
2064 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2065 | ParentType::ref_spec_.PruneNode(i, ParentType::ref_tree_.FindIdOfParent(i));
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2066 | });
| ~
SPLITT.h:2063:30: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeSingleThreadLoopPrunes() [with TraversalSpecification = PCMBaseCpp::MixedGaussian]’:
SPLITT.h:1927:47: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::MixedGaussian; ModeType = SPLITT::PostOrderMode]’
1927 | case ModeType::SINGLE_THREAD_LOOP_PRUNES: TraverseTreeSingleThreadLoopPrunes(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::MixedGaussian; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::MixedGaussian; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:762:61: required from here
762 | .method( "TraverseTree", &QuadraticPolyMixedGaussian::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2074:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2074 | exception_handler_.Run([=]{
| ^~~~
2075 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2076 | });
| ~
SPLITT.h:2074:30: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2087:32: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2087 | exception_handler_.Run([=]{
| ^~~~
2088 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2089 | ParentType::ref_spec_.PruneNode(i, ParentType::ref_tree_.FindIdOfParent(i));
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2090 | });
| ~
SPLITT.h:2087:32: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeSingleThreadLoopVisits() [with TraversalSpecification = PCMBaseCpp::MixedGaussian]’:
SPLITT.h:1928:47: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::MixedGaussian; ModeType = SPLITT::PostOrderMode]’
1928 | case ModeType::SINGLE_THREAD_LOOP_VISITS: TraverseTreeSingleThreadLoopVisits(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::MixedGaussian; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::MixedGaussian; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:762:61: required from here
762 | .method( "TraverseTree", &QuadraticPolyMixedGaussian::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2099:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2099 | exception_handler_.Run([=]{
| ^~~~
2100 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2101 | });
| ~
SPLITT.h:2099:30: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2109:32: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2109 | exception_handler_.Run([=]{
| ^~~~
2110 | if(i < ParentType::ref_tree_.num_tips()) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2111 | // i is a tip (only Visit)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~
2112 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2113 | } else {
| ~~~~~~~~
2114 | // i is internal
| ~~~~~~~~~~~~~~~~
2115 | for(uint j: ParentType::ref_tree_.FindChildren(i)) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2116 | ParentType::ref_spec_.PruneNode(j, i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2117 | }
| ~
2118 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2119 | }
| ~
2120 | });
| ~
SPLITT.h:2109:32: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeMultiThreadLoopPrunes() [with TraversalSpecification = PCMBaseCpp::MixedGaussian]’:
SPLITT.h:1929:46: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::MixedGaussian; ModeType = SPLITT::PostOrderMode]’
1929 | case ModeType::MULTI_THREAD_LOOP_PRUNES: TraverseTreeMultiThreadLoopPrunes(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::MixedGaussian; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::MixedGaussian; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:762:61: required from here
762 | .method( "TraverseTree", &QuadraticPolyMixedGaussian::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2268:28: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2268 | exception_handler_.Run([=]{
| ^~~~
2269 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2270 | });
| ~
SPLITT.h:2268:28: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2279:32: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2279 | exception_handler_.Run([=]{
| ^~~~
2280 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2281 | ParentType::ref_spec_.PruneNode(i, ParentType::ref_tree_.FindIdOfParent(i));
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2282 | });
| ~
SPLITT.h:2279:32: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeMultiThreadLoopVisitsThenLoopPrunes() [with TraversalSpecification = PCMBaseCpp::MixedGaussian]’:
SPLITT.h:1930:63: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::MixedGaussian; ModeType = SPLITT::PostOrderMode]’
1930 | case ModeType::MULTI_THREAD_LOOP_VISITS_THEN_LOOP_PRUNES: TraverseTreeMultiThreadLoopVisitsThenLoopPrunes(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::MixedGaussian; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::MixedGaussian; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:762:61: required from here
762 | .method( "TraverseTree", &QuadraticPolyMixedGaussian::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2137:28: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2137 | exception_handler_.Run([=]{
| ^~~~
2138 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2139 | });
| ~
SPLITT.h:2137:28: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2151:32: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2151 | exception_handler_.Run([=]{
| ^~~~
2152 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2153 | });
| ~
SPLITT.h:2151:32: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2165:34: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2165 | exception_handler_.Run([=]{
| ^~~~
2166 | ParentType::ref_spec_.PruneNode(i, ParentType::ref_tree_.FindIdOfParent(i));
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2167 | });
| ~
SPLITT.h:2165:34: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeMultiThreadLoopVisits() [with TraversalSpecification = PCMBaseCpp::MixedGaussian]’:
SPLITT.h:1931:46: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::MixedGaussian; ModeType = SPLITT::PostOrderMode]’
1931 | case ModeType::MULTI_THREAD_LOOP_VISITS: TraverseTreeMultiThreadLoopVisits(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::MixedGaussian; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::MixedGaussian; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:762:61: required from here
762 | .method( "TraverseTree", &QuadraticPolyMixedGaussian::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2190:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2190 | exception_handler_.Run([=]{
| ^~~~
2191 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2192 | });
| ~
SPLITT.h:2190:30: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2200:32: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2200 | exception_handler_.Run([=]{
| ^~~~
2201 | if(i < ParentType::ref_tree_.num_tips()) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2202 | // i is a tip (only Visit)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~
2203 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2204 | } else {
| ~~~~~~~~
2205 | // i is internal
| ~~~~~~~~~~~~~~~~
2206 | for(uint j: ParentType::ref_tree_.FindChildren(i)) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2207 | ParentType::ref_spec_.PruneNode(j, i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2208 | }
| ~
2209 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2210 | }
| ~
2211 | });
| ~
SPLITT.h:2200:32: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2181:8: warning: variable ‘tid’ set but not used [-Wunused-but-set-variable]
2181 | uint tid;
| ^~~
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeMultiThreadVisitQueue() [with TraversalSpecification = PCMBaseCpp::MixedGaussian]’:
SPLITT.h:1932:46: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::MixedGaussian; ModeType = SPLITT::PostOrderMode]’
1932 | case ModeType::MULTI_THREAD_VISIT_QUEUE: TraverseTreeMultiThreadVisitQueue(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::MixedGaussian; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::MixedGaussian; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:762:61: required from here
762 | .method( "TraverseTree", &QuadraticPolyMixedGaussian::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2226:26: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2226 | exception_handler_.Run([=]{
| ^~~~
2227 | while(true) {
| ~~~~~~~~~~~~~
2228 | uint i = ParentType::visit_queue_.NextInQueue();
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2229 | if(i == G_NA_UINT) {
| ~~~~~~~~~~~~~~~~~~~~
2230 | continue;
| ~~~~~~~~~
2231 | } else if(i == ParentType::ref_tree_.num_nodes()) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2232 | break;
| ~~~~~~
2233 | } else if(i < ParentType::ref_tree_.num_tips()) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2234 | // i is a tip (only Visit)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~
2235 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2236 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2237 | ParentType::visit_queue_.RemoveVisitedNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2238 | } else if(i < ParentType::ref_tree_.num_nodes() - 1){
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2239 | // i is internal
| ~~~~~~~~~~~~~~~~
2240 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2241 | uvec const& children = ParentType::ref_tree_.FindChildren(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2242 | for(uint j: children) {
| ~~~~~~~~~~~~~~~~~~~~~~~
2243 | ParentType::ref_spec_.PruneNode(j, i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2244 | }
| ~
2245 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2246 | ParentType::visit_queue_.RemoveVisitedNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2247 | } else {
| ~~~~~~~~
2248 | // i is the root
| ~~~~~~~~~~~~~~~~
2249 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2250 | uvec const& children = ParentType::ref_tree_.FindChildren(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2251 | for(uint j: children) {
| ~~~~~~~~~~~~~~~~~~~~~~~
2252 | ParentType::ref_spec_.PruneNode(j, i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2253 | }
| ~
2254 | // don't visit the root
| ~~~~~~~~~~~~~~~~~~~~~~~
2255 | }
| ~
2256 | }
| ~
2257 | });
| ~
SPLITT.h:2226:26: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeHybridLoopPrunes() [with TraversalSpecification = PCMBaseCpp::MixedGaussian]’:
SPLITT.h:1934:40: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::MixedGaussian; ModeType = SPLITT::PostOrderMode]’
1934 | case ModeType::HYBRID_LOOP_PRUNES: TraverseTreeHybridLoopPrunes(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::MixedGaussian; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::MixedGaussian; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:762:61: required from here
762 | .method( "TraverseTree", &QuadraticPolyMixedGaussian::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2387:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2387 | exception_handler_.Run([=]{
| ^~~~
2388 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2389 | });
| ~
SPLITT.h:2387:30: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2401:34: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2401 | exception_handler_.Run([=]{
| ^~~~
2402 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2403 | ParentType::ref_spec_.PruneNode(i, ParentType::ref_tree_.FindIdOfParent(i));
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2404 | });
| ~
SPLITT.h:2401:34: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2411:34: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2411 | exception_handler_.Run([=]{
| ^~~~
2412 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2413 | ParentType::ref_spec_.PruneNode(i, ParentType::ref_tree_.FindIdOfParent(i));
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2414 | });
| ~
SPLITT.h:2411:34: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeHybridLoopVisitsThenLoopPrunes() [with TraversalSpecification = PCMBaseCpp::MixedGaussian]’:
SPLITT.h:1935:57: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::MixedGaussian; ModeType = SPLITT::PostOrderMode]’
1935 | case ModeType::HYBRID_LOOP_VISITS_THEN_LOOP_PRUNES: TraverseTreeHybridLoopVisitsThenLoopPrunes(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::MixedGaussian; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::MixedGaussian; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:762:61: required from here
762 | .method( "TraverseTree", &QuadraticPolyMixedGaussian::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2323:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2323 | exception_handler_.Run([=]{
| ^~~~
2324 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2325 | });
| ~
SPLITT.h:2323:30: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2337:34: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2337 | exception_handler_.Run([=]{
| ^~~~
2338 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2339 | });
| ~
SPLITT.h:2337:34: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2346:32: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2346 | exception_handler_.Run([=]{
| ^~~~
2347 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2348 | });
| ~
SPLITT.h:2346:32: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2360:36: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2360 | exception_handler_.Run([=]{
| ^~~~
2361 | ParentType::ref_spec_.PruneNode(i, ParentType::ref_tree_.FindIdOfParent(i));
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2362 | });
| ~
SPLITT.h:2360:36: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeHybridLoopVisits() [with TraversalSpecification = PCMBaseCpp::MixedGaussian]’:
SPLITT.h:1936:40: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::MixedGaussian; ModeType = SPLITT::PostOrderMode]’
1936 | case ModeType::HYBRID_LOOP_VISITS: TraverseTreeHybridLoopVisits(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::MixedGaussian; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::MixedGaussian; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:762:61: required from here
762 | .method( "TraverseTree", &QuadraticPolyMixedGaussian::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2435:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2435 | exception_handler_.Run([=]{
| ^~~~
2436 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2437 | });
| ~
SPLITT.h:2435:30: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2448:32: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2448 | exception_handler_.Run([=]{
| ^~~~
2449 | if(i < ParentType::ref_tree_.num_tips()) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2450 | // i is a tip (only Visit)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~
2451 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2452 | } else if(i < ParentType::ref_tree_.num_nodes() - 1){
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2453 | // i is internal
| ~~~~~~~~~~~~~~~~
2454 | for(uint j: ParentType::ref_tree_.FindChildren(i)) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2455 | ParentType::ref_spec_.PruneNode(j, i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2456 | }
| ~
2457 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2458 | }
| ~
2459 | });
| ~
SPLITT.h:2448:32: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2466:32: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2466 | exception_handler_.Run([=]{
| ^~~~
2467 | if(i < ParentType::ref_tree_.num_tips()) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2468 | // i is a tip (only Visit)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~
2469 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2470 | } else if(i < ParentType::ref_tree_.num_nodes() - 1){
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2471 | // i is internal
| ~~~~~~~~~~~~~~~~
2472 | for(uint j: ParentType::ref_tree_.FindChildren(i)) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2473 | ParentType::ref_spec_.PruneNode(j, i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2474 | }
| ~
2475 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2476 | }
| ~
2477 | });
| ~
SPLITT.h:2466:32: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2485:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2485 | exception_handler_.Run([=]{
| ^~~~
2486 | ParentType::ref_spec_.PruneNode(j, ParentType::ref_tree_.num_nodes() - 1);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2487 | });
| ~
SPLITT.h:2485:30: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeSingleThreadLoopPostorder() [with TraversalSpecification = PCMBaseCpp::MixedGaussian1D]’:
SPLITT.h:1926:50: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::MixedGaussian1D; ModeType = SPLITT::PostOrderMode]’
1926 | case ModeType::SINGLE_THREAD_LOOP_POSTORDER: TraverseTreeSingleThreadLoopPostorder(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::MixedGaussian1D; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::MixedGaussian1D; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:834:63: required from here
834 | .method( "TraverseTree", &QuadraticPolyMixedGaussian1D::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2056:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2056 | exception_handler_.Run([=]{
| ^~~~
2057 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2058 | });
| ~
SPLITT.h:2056:30: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2063:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2063 | exception_handler_.Run([=]{
| ^~~~
2064 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2065 | ParentType::ref_spec_.PruneNode(i, ParentType::ref_tree_.FindIdOfParent(i));
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2066 | });
| ~
SPLITT.h:2063:30: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeSingleThreadLoopPrunes() [with TraversalSpecification = PCMBaseCpp::MixedGaussian1D]’:
SPLITT.h:1927:47: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::MixedGaussian1D; ModeType = SPLITT::PostOrderMode]’
1927 | case ModeType::SINGLE_THREAD_LOOP_PRUNES: TraverseTreeSingleThreadLoopPrunes(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::MixedGaussian1D; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::MixedGaussian1D; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:834:63: required from here
834 | .method( "TraverseTree", &QuadraticPolyMixedGaussian1D::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2074:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2074 | exception_handler_.Run([=]{
| ^~~~
2075 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2076 | });
| ~
SPLITT.h:2074:30: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2087:32: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2087 | exception_handler_.Run([=]{
| ^~~~
2088 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2089 | ParentType::ref_spec_.PruneNode(i, ParentType::ref_tree_.FindIdOfParent(i));
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2090 | });
| ~
SPLITT.h:2087:32: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeSingleThreadLoopVisits() [with TraversalSpecification = PCMBaseCpp::MixedGaussian1D]’:
SPLITT.h:1928:47: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::MixedGaussian1D; ModeType = SPLITT::PostOrderMode]’
1928 | case ModeType::SINGLE_THREAD_LOOP_VISITS: TraverseTreeSingleThreadLoopVisits(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::MixedGaussian1D; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::MixedGaussian1D; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:834:63: required from here
834 | .method( "TraverseTree", &QuadraticPolyMixedGaussian1D::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2099:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2099 | exception_handler_.Run([=]{
| ^~~~
2100 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2101 | });
| ~
SPLITT.h:2099:30: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2109:32: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2109 | exception_handler_.Run([=]{
| ^~~~
2110 | if(i < ParentType::ref_tree_.num_tips()) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2111 | // i is a tip (only Visit)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~
2112 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2113 | } else {
| ~~~~~~~~
2114 | // i is internal
| ~~~~~~~~~~~~~~~~
2115 | for(uint j: ParentType::ref_tree_.FindChildren(i)) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2116 | ParentType::ref_spec_.PruneNode(j, i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2117 | }
| ~
2118 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2119 | }
| ~
2120 | });
| ~
SPLITT.h:2109:32: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeMultiThreadLoopPrunes() [with TraversalSpecification = PCMBaseCpp::MixedGaussian1D]’:
SPLITT.h:1929:46: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::MixedGaussian1D; ModeType = SPLITT::PostOrderMode]’
1929 | case ModeType::MULTI_THREAD_LOOP_PRUNES: TraverseTreeMultiThreadLoopPrunes(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::MixedGaussian1D; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::MixedGaussian1D; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:834:63: required from here
834 | .method( "TraverseTree", &QuadraticPolyMixedGaussian1D::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2268:28: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2268 | exception_handler_.Run([=]{
| ^~~~
2269 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2270 | });
| ~
SPLITT.h:2268:28: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2279:32: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2279 | exception_handler_.Run([=]{
| ^~~~
2280 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2281 | ParentType::ref_spec_.PruneNode(i, ParentType::ref_tree_.FindIdOfParent(i));
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2282 | });
| ~
SPLITT.h:2279:32: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeMultiThreadLoopVisitsThenLoopPrunes() [with TraversalSpecification = PCMBaseCpp::MixedGaussian1D]’:
SPLITT.h:1930:63: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::MixedGaussian1D; ModeType = SPLITT::PostOrderMode]’
1930 | case ModeType::MULTI_THREAD_LOOP_VISITS_THEN_LOOP_PRUNES: TraverseTreeMultiThreadLoopVisitsThenLoopPrunes(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::MixedGaussian1D; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::MixedGaussian1D; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:834:63: required from here
834 | .method( "TraverseTree", &QuadraticPolyMixedGaussian1D::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2137:28: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2137 | exception_handler_.Run([=]{
| ^~~~
2138 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2139 | });
| ~
SPLITT.h:2137:28: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2151:32: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2151 | exception_handler_.Run([=]{
| ^~~~
2152 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2153 | });
| ~
SPLITT.h:2151:32: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2165:34: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2165 | exception_handler_.Run([=]{
| ^~~~
2166 | ParentType::ref_spec_.PruneNode(i, ParentType::ref_tree_.FindIdOfParent(i));
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2167 | });
| ~
SPLITT.h:2165:34: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeMultiThreadLoopVisits() [with TraversalSpecification = PCMBaseCpp::MixedGaussian1D]’:
SPLITT.h:1931:46: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::MixedGaussian1D; ModeType = SPLITT::PostOrderMode]’
1931 | case ModeType::MULTI_THREAD_LOOP_VISITS: TraverseTreeMultiThreadLoopVisits(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::MixedGaussian1D; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::MixedGaussian1D; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:834:63: required from here
834 | .method( "TraverseTree", &QuadraticPolyMixedGaussian1D::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2190:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2190 | exception_handler_.Run([=]{
| ^~~~
2191 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2192 | });
| ~
SPLITT.h:2190:30: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2200:32: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2200 | exception_handler_.Run([=]{
| ^~~~
2201 | if(i < ParentType::ref_tree_.num_tips()) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2202 | // i is a tip (only Visit)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~
2203 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2204 | } else {
| ~~~~~~~~
2205 | // i is internal
| ~~~~~~~~~~~~~~~~
2206 | for(uint j: ParentType::ref_tree_.FindChildren(i)) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2207 | ParentType::ref_spec_.PruneNode(j, i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2208 | }
| ~
2209 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2210 | }
| ~
2211 | });
| ~
SPLITT.h:2200:32: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2181:8: warning: variable ‘tid’ set but not used [-Wunused-but-set-variable]
2181 | uint tid;
| ^~~
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeMultiThreadVisitQueue() [with TraversalSpecification = PCMBaseCpp::MixedGaussian1D]’:
SPLITT.h:1932:46: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::MixedGaussian1D; ModeType = SPLITT::PostOrderMode]’
1932 | case ModeType::MULTI_THREAD_VISIT_QUEUE: TraverseTreeMultiThreadVisitQueue(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::MixedGaussian1D; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::MixedGaussian1D; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:834:63: required from here
834 | .method( "TraverseTree", &QuadraticPolyMixedGaussian1D::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2226:26: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2226 | exception_handler_.Run([=]{
| ^~~~
2227 | while(true) {
| ~~~~~~~~~~~~~
2228 | uint i = ParentType::visit_queue_.NextInQueue();
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2229 | if(i == G_NA_UINT) {
| ~~~~~~~~~~~~~~~~~~~~
2230 | continue;
| ~~~~~~~~~
2231 | } else if(i == ParentType::ref_tree_.num_nodes()) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2232 | break;
| ~~~~~~
2233 | } else if(i < ParentType::ref_tree_.num_tips()) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2234 | // i is a tip (only Visit)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~
2235 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2236 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2237 | ParentType::visit_queue_.RemoveVisitedNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2238 | } else if(i < ParentType::ref_tree_.num_nodes() - 1){
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2239 | // i is internal
| ~~~~~~~~~~~~~~~~
2240 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2241 | uvec const& children = ParentType::ref_tree_.FindChildren(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2242 | for(uint j: children) {
| ~~~~~~~~~~~~~~~~~~~~~~~
2243 | ParentType::ref_spec_.PruneNode(j, i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2244 | }
| ~
2245 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2246 | ParentType::visit_queue_.RemoveVisitedNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2247 | } else {
| ~~~~~~~~
2248 | // i is the root
| ~~~~~~~~~~~~~~~~
2249 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2250 | uvec const& children = ParentType::ref_tree_.FindChildren(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2251 | for(uint j: children) {
| ~~~~~~~~~~~~~~~~~~~~~~~
2252 | ParentType::ref_spec_.PruneNode(j, i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2253 | }
| ~
2254 | // don't visit the root
| ~~~~~~~~~~~~~~~~~~~~~~~
2255 | }
| ~
2256 | }
| ~
2257 | });
| ~
SPLITT.h:2226:26: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeHybridLoopPrunes() [with TraversalSpecification = PCMBaseCpp::MixedGaussian1D]’:
SPLITT.h:1934:40: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::MixedGaussian1D; ModeType = SPLITT::PostOrderMode]’
1934 | case ModeType::HYBRID_LOOP_PRUNES: TraverseTreeHybridLoopPrunes(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::MixedGaussian1D; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::MixedGaussian1D; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:834:63: required from here
834 | .method( "TraverseTree", &QuadraticPolyMixedGaussian1D::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2387:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2387 | exception_handler_.Run([=]{
| ^~~~
2388 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2389 | });
| ~
SPLITT.h:2387:30: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2401:34: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2401 | exception_handler_.Run([=]{
| ^~~~
2402 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2403 | ParentType::ref_spec_.PruneNode(i, ParentType::ref_tree_.FindIdOfParent(i));
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2404 | });
| ~
SPLITT.h:2401:34: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2411:34: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2411 | exception_handler_.Run([=]{
| ^~~~
2412 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2413 | ParentType::ref_spec_.PruneNode(i, ParentType::ref_tree_.FindIdOfParent(i));
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2414 | });
| ~
SPLITT.h:2411:34: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeHybridLoopVisitsThenLoopPrunes() [with TraversalSpecification = PCMBaseCpp::MixedGaussian1D]’:
SPLITT.h:1935:57: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::MixedGaussian1D; ModeType = SPLITT::PostOrderMode]’
1935 | case ModeType::HYBRID_LOOP_VISITS_THEN_LOOP_PRUNES: TraverseTreeHybridLoopVisitsThenLoopPrunes(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::MixedGaussian1D; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::MixedGaussian1D; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:834:63: required from here
834 | .method( "TraverseTree", &QuadraticPolyMixedGaussian1D::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2323:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2323 | exception_handler_.Run([=]{
| ^~~~
2324 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2325 | });
| ~
SPLITT.h:2323:30: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2337:34: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2337 | exception_handler_.Run([=]{
| ^~~~
2338 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2339 | });
| ~
SPLITT.h:2337:34: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2346:32: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2346 | exception_handler_.Run([=]{
| ^~~~
2347 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2348 | });
| ~
SPLITT.h:2346:32: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2360:36: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2360 | exception_handler_.Run([=]{
| ^~~~
2361 | ParentType::ref_spec_.PruneNode(i, ParentType::ref_tree_.FindIdOfParent(i));
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2362 | });
| ~
SPLITT.h:2360:36: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h: In instantiation of ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTreeHybridLoopVisits() [with TraversalSpecification = PCMBaseCpp::MixedGaussian1D]’:
SPLITT.h:1936:40: required from ‘void SPLITT::PostOrderTraversal<TraversalSpecification>::TraverseTree(ModeType) [with TraversalSpecification = PCMBaseCpp::MixedGaussian1D; ModeType = SPLITT::PostOrderMode]’
1936 | case ModeType::HYBRID_LOOP_VISITS: TraverseTreeHybridLoopVisits(); break;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
SPLITT.h:623:28: required from ‘SPLITT::TraversalTask<TraversalSpecification>::StateType SPLITT::TraversalTask<TraversalSpecification>::TraverseTree(const ParameterType&, SPLITT::uint) [with TraversalSpecification = PCMBaseCpp::MixedGaussian1D; StateType = arma::Col<double>; ParameterType = std::vector<double>; SPLITT::uint = unsigned int]’
623 | algorithm_.TraverseTree(static_cast<ModeType>(mode));
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QuadraticPolyCommon.h:128:31: required from ‘std::string PCMBaseCpp::TraversalTaskWrapper<TraversalSpec>::TraverseTree(const ParameterType&, PCMBaseCpp::uint) [with TraversalSpec = PCMBaseCpp::MixedGaussian1D; std::string = std::__cxx11::basic_string<char>; ParameterType = std::vector<double>; PCMBaseCpp::uint = unsigned int]’
128 | taskObject_.TraverseTree(par, mode);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Rcpp.cpp:834:63: required from here
834 | .method( "TraverseTree", &QuadraticPolyMixedGaussian1D::TraverseTree )
| ^~~~~~~~~~~~
SPLITT.h:2435:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2435 | exception_handler_.Run([=]{
| ^~~~
2436 | ParentType::ref_spec_.InitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2437 | });
| ~
SPLITT.h:2435:30: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2448:32: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2448 | exception_handler_.Run([=]{
| ^~~~
2449 | if(i < ParentType::ref_tree_.num_tips()) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2450 | // i is a tip (only Visit)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~
2451 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2452 | } else if(i < ParentType::ref_tree_.num_nodes() - 1){
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2453 | // i is internal
| ~~~~~~~~~~~~~~~~
2454 | for(uint j: ParentType::ref_tree_.FindChildren(i)) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2455 | ParentType::ref_spec_.PruneNode(j, i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2456 | }
| ~
2457 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2458 | }
| ~
2459 | });
| ~
SPLITT.h:2448:32: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2466:32: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2466 | exception_handler_.Run([=]{
| ^~~~
2467 | if(i < ParentType::ref_tree_.num_tips()) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2468 | // i is a tip (only Visit)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~
2469 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2470 | } else if(i < ParentType::ref_tree_.num_nodes() - 1){
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2471 | // i is internal
| ~~~~~~~~~~~~~~~~
2472 | for(uint j: ParentType::ref_tree_.FindChildren(i)) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2473 | ParentType::ref_spec_.PruneNode(j, i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2474 | }
| ~
2475 | ParentType::ref_spec_.VisitNode(i);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2476 | }
| ~
2477 | });
| ~
SPLITT.h:2466:32: note: add explicit ‘this’ or ‘*this’ capture
SPLITT.h:2485:30: warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Wdeprecated]
2485 | exception_handler_.Run([=]{
| ^~~~
2486 | ParentType::ref_spec_.PruneNode(j, ParentType::ref_tree_.num_nodes() - 1);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2487 | });
| ~
SPLITT.h:2485:30: note: add explicit ‘this’ or ‘*this’ capture
g++ -std=gnu++20 -shared -L/usr/local/lib64 -o PCMBaseCpp.so Rcpp.o -llapack -L/data/gannet/ripley/R/R-devel/lib -lRblas -lgfortran -lm -lquadmath
make[1]: Leaving directory '/data/gannet/ripley/R/packages/tests-devel/PCMBaseCpp/src'
make[1]: Entering directory '/data/gannet/ripley/R/packages/tests-devel/PCMBaseCpp/src'
make[1]: Leaving directory '/data/gannet/ripley/R/packages/tests-devel/PCMBaseCpp/src'
installing to /data/gannet/ripley/R/packages/tests-devel/PCMBaseCpp.Rcheck/00LOCK-PCMBaseCpp/00new/PCMBaseCpp/libs
** R
** data
*** moving datasets to lazyload DB
** inst
** byte-compile and prepare package for lazy loading
** help
*** installing help indices
** building package indices
** installing vignettes
** testing if installed package can be loaded from temporary location
** checking absolute paths in shared objects and dynamic libraries
** testing if installed package can be loaded from final location
** testing if installed package keeps a record of temporary installation path
* DONE (PCMBaseCpp)