* installing *source* package ‘gesso’ ...
** package ‘gesso’ successfully unpacked and MD5 sums checked
** using staged installation
** libs
using C++ compiler: ‘g++-14 (GCC) 14.2.0’
using C++11
make[1]: Entering directory '/data/gannet/ripley/R/packages/tests-devel/gesso/src'
g++-14 -std=gnu++11 -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/RcppEigen/include' -I'/data/gannet/ripley/R/test-dev/RcppThread/include' -I'/data/gannet/ripley/R/test-dev/BH/include' -I'/data/gannet/ripley/R/test-dev/bigmemory/include' -I/usr/local/include    -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 RcppExports.cpp -o RcppExports.o
g++-14 -std=gnu++11 -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/RcppEigen/include' -I'/data/gannet/ripley/R/test-dev/RcppThread/include' -I'/data/gannet/ripley/R/test-dev/BH/include' -I'/data/gannet/ripley/R/test-dev/bigmemory/include' -I/usr/local/include    -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_compute_grid.cpp -o rcpp_compute_grid.o
In file included from /data/gannet/ripley/R/test-dev/BH/include/boost/smart_ptr/shared_ptr.hpp:18,
                 from /data/gannet/ripley/R/test-dev/BH/include/boost/shared_ptr.hpp:17,
                 from /data/gannet/ripley/R/test-dev/bigmemory/include/bigmemory/BigMatrix.h:10,
                 from /data/gannet/ripley/R/test-dev/bigmemory/include/bigmemory/MatrixAccessor.hpp:4,
                 from rcpp_compute_grid.cpp:1:
/data/gannet/ripley/R/test-dev/BH/include/boost/smart_ptr/detail/shared_count.hpp:361:33: warning: 'template<class> class std::auto_ptr' is deprecated: use 'std::unique_ptr' instead [-Wdeprecated-declarations]
  361 |     explicit shared_count( std::auto_ptr<Y> & r ): pi_( new sp_counted_impl_p<Y>( r.get() ) )
      |                                 ^~~~~~~~
In file included from /usr/local/gcc14/include/c++/14.2.0/memory:78,
                 from /data/gannet/ripley/R/test-dev/BH/include/boost/smart_ptr/detail/sp_counted_impl.hpp:35,
                 from /data/gannet/ripley/R/test-dev/BH/include/boost/smart_ptr/detail/shared_count.hpp:27:
/usr/local/gcc14/include/c++/14.2.0/bits/unique_ptr.h:59:28: note: declared here
   59 |   template<typename> class auto_ptr;
      |                            ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/smart_ptr/shared_ptr.hpp:251:65: warning: 'template<class> class std::auto_ptr' is deprecated: use 'std::unique_ptr' instead [-Wdeprecated-declarations]
  251 | template< class T, class R > struct sp_enable_if_auto_ptr< std::auto_ptr< T >, R >
      |                                                                 ^~~~~~~~
/usr/local/gcc14/include/c++/14.2.0/bits/unique_ptr.h:59:28: note: declared here
   59 |   template<typename> class auto_ptr;
      |                            ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/smart_ptr/shared_ptr.hpp:508:31: warning: 'template<class> class std::auto_ptr' is deprecated: use 'std::unique_ptr' instead [-Wdeprecated-declarations]
  508 |     explicit shared_ptr( std::auto_ptr<Y> & r ): px(r.get()), pn()
      |                               ^~~~~~~~
/usr/local/gcc14/include/c++/14.2.0/bits/unique_ptr.h:59:28: note: declared here
   59 |   template<typename> class auto_ptr;
      |                            ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/smart_ptr/shared_ptr.hpp:521:22: warning: 'template<class> class std::auto_ptr' is deprecated: use 'std::unique_ptr' instead [-Wdeprecated-declarations]
  521 |     shared_ptr( std::auto_ptr<Y> && r ): px(r.get()), pn()
      |                      ^~~~~~~~
/usr/local/gcc14/include/c++/14.2.0/bits/unique_ptr.h:59:28: note: declared here
   59 |   template<typename> class auto_ptr;
      |                            ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/smart_ptr/shared_ptr.hpp:604:34: warning: 'template<class> class std::auto_ptr' is deprecated: use 'std::unique_ptr' instead [-Wdeprecated-declarations]
  604 |     shared_ptr & operator=( std::auto_ptr<Y> & r )
      |                                  ^~~~~~~~
/usr/local/gcc14/include/c++/14.2.0/bits/unique_ptr.h:59:28: note: declared here
   59 |   template<typename> class auto_ptr;
      |                            ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/smart_ptr/shared_ptr.hpp:613:34: warning: 'template<class> class std::auto_ptr' is deprecated: use 'std::unique_ptr' instead [-Wdeprecated-declarations]
  613 |     shared_ptr & operator=( std::auto_ptr<Y> && r )
      |                                  ^~~~~~~~
/usr/local/gcc14/include/c++/14.2.0/bits/unique_ptr.h:59:28: note: declared here
   59 |   template<typename> class auto_ptr;
      |                            ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/smart_ptr/shared_ptr.hpp: In member function 'boost::shared_ptr<T>& boost::shared_ptr<T>::operator=(std::auto_ptr<_Up>&&)':
/data/gannet/ripley/R/test-dev/BH/include/boost/smart_ptr/shared_ptr.hpp:615:38: warning: 'template<class> class std::auto_ptr' is deprecated: use 'std::unique_ptr' instead [-Wdeprecated-declarations]
  615 |         this_type( static_cast< std::auto_ptr<Y> && >( r ) ).swap( *this );
      |                                      ^~~~~~~~
/usr/local/gcc14/include/c++/14.2.0/bits/unique_ptr.h:59:28: note: declared here
   59 |   template<typename> class auto_ptr;
      |                            ^~~~~~~~
g++-14 -std=gnu++11 -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/RcppEigen/include' -I'/data/gannet/ripley/R/test-dev/RcppThread/include' -I'/data/gannet/ripley/R/test-dev/BH/include' -I'/data/gannet/ripley/R/test-dev/bigmemory/include' -I/usr/local/include    -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_wrappers_cv.cpp -o rcpp_wrappers_cv.o
In file included from /data/gannet/ripley/R/test-dev/BH/include/boost/smart_ptr/shared_ptr.hpp:18,
                 from /data/gannet/ripley/R/test-dev/BH/include/boost/shared_ptr.hpp:17,
                 from /data/gannet/ripley/R/test-dev/bigmemory/include/bigmemory/BigMatrix.h:10,
                 from /data/gannet/ripley/R/test-dev/bigmemory/include/bigmemory/MatrixAccessor.hpp:4,
                 from rcpp_wrappers_cv.cpp:1:
/data/gannet/ripley/R/test-dev/BH/include/boost/smart_ptr/detail/shared_count.hpp:361:33: warning: 'template<class> class std::auto_ptr' is deprecated: use 'std::unique_ptr' instead [-Wdeprecated-declarations]
  361 |     explicit shared_count( std::auto_ptr<Y> & r ): pi_( new sp_counted_impl_p<Y>( r.get() ) )
      |                                 ^~~~~~~~
In file included from /usr/local/gcc14/include/c++/14.2.0/memory:78,
                 from /data/gannet/ripley/R/test-dev/BH/include/boost/smart_ptr/detail/sp_counted_impl.hpp:35,
                 from /data/gannet/ripley/R/test-dev/BH/include/boost/smart_ptr/detail/shared_count.hpp:27:
/usr/local/gcc14/include/c++/14.2.0/bits/unique_ptr.h:59:28: note: declared here
   59 |   template<typename> class auto_ptr;
      |                            ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/smart_ptr/shared_ptr.hpp:251:65: warning: 'template<class> class std::auto_ptr' is deprecated: use 'std::unique_ptr' instead [-Wdeprecated-declarations]
  251 | template< class T, class R > struct sp_enable_if_auto_ptr< std::auto_ptr< T >, R >
      |                                                                 ^~~~~~~~
/usr/local/gcc14/include/c++/14.2.0/bits/unique_ptr.h:59:28: note: declared here
   59 |   template<typename> class auto_ptr;
      |                            ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/smart_ptr/shared_ptr.hpp:508:31: warning: 'template<class> class std::auto_ptr' is deprecated: use 'std::unique_ptr' instead [-Wdeprecated-declarations]
  508 |     explicit shared_ptr( std::auto_ptr<Y> & r ): px(r.get()), pn()
      |                               ^~~~~~~~
/usr/local/gcc14/include/c++/14.2.0/bits/unique_ptr.h:59:28: note: declared here
   59 |   template<typename> class auto_ptr;
      |                            ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/smart_ptr/shared_ptr.hpp:521:22: warning: 'template<class> class std::auto_ptr' is deprecated: use 'std::unique_ptr' instead [-Wdeprecated-declarations]
  521 |     shared_ptr( std::auto_ptr<Y> && r ): px(r.get()), pn()
      |                      ^~~~~~~~
/usr/local/gcc14/include/c++/14.2.0/bits/unique_ptr.h:59:28: note: declared here
   59 |   template<typename> class auto_ptr;
      |                            ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/smart_ptr/shared_ptr.hpp:604:34: warning: 'template<class> class std::auto_ptr' is deprecated: use 'std::unique_ptr' instead [-Wdeprecated-declarations]
  604 |     shared_ptr & operator=( std::auto_ptr<Y> & r )
      |                                  ^~~~~~~~
/usr/local/gcc14/include/c++/14.2.0/bits/unique_ptr.h:59:28: note: declared here
   59 |   template<typename> class auto_ptr;
      |                            ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/smart_ptr/shared_ptr.hpp:613:34: warning: 'template<class> class std::auto_ptr' is deprecated: use 'std::unique_ptr' instead [-Wdeprecated-declarations]
  613 |     shared_ptr & operator=( std::auto_ptr<Y> && r )
      |                                  ^~~~~~~~
/usr/local/gcc14/include/c++/14.2.0/bits/unique_ptr.h:59:28: note: declared here
   59 |   template<typename> class auto_ptr;
      |                            ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/smart_ptr/shared_ptr.hpp: In member function 'boost::shared_ptr<T>& boost::shared_ptr<T>::operator=(std::auto_ptr<_Up>&&)':
/data/gannet/ripley/R/test-dev/BH/include/boost/smart_ptr/shared_ptr.hpp:615:38: warning: 'template<class> class std::auto_ptr' is deprecated: use 'std::unique_ptr' instead [-Wdeprecated-declarations]
  615 |         this_type( static_cast< std::auto_ptr<Y> && >( r ) ).swap( *this );
      |                                      ^~~~~~~~
/usr/local/gcc14/include/c++/14.2.0/bits/unique_ptr.h:59:28: note: declared here
   59 |   template<typename> class auto_ptr;
      |                            ^~~~~~~~
In file included from rcpp_compute_grid.cpp:7:
Solver.h: In instantiation of 'void Solver<TG>::update_weighted_variables(bool) [with TG = Eigen::Map<Eigen::SparseMatrix<double, 0, int> >]':
GaussianSolver.h:117:32:   required from 'void GaussianSolver<TG>::init() [with TG = Eigen::Map<Eigen::SparseMatrix<double, 0, int> >]'
  117 |       update_weighted_variables(false);
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~
GaussianSolver.h:112:7:   required from 'GaussianSolver<TG>::GaussianSolver(const MapSparseMat&, const Eigen::Map<Eigen::Matrix<double, -1, 1>, 0, Eigen::Stride<0, 0> >&, const Eigen::Map<Eigen::Matrix<double, -1, 1>, 0, Eigen::Stride<0, 0> >&, const Eigen::Map<Eigen::Matrix<double, -1, -1>, 0, Eigen::Stride<0, 0> >&, const Eigen::Map<Eigen::Matrix<double, -1, 1>, 0, Eigen::Stride<0, 0> >&, bool) [with TG = Eigen::Map<Eigen::SparseMatrix<double, 0, int> >; MapSparseMat = Eigen::Map<Eigen::SparseMatrix<double, 0, int> >]'
  112 |       init();
      |       ^~~~
rcpp_compute_grid.cpp:29:24:   required from 'double computeLambdaMaxRcpp(const TG&, const Eigen::Map<Eigen::Matrix<double, -1, 1>, 0, Eigen::Stride<0, 0> >&, const Eigen::Map<Eigen::Matrix<double, -1, 1>, 0, Eigen::Stride<0, 0> >&, const Eigen::Map<Eigen::Matrix<double, -1, -1>, 0, Eigen::Stride<0, 0> >&, const Eigen::Map<Eigen::Matrix<double, -1, 1>, 0, Eigen::Stride<0, 0> >&, const Rcpp::LogicalVector&, const std::string&) [with TG = Eigen::Map<Eigen::SparseMatrix<double, 0, int> >; Rcpp::LogicalVector = Rcpp::Vector<10, Rcpp::PreserveStorage>; std::string = std::__cxx11::basic_string<char>]'
   29 |     GaussianSolver<TG> solver(G, E, Y, C, weights, normalize[0]);
      |                        ^~~~~~
rcpp_compute_grid.cpp:60:46:   required from here
   60 |     return computeLambdaMaxRcpp<MapSparseMat>(Rcpp::as<MapSparseMat>(G), E, Y, C,
      |            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   61 |                                               weights, normalize, family);
      |                                               ~~~~~~~~~~~~~~~~~~~~~~~~~~~
Solver.h:237:25: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
  237 |       for (int j = 0; j < working_set.size(); ++j) {
      |                       ~~^~~~~~~~~~~~~~~~~~~~
Solver.h: In instantiation of 'void Solver<TG>::update_weighted_variables(bool) [with TG = Eigen::Map<const Eigen::Matrix<double, -1, -1> >]':
GaussianSolver.h:117:32:   required from 'void GaussianSolver<TG>::init() [with TG = Eigen::Map<const Eigen::Matrix<double, -1, -1> >]'
  117 |       update_weighted_variables(false);
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~
GaussianSolver.h:94:7:   required from 'GaussianSolver<TG>::GaussianSolver(const MapMat&, const Eigen::Map<Eigen::Matrix<double, -1, 1>, 0, Eigen::Stride<0, 0> >&, const Eigen::Map<Eigen::Matrix<double, -1, 1>, 0, Eigen::Stride<0, 0> >&, const Eigen::Map<Eigen::Matrix<double, -1, -1>, 0, Eigen::Stride<0, 0> >&, const Eigen::Map<Eigen::Matrix<double, -1, 1>, 0, Eigen::Stride<0, 0> >&, bool) [with TG = Eigen::Map<const Eigen::Matrix<double, -1, -1> >; MapMat = Eigen::Map<const Eigen::Matrix<double, -1, -1> >]'
   94 |       init();
      |       ^~~~
rcpp_compute_grid.cpp:29:24:   required from 'double computeLambdaMaxRcpp(const TG&, const Eigen::Map<Eigen::Matrix<double, -1, 1>, 0, Eigen::Stride<0, 0> >&, const Eigen::Map<Eigen::Matrix<double, -1, 1>, 0, Eigen::Stride<0, 0> >&, const Eigen::Map<Eigen::Matrix<double, -1, -1>, 0, Eigen::Stride<0, 0> >&, const Eigen::Map<Eigen::Matrix<double, -1, 1>, 0, Eigen::Stride<0, 0> >&, const Rcpp::LogicalVector&, const std::string&) [with TG = Eigen::Map<const Eigen::Matrix<double, -1, -1> >; Rcpp::LogicalVector = Rcpp::Vector<10, Rcpp::PreserveStorage>; std::string = std::__cxx11::basic_string<char>]'
   29 |     GaussianSolver<TG> solver(G, E, Y, C, weights, normalize[0]);
      |                        ^~~~~~
rcpp_compute_grid.cpp:66:40:   required from here
   66 |     return computeLambdaMaxRcpp<MapMat>(Gmap, E, Y, C, weights, normalize, family);
      |            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Solver.h:237:25: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
  237 |       for (int j = 0; j < working_set.size(); ++j) {
      |                       ~~^~~~~~~~~~~~~~~~~~~~
rcpp_wrappers_cv.cpp: In instantiation of 'void fitModelCVRcppSingleFold(const TG&, const Eigen::Map<Eigen::Matrix<double, -1, 1>, 0, Eigen::Stride<0, 0> >&, const Eigen::Map<Eigen::Matrix<double, -1, 1>, 0, Eigen::Stride<0, 0> >&, const Eigen::Map<Eigen::Matrix<double, -1, -1>, 0, Eigen::Stride<0, 0> >&, const VecXd&, const Rcpp::LogicalVector&, const Eigen::VectorXd&, double, const std::string&, double, int, int, int, Eigen::MatrixXd&, Eigen::MatrixXd&, Eigen::MatrixXi&, Eigen::MatrixXi&, Eigen::MatrixXi&) [with TG = Eigen::Map<Eigen::SparseMatrix<double, 0, int> >; VecXd = Eigen::Matrix<double, -1, 1>; Rcpp::LogicalVector = Rcpp::Vector<10, Rcpp::PreserveStorage>; Eigen::VectorXd = Eigen::Matrix<double, -1, 1>; std::string = std::__cxx11::basic_string<char>; Eigen::MatrixXd = Eigen::Matrix<double, -1, -1>; Eigen::MatrixXi = Eigen::Matrix<int, -1, -1>]':
rcpp_wrappers_cv.cpp:143:35:   required from 'Rcpp::List fitModelCVRcpp(const TG&, const Eigen::Map<Eigen::Matrix<double, -1, 1>, 0, Eigen::Stride<0, 0> >&, const Eigen::Map<Eigen::Matrix<double, -1, 1>, 0, Eigen::Stride<0, 0> >&, const Eigen::Map<Eigen::Matrix<double, -1, -1>, 0, Eigen::Stride<0, 0> >&, const Rcpp::LogicalVector&, const Eigen::VectorXd&, double, const std::string&, double, int, int, const Eigen::VectorXd&, int, int) [with TG = Eigen::Map<Eigen::SparseMatrix<double, 0, int> >; Rcpp::List = Rcpp::Vector<19>; Rcpp::LogicalVector = Rcpp::Vector<10, Rcpp::PreserveStorage>; Eigen::VectorXd = Eigen::Matrix<double, -1, 1>; std::string = std::__cxx11::basic_string<char>]'
  143 |       fitModelCVRcppSingleFold<TG>(G, E, Y, C, fold_ids, normalize, grid, alpha, family,
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  144 |                            tolerance, max_iterations, min_working_set_size,
      |                            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  145 |                            test_fold_id, xbeta, test_loss, beta_g_nonzero, beta_gxe_nonzero, has_converged);
      |                            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
rcpp_wrappers_cv.cpp:183:40:   required from here
  183 |     return fitModelCVRcpp<MapSparseMat>(Rcpp::as<MapSparseMat>(G), E, Y, C,
      |            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  184 |                                     normalize, grid, alpha,
      |                                     ~~~~~~~~~~~~~~~~~~~~~~~
  185 |                                     family, tolerance, max_iterations, min_working_set_size,
      |                                     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  186 |                                     fold_ids, seed, ncores);
      |                                     ~~~~~~~~~~~~~~~~~~~~~~~
rcpp_wrappers_cv.cpp:91:25: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   91 |       for (int i = 0; i < test_idx.size(); ++i) {
      |                       ~~^~~~~~~~~~~~~~~~~
rcpp_wrappers_cv.cpp: In instantiation of 'void fitModelCVRcppSingleFold(const TG&, const Eigen::Map<Eigen::Matrix<double, -1, 1>, 0, Eigen::Stride<0, 0> >&, const Eigen::Map<Eigen::Matrix<double, -1, 1>, 0, Eigen::Stride<0, 0> >&, const Eigen::Map<Eigen::Matrix<double, -1, -1>, 0, Eigen::Stride<0, 0> >&, const VecXd&, const Rcpp::LogicalVector&, const Eigen::VectorXd&, double, const std::string&, double, int, int, int, Eigen::MatrixXd&, Eigen::MatrixXd&, Eigen::MatrixXi&, Eigen::MatrixXi&, Eigen::MatrixXi&) [with TG = Eigen::Map<const Eigen::Matrix<double, -1, -1> >; VecXd = Eigen::Matrix<double, -1, 1>; Rcpp::LogicalVector = Rcpp::Vector<10, Rcpp::PreserveStorage>; Eigen::VectorXd = Eigen::Matrix<double, -1, 1>; std::string = std::__cxx11::basic_string<char>; Eigen::MatrixXd = Eigen::Matrix<double, -1, -1>; Eigen::MatrixXi = Eigen::Matrix<int, -1, -1>]':
rcpp_wrappers_cv.cpp:143:35:   required from 'Rcpp::List fitModelCVRcpp(const TG&, const Eigen::Map<Eigen::Matrix<double, -1, 1>, 0, Eigen::Stride<0, 0> >&, const Eigen::Map<Eigen::Matrix<double, -1, 1>, 0, Eigen::Stride<0, 0> >&, const Eigen::Map<Eigen::Matrix<double, -1, -1>, 0, Eigen::Stride<0, 0> >&, const Rcpp::LogicalVector&, const Eigen::VectorXd&, double, const std::string&, double, int, int, const Eigen::VectorXd&, int, int) [with TG = Eigen::Map<const Eigen::Matrix<double, -1, -1> >; Rcpp::List = Rcpp::Vector<19>; Rcpp::LogicalVector = Rcpp::Vector<10, Rcpp::PreserveStorage>; Eigen::VectorXd = Eigen::Matrix<double, -1, 1>; std::string = std::__cxx11::basic_string<char>]'
  143 |       fitModelCVRcppSingleFold<TG>(G, E, Y, C, fold_ids, normalize, grid, alpha, family,
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  144 |                            tolerance, max_iterations, min_working_set_size,
      |                            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  145 |                            test_fold_id, xbeta, test_loss, beta_g_nonzero, beta_gxe_nonzero, has_converged);
      |                            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
rcpp_wrappers_cv.cpp:191:34:   required from here
  191 |     return fitModelCVRcpp<MapMat>(Gmap, E, Y, C, normalize, grid, alpha,
      |            ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  192 |                                   family, tolerance, max_iterations, min_working_set_size,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  193 |                                   fold_ids, seed, ncores);
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~
rcpp_wrappers_cv.cpp:91:25: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   91 |       for (int i = 0; i < test_idx.size(); ++i) {
      |                       ~~^~~~~~~~~~~~~~~~~
In file included from rcpp_wrappers_cv.cpp:13:
Solver.h: In instantiation of 'void Solver<TG>::update_weighted_variables(bool) [with TG = Eigen::Map<Eigen::SparseMatrix<double, 0, int> >]':
GaussianSolver.h:117:32:   required from 'void GaussianSolver<TG>::init() [with TG = Eigen::Map<Eigen::SparseMatrix<double, 0, int> >]'
  117 |       update_weighted_variables(false);
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~
GaussianSolver.h:112:7:   required from 'GaussianSolver<TG>::GaussianSolver(const MapSparseMat&, const Eigen::Map<Eigen::Matrix<double, -1, 1>, 0, Eigen::Stride<0, 0> >&, const Eigen::Map<Eigen::Matrix<double, -1, 1>, 0, Eigen::Stride<0, 0> >&, const Eigen::Map<Eigen::Matrix<double, -1, -1>, 0, Eigen::Stride<0, 0> >&, const Eigen::Map<Eigen::Matrix<double, -1, 1>, 0, Eigen::Stride<0, 0> >&, bool) [with TG = Eigen::Map<Eigen::SparseMatrix<double, 0, int> >; MapSparseMat = Eigen::Map<Eigen::SparseMatrix<double, 0, int> >]'
  112 |       init();
      |       ^~~~
rcpp_wrappers_cv.cpp:55:7:   required from 'void fitModelCVRcppSingleFold(const TG&, const Eigen::Map<Eigen::Matrix<double, -1, 1>, 0, Eigen::Stride<0, 0> >&, const Eigen::Map<Eigen::Matrix<double, -1, 1>, 0, Eigen::Stride<0, 0> >&, const Eigen::Map<Eigen::Matrix<double, -1, -1>, 0, Eigen::Stride<0, 0> >&, const VecXd&, const Rcpp::LogicalVector&, const Eigen::VectorXd&, double, const std::string&, double, int, int, int, Eigen::MatrixXd&, Eigen::MatrixXd&, Eigen::MatrixXi&, Eigen::MatrixXi&, Eigen::MatrixXi&) [with TG = Eigen::Map<Eigen::SparseMatrix<double, 0, int> >; VecXd = Eigen::Matrix<double, -1, 1>; Rcpp::LogicalVector = Rcpp::Vector<10, Rcpp::PreserveStorage>; Eigen::VectorXd = Eigen::Matrix<double, -1, 1>; std::string = std::__cxx11::basic_string<char>; Eigen::MatrixXd = Eigen::Matrix<double, -1, -1>; Eigen::MatrixXi = Eigen::Matrix<int, -1, -1>]'
   55 |       new GaussianSolver<TG>(G, E, Y, C, weights_map, normalize[0]));
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
rcpp_wrappers_cv.cpp:143:35:   required from 'Rcpp::List fitModelCVRcpp(const TG&, const Eigen::Map<Eigen::Matrix<double, -1, 1>, 0, Eigen::Stride<0, 0> >&, const Eigen::Map<Eigen::Matrix<double, -1, 1>, 0, Eigen::Stride<0, 0> >&, const Eigen::Map<Eigen::Matrix<double, -1, -1>, 0, Eigen::Stride<0, 0> >&, const Rcpp::LogicalVector&, const Eigen::VectorXd&, double, const std::string&, double, int, int, const Eigen::VectorXd&, int, int) [with TG = Eigen::Map<Eigen::SparseMatrix<double, 0, int> >; Rcpp::List = Rcpp::Vector<19>; Rcpp::LogicalVector = Rcpp::Vector<10, Rcpp::PreserveStorage>; Eigen::VectorXd = Eigen::Matrix<double, -1, 1>; std::string = std::__cxx11::basic_string<char>]'
  143 |       fitModelCVRcppSingleFold<TG>(G, E, Y, C, fold_ids, normalize, grid, alpha, family,
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  144 |                            tolerance, max_iterations, min_working_set_size,
      |                            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  145 |                            test_fold_id, xbeta, test_loss, beta_g_nonzero, beta_gxe_nonzero, has_converged);
      |                            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
rcpp_wrappers_cv.cpp:183:40:   required from here
  183 |     return fitModelCVRcpp<MapSparseMat>(Rcpp::as<MapSparseMat>(G), E, Y, C,
      |            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  184 |                                     normalize, grid, alpha,
      |                                     ~~~~~~~~~~~~~~~~~~~~~~~
  185 |                                     family, tolerance, max_iterations, min_working_set_size,
      |                                     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  186 |                                     fold_ids, seed, ncores);
      |                                     ~~~~~~~~~~~~~~~~~~~~~~~
Solver.h:237:25: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
  237 |       for (int j = 0; j < working_set.size(); ++j) {
      |                       ~~^~~~~~~~~~~~~~~~~~~~
Solver.h: In instantiation of 'void Solver<TG>::update_weighted_variables(bool) [with TG = Eigen::Map<const Eigen::Matrix<double, -1, -1> >]':
GaussianSolver.h:117:32:   required from 'void GaussianSolver<TG>::init() [with TG = Eigen::Map<const Eigen::Matrix<double, -1, -1> >]'
  117 |       update_weighted_variables(false);
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~
GaussianSolver.h:94:7:   required from 'GaussianSolver<TG>::GaussianSolver(const MapMat&, const Eigen::Map<Eigen::Matrix<double, -1, 1>, 0, Eigen::Stride<0, 0> >&, const Eigen::Map<Eigen::Matrix<double, -1, 1>, 0, Eigen::Stride<0, 0> >&, const Eigen::Map<Eigen::Matrix<double, -1, -1>, 0, Eigen::Stride<0, 0> >&, const Eigen::Map<Eigen::Matrix<double, -1, 1>, 0, Eigen::Stride<0, 0> >&, bool) [with TG = Eigen::Map<const Eigen::Matrix<double, -1, -1> >; MapMat = Eigen::Map<const Eigen::Matrix<double, -1, -1> >]'
   94 |       init();
      |       ^~~~
rcpp_wrappers_cv.cpp:55:7:   required from 'void fitModelCVRcppSingleFold(const TG&, const Eigen::Map<Eigen::Matrix<double, -1, 1>, 0, Eigen::Stride<0, 0> >&, const Eigen::Map<Eigen::Matrix<double, -1, 1>, 0, Eigen::Stride<0, 0> >&, const Eigen::Map<Eigen::Matrix<double, -1, -1>, 0, Eigen::Stride<0, 0> >&, const VecXd&, const Rcpp::LogicalVector&, const Eigen::VectorXd&, double, const std::string&, double, int, int, int, Eigen::MatrixXd&, Eigen::MatrixXd&, Eigen::MatrixXi&, Eigen::MatrixXi&, Eigen::MatrixXi&) [with TG = Eigen::Map<const Eigen::Matrix<double, -1, -1> >; VecXd = Eigen::Matrix<double, -1, 1>; Rcpp::LogicalVector = Rcpp::Vector<10, Rcpp::PreserveStorage>; Eigen::VectorXd = Eigen::Matrix<double, -1, 1>; std::string = std::__cxx11::basic_string<char>; Eigen::MatrixXd = Eigen::Matrix<double, -1, -1>; Eigen::MatrixXi = Eigen::Matrix<int, -1, -1>]'
   55 |       new GaussianSolver<TG>(G, E, Y, C, weights_map, normalize[0]));
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
rcpp_wrappers_cv.cpp:143:35:   required from 'Rcpp::List fitModelCVRcpp(const TG&, const Eigen::Map<Eigen::Matrix<double, -1, 1>, 0, Eigen::Stride<0, 0> >&, const Eigen::Map<Eigen::Matrix<double, -1, 1>, 0, Eigen::Stride<0, 0> >&, const Eigen::Map<Eigen::Matrix<double, -1, -1>, 0, Eigen::Stride<0, 0> >&, const Rcpp::LogicalVector&, const Eigen::VectorXd&, double, const std::string&, double, int, int, const Eigen::VectorXd&, int, int) [with TG = Eigen::Map<const Eigen::Matrix<double, -1, -1> >; Rcpp::List = Rcpp::Vector<19>; Rcpp::LogicalVector = Rcpp::Vector<10, Rcpp::PreserveStorage>; Eigen::VectorXd = Eigen::Matrix<double, -1, 1>; std::string = std::__cxx11::basic_string<char>]'
  143 |       fitModelCVRcppSingleFold<TG>(G, E, Y, C, fold_ids, normalize, grid, alpha, family,
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  144 |                            tolerance, max_iterations, min_working_set_size,
      |                            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  145 |                            test_fold_id, xbeta, test_loss, beta_g_nonzero, beta_gxe_nonzero, has_converged);
      |                            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
rcpp_wrappers_cv.cpp:191:34:   required from here
  191 |     return fitModelCVRcpp<MapMat>(Gmap, E, Y, C, normalize, grid, alpha,
      |            ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  192 |                                   family, tolerance, max_iterations, min_working_set_size,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  193 |                                   fold_ids, seed, ncores);
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~
Solver.h:237:25: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
  237 |       for (int j = 0; j < working_set.size(); ++j) {
      |                       ~~^~~~~~~~~~~~~~~~~~~~
g++-14 -std=gnu++11 -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/RcppEigen/include' -I'/data/gannet/ripley/R/test-dev/RcppThread/include' -I'/data/gannet/ripley/R/test-dev/BH/include' -I'/data/gannet/ripley/R/test-dev/bigmemory/include' -I/usr/local/include    -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_wrappers_fit.cpp -o rcpp_wrappers_fit.o
In file included from /data/gannet/ripley/R/test-dev/BH/include/boost/smart_ptr/shared_ptr.hpp:18,
                 from /data/gannet/ripley/R/test-dev/BH/include/boost/shared_ptr.hpp:17,
                 from /data/gannet/ripley/R/test-dev/bigmemory/include/bigmemory/BigMatrix.h:10,
                 from /data/gannet/ripley/R/test-dev/bigmemory/include/bigmemory/MatrixAccessor.hpp:4,
                 from rcpp_wrappers_fit.cpp:1:
/data/gannet/ripley/R/test-dev/BH/include/boost/smart_ptr/detail/shared_count.hpp:361:33: warning: 'template<class> class std::auto_ptr' is deprecated: use 'std::unique_ptr' instead [-Wdeprecated-declarations]
  361 |     explicit shared_count( std::auto_ptr<Y> & r ): pi_( new sp_counted_impl_p<Y>( r.get() ) )
      |                                 ^~~~~~~~
In file included from /usr/local/gcc14/include/c++/14.2.0/memory:78,
                 from /data/gannet/ripley/R/test-dev/BH/include/boost/smart_ptr/detail/sp_counted_impl.hpp:35,
                 from /data/gannet/ripley/R/test-dev/BH/include/boost/smart_ptr/detail/shared_count.hpp:27:
/usr/local/gcc14/include/c++/14.2.0/bits/unique_ptr.h:59:28: note: declared here
   59 |   template<typename> class auto_ptr;
      |                            ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/smart_ptr/shared_ptr.hpp:251:65: warning: 'template<class> class std::auto_ptr' is deprecated: use 'std::unique_ptr' instead [-Wdeprecated-declarations]
  251 | template< class T, class R > struct sp_enable_if_auto_ptr< std::auto_ptr< T >, R >
      |                                                                 ^~~~~~~~
/usr/local/gcc14/include/c++/14.2.0/bits/unique_ptr.h:59:28: note: declared here
   59 |   template<typename> class auto_ptr;
      |                            ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/smart_ptr/shared_ptr.hpp:508:31: warning: 'template<class> class std::auto_ptr' is deprecated: use 'std::unique_ptr' instead [-Wdeprecated-declarations]
  508 |     explicit shared_ptr( std::auto_ptr<Y> & r ): px(r.get()), pn()
      |                               ^~~~~~~~
/usr/local/gcc14/include/c++/14.2.0/bits/unique_ptr.h:59:28: note: declared here
   59 |   template<typename> class auto_ptr;
      |                            ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/smart_ptr/shared_ptr.hpp:521:22: warning: 'template<class> class std::auto_ptr' is deprecated: use 'std::unique_ptr' instead [-Wdeprecated-declarations]
  521 |     shared_ptr( std::auto_ptr<Y> && r ): px(r.get()), pn()
      |                      ^~~~~~~~
/usr/local/gcc14/include/c++/14.2.0/bits/unique_ptr.h:59:28: note: declared here
   59 |   template<typename> class auto_ptr;
      |                            ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/smart_ptr/shared_ptr.hpp:604:34: warning: 'template<class> class std::auto_ptr' is deprecated: use 'std::unique_ptr' instead [-Wdeprecated-declarations]
  604 |     shared_ptr & operator=( std::auto_ptr<Y> & r )
      |                                  ^~~~~~~~
/usr/local/gcc14/include/c++/14.2.0/bits/unique_ptr.h:59:28: note: declared here
   59 |   template<typename> class auto_ptr;
      |                            ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/smart_ptr/shared_ptr.hpp:613:34: warning: 'template<class> class std::auto_ptr' is deprecated: use 'std::unique_ptr' instead [-Wdeprecated-declarations]
  613 |     shared_ptr & operator=( std::auto_ptr<Y> && r )
      |                                  ^~~~~~~~
/usr/local/gcc14/include/c++/14.2.0/bits/unique_ptr.h:59:28: note: declared here
   59 |   template<typename> class auto_ptr;
      |                            ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/smart_ptr/shared_ptr.hpp: In member function 'boost::shared_ptr<T>& boost::shared_ptr<T>::operator=(std::auto_ptr<_Up>&&)':
/data/gannet/ripley/R/test-dev/BH/include/boost/smart_ptr/shared_ptr.hpp:615:38: warning: 'template<class> class std::auto_ptr' is deprecated: use 'std::unique_ptr' instead [-Wdeprecated-declarations]
  615 |         this_type( static_cast< std::auto_ptr<Y> && >( r ) ).swap( *this );
      |                                      ^~~~~~~~
/usr/local/gcc14/include/c++/14.2.0/bits/unique_ptr.h:59:28: note: declared here
   59 |   template<typename> class auto_ptr;
      |                            ^~~~~~~~
In file included from rcpp_wrappers_cv.cpp:15:
BinomialSolver.h: In instantiation of 'double BinomialSolver<TG>::get_test_loss(const std::vector<int>&) [with TG = Eigen::Map<const Eigen::Matrix<double, -1, -1> >]':
BinomialSolver.h:420:20:   required from here
  420 |     virtual double get_test_loss(const std::vector<int>& test_idx) {
      |                    ^~~~~~~~~~~~~
BinomialSolver.h:423:25: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
  423 |       for (int i = 0; i < test_idx.size(); ++i) {
      |                       ~~^~~~~~~~~~~~~~~~~
In file included from rcpp_wrappers_cv.cpp:14:
GaussianSolver.h: In instantiation of 'double GaussianSolver<TG>::get_test_loss(const std::vector<int>&) [with TG = Eigen::Map<const Eigen::Matrix<double, -1, -1> >]':
GaussianSolver.h:346:20:   required from here
  346 |     virtual double get_test_loss(const std::vector<int>& test_idx) {
      |                    ^~~~~~~~~~~~~
GaussianSolver.h:349:25: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
  349 |       for (int i = 0; i < test_idx.size(); ++i) {
      |                       ~~^~~~~~~~~~~~~~~~~
BinomialSolver.h: In instantiation of 'double BinomialSolver<TG>::get_test_loss(const std::vector<int>&) [with TG = Eigen::Map<Eigen::SparseMatrix<double, 0, int> >]':
BinomialSolver.h:420:20:   required from here
  420 |     virtual double get_test_loss(const std::vector<int>& test_idx) {
      |                    ^~~~~~~~~~~~~
BinomialSolver.h:423:25: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
  423 |       for (int i = 0; i < test_idx.size(); ++i) {
      |                       ~~^~~~~~~~~~~~~~~~~
GaussianSolver.h: In instantiation of 'double GaussianSolver<TG>::get_test_loss(const std::vector<int>&) [with TG = Eigen::Map<Eigen::SparseMatrix<double, 0, int> >]':
GaussianSolver.h:346:20:   required from here
  346 |     virtual double get_test_loss(const std::vector<int>& test_idx) {
      |                    ^~~~~~~~~~~~~
GaussianSolver.h:349:25: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
  349 |       for (int i = 0; i < test_idx.size(); ++i) {
      |                       ~~^~~~~~~~~~~~~~~~~
BinomialSolver.h: In instantiation of 'void BinomialSolver<TG>::update_working_set(double, double, double, int) [with TG = Eigen::Map<const Eigen::Matrix<double, -1, -1> >]':
BinomialSolver.h:207:9:   required from 'int BinomialSolver<TG>::solve(double, double, double, int, int) [with TG = Eigen::Map<const Eigen::Matrix<double, -1, -1> >]'
  207 |         update_working_set(lambda_1, lambda_2, duality_gap, working_set_size);
      |         ^~~~~~~~~~~~~~~~~~
BinomialSolver.h:182:9:   required from here
  182 |     int solve(double lambda_1, double lambda_2, double tolerance, int max_iterations, int min_working_set_size) {
      |         ^~~~~
BinomialSolver.h:410:93: warning: comparison of integer expressions of different signedness: 'std::vector<int>::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
  410 |         if (b_g[index] == 0 && b_gxe[index] == 0 && safe_set_g[index] && working_set.size() < working_set_size) {
      |                                                                          ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~
Solver.h: In instantiation of 'double Solver<TG>::update_b_for_working_set(double, double, bool) [with TG = Eigen::Map<const Eigen::Matrix<double, -1, -1> >]':
BinomialSolver.h:232:48:   required from 'int BinomialSolver<TG>::solve(double, double, double, int, int) [with TG = Eigen::Map<const Eigen::Matrix<double, -1, -1> >]'
  232 |             max_diff = update_b_for_working_set(lambda_1, lambda_2, false);
      |                        ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
BinomialSolver.h:182:9:   required from here
  182 |     int solve(double lambda_1, double lambda_2, double tolerance, int max_iterations, int min_working_set_size) {
      |         ^~~~~
Solver.h:278:23: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
  278 |     for (int k = 0; k < working_set.size(); ++k) {
      |                     ~~^~~~~~~~~~~~~~~~~~~~
In file included from rcpp_compute_grid.cpp:9:
BinomialSolver.h: In instantiation of 'double BinomialSolver<TG>::get_test_loss(const std::vector<int>&) [with TG = Eigen::Map<const Eigen::Matrix<double, -1, -1> >]':
BinomialSolver.h:420:20:   required from here
  420 |     virtual double get_test_loss(const std::vector<int>& test_idx) {
      |                    ^~~~~~~~~~~~~
BinomialSolver.h:423:25: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
  423 |       for (int i = 0; i < test_idx.size(); ++i) {
      |                       ~~^~~~~~~~~~~~~~~~~
In file included from rcpp_compute_grid.cpp:8:
GaussianSolver.h: In instantiation of 'double GaussianSolver<TG>::get_test_loss(const std::vector<int>&) [with TG = Eigen::Map<const Eigen::Matrix<double, -1, -1> >]':
GaussianSolver.h:346:20:   required from here
  346 |     virtual double get_test_loss(const std::vector<int>& test_idx) {
      |                    ^~~~~~~~~~~~~
GaussianSolver.h:349:25: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
  349 |       for (int i = 0; i < test_idx.size(); ++i) {
      |                       ~~^~~~~~~~~~~~~~~~~
BinomialSolver.h: In instantiation of 'double BinomialSolver<TG>::get_test_loss(const std::vector<int>&) [with TG = Eigen::Map<Eigen::SparseMatrix<double, 0, int> >]':
BinomialSolver.h:420:20:   required from here
  420 |     virtual double get_test_loss(const std::vector<int>& test_idx) {
      |                    ^~~~~~~~~~~~~
BinomialSolver.h:423:25: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
  423 |       for (int i = 0; i < test_idx.size(); ++i) {
      |                       ~~^~~~~~~~~~~~~~~~~
GaussianSolver.h: In instantiation of 'double GaussianSolver<TG>::get_test_loss(const std::vector<int>&) [with TG = Eigen::Map<Eigen::SparseMatrix<double, 0, int> >]':
GaussianSolver.h:346:20:   required from here
  346 |     virtual double get_test_loss(const std::vector<int>& test_idx) {
      |                    ^~~~~~~~~~~~~
GaussianSolver.h:349:25: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
  349 |       for (int i = 0; i < test_idx.size(); ++i) {
      |                       ~~^~~~~~~~~~~~~~~~~
Solver.h:271:12: warning: unused variable 'b_0_old' [-Wunused-variable]
  271 |     double b_0_old, b_e_old, b_g_old, b_gxe_old, b_g_new;
      |            ^~~~~~~
Solver.h:271:21: warning: unused variable 'b_e_old' [-Wunused-variable]
  271 |     double b_0_old, b_e_old, b_g_old, b_gxe_old, b_g_new;
      |                     ^~~~~~~
GaussianSolver.h: In instantiation of 'void GaussianSolver<TG>::update_working_set(double, double, double, int) [with TG = Eigen::Map<const Eigen::Matrix<double, -1, -1> >]':
GaussianSolver.h:163:9:   required from 'int GaussianSolver<TG>::solve(double, double, double, int, int) [with TG = Eigen::Map<const Eigen::Matrix<double, -1, -1> >]'
  163 |         update_working_set(lambda_1, lambda_2, duality_gap, working_set_size);
      |         ^~~~~~~~~~~~~~~~~~
GaussianSolver.h:142:17:   required from here
  142 |     virtual int solve(double lambda_1, double lambda_2, double tolerance, int max_iterations, int min_working_set_size) {
      |                 ^~~~~
GaussianSolver.h:306:93: warning: comparison of integer expressions of different signedness: 'std::vector<int>::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
  306 |         if (b_g[index] == 0 && b_gxe[index] == 0 && safe_set_g[index] && working_set.size() < working_set_size) {
      |                                                                          ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~
BinomialSolver.h: In instantiation of 'void BinomialSolver<TG>::update_working_set(double, double, double, int) [with TG = Eigen::Map<Eigen::SparseMatrix<double, 0, int> >]':
BinomialSolver.h:207:9:   required from 'int BinomialSolver<TG>::solve(double, double, double, int, int) [with TG = Eigen::Map<Eigen::SparseMatrix<double, 0, int> >]'
  207 |         update_working_set(lambda_1, lambda_2, duality_gap, working_set_size);
      |         ^~~~~~~~~~~~~~~~~~
BinomialSolver.h:182:9:   required from here
  182 |     int solve(double lambda_1, double lambda_2, double tolerance, int max_iterations, int min_working_set_size) {
      |         ^~~~~
BinomialSolver.h:410:93: warning: comparison of integer expressions of different signedness: 'std::vector<int>::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
  410 |         if (b_g[index] == 0 && b_gxe[index] == 0 && safe_set_g[index] && working_set.size() < working_set_size) {
      |                                                                          ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~
Solver.h: In instantiation of 'double Solver<TG>::update_b_for_working_set(double, double, bool) [with TG = Eigen::Map<Eigen::SparseMatrix<double, 0, int> >]':
BinomialSolver.h:232:48:   required from 'int BinomialSolver<TG>::solve(double, double, double, int, int) [with TG = Eigen::Map<Eigen::SparseMatrix<double, 0, int> >]'
  232 |             max_diff = update_b_for_working_set(lambda_1, lambda_2, false);
      |                        ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
BinomialSolver.h:182:9:   required from here
  182 |     int solve(double lambda_1, double lambda_2, double tolerance, int max_iterations, int min_working_set_size) {
      |         ^~~~~
Solver.h:278:23: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
  278 |     for (int k = 0; k < working_set.size(); ++k) {
      |                     ~~^~~~~~~~~~~~~~~~~~~~
Solver.h:271:12: warning: unused variable 'b_0_old' [-Wunused-variable]
  271 |     double b_0_old, b_e_old, b_g_old, b_gxe_old, b_g_new;
      |            ^~~~~~~
Solver.h:271:21: warning: unused variable 'b_e_old' [-Wunused-variable]
  271 |     double b_0_old, b_e_old, b_g_old, b_gxe_old, b_g_new;
      |                     ^~~~~~~
GaussianSolver.h: In instantiation of 'void GaussianSolver<TG>::update_working_set(double, double, double, int) [with TG = Eigen::Map<Eigen::SparseMatrix<double, 0, int> >]':
GaussianSolver.h:163:9:   required from 'int GaussianSolver<TG>::solve(double, double, double, int, int) [with TG = Eigen::Map<Eigen::SparseMatrix<double, 0, int> >]'
  163 |         update_working_set(lambda_1, lambda_2, duality_gap, working_set_size);
      |         ^~~~~~~~~~~~~~~~~~
GaussianSolver.h:142:17:   required from here
  142 |     virtual int solve(double lambda_1, double lambda_2, double tolerance, int max_iterations, int min_working_set_size) {
      |                 ^~~~~
GaussianSolver.h:306:93: warning: comparison of integer expressions of different signedness: 'std::vector<int>::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
  306 |         if (b_g[index] == 0 && b_gxe[index] == 0 && safe_set_g[index] && working_set.size() < working_set_size) {
      |                                                                          ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~
BinomialSolver.h: In instantiation of 'void BinomialSolver<TG>::update_working_set(double, double, double, int) [with TG = Eigen::Map<const Eigen::Matrix<double, -1, -1> >]':
BinomialSolver.h:207:9:   required from 'int BinomialSolver<TG>::solve(double, double, double, int, int) [with TG = Eigen::Map<const Eigen::Matrix<double, -1, -1> >]'
  207 |         update_working_set(lambda_1, lambda_2, duality_gap, working_set_size);
      |         ^~~~~~~~~~~~~~~~~~
BinomialSolver.h:182:9:   required from here
  182 |     int solve(double lambda_1, double lambda_2, double tolerance, int max_iterations, int min_working_set_size) {
      |         ^~~~~
BinomialSolver.h:410:93: warning: comparison of integer expressions of different signedness: 'std::vector<int>::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
  410 |         if (b_g[index] == 0 && b_gxe[index] == 0 && safe_set_g[index] && working_set.size() < working_set_size) {
      |                                                                          ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~
Solver.h: In instantiation of 'double Solver<TG>::update_b_for_working_set(double, double, bool) [with TG = Eigen::Map<const Eigen::Matrix<double, -1, -1> >]':
BinomialSolver.h:232:48:   required from 'int BinomialSolver<TG>::solve(double, double, double, int, int) [with TG = Eigen::Map<const Eigen::Matrix<double, -1, -1> >]'
  232 |             max_diff = update_b_for_working_set(lambda_1, lambda_2, false);
      |                        ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
BinomialSolver.h:182:9:   required from here
  182 |     int solve(double lambda_1, double lambda_2, double tolerance, int max_iterations, int min_working_set_size) {
      |         ^~~~~
Solver.h:278:23: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
  278 |     for (int k = 0; k < working_set.size(); ++k) {
      |                     ~~^~~~~~~~~~~~~~~~~~~~
Solver.h:271:12: warning: unused variable 'b_0_old' [-Wunused-variable]
  271 |     double b_0_old, b_e_old, b_g_old, b_gxe_old, b_g_new;
      |            ^~~~~~~
Solver.h:271:21: warning: unused variable 'b_e_old' [-Wunused-variable]
  271 |     double b_0_old, b_e_old, b_g_old, b_gxe_old, b_g_new;
      |                     ^~~~~~~
GaussianSolver.h: In instantiation of 'void GaussianSolver<TG>::update_working_set(double, double, double, int) [with TG = Eigen::Map<const Eigen::Matrix<double, -1, -1> >]':
GaussianSolver.h:163:9:   required from 'int GaussianSolver<TG>::solve(double, double, double, int, int) [with TG = Eigen::Map<const Eigen::Matrix<double, -1, -1> >]'
  163 |         update_working_set(lambda_1, lambda_2, duality_gap, working_set_size);
      |         ^~~~~~~~~~~~~~~~~~
GaussianSolver.h:142:17:   required from here
  142 |     virtual int solve(double lambda_1, double lambda_2, double tolerance, int max_iterations, int min_working_set_size) {
      |                 ^~~~~
GaussianSolver.h:306:93: warning: comparison of integer expressions of different signedness: 'std::vector<int>::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
  306 |         if (b_g[index] == 0 && b_gxe[index] == 0 && safe_set_g[index] && working_set.size() < working_set_size) {
      |                                                                          ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~
BinomialSolver.h: In instantiation of 'void BinomialSolver<TG>::update_inner_nu(double, double) [with TG = Eigen::Map<const Eigen::Matrix<double, -1, -1> >]':
BinomialSolver.h:346:7:   required from 'double BinomialSolver<TG>::check_inner_duality_gap(double, double) [with TG = Eigen::Map<const Eigen::Matrix<double, -1, -1> >]'
  346 |       update_inner_nu(lambda_1, lambda_2);
      |       ^~~~~~~~~~~~~~~
BinomialSolver.h:216:31:   required from 'int BinomialSolver<TG>::solve(double, double, double, int, int) [with TG = Eigen::Map<const Eigen::Matrix<double, -1, -1> >]'
  216 |           inner_duality_gap = check_inner_duality_gap(lambda_1, lambda_2);
      |                               ^~~~~~~~~~~~~~~~~~~~~~~
BinomialSolver.h:182:9:   required from here
  182 |     int solve(double lambda_1, double lambda_2, double tolerance, int max_iterations, int min_working_set_size) {
      |         ^~~~~
BinomialSolver.h:329:25: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
  329 |       for (int i = 0; i < working_set.size(); ++i) {
      |                       ~~^~~~~~~~~~~~~~~~~~~~
BinomialSolver.h: In instantiation of 'void BinomialSolver<TG>::update_working_set(double, double, double, int) [with TG = Eigen::Map<Eigen::SparseMatrix<double, 0, int> >]':
BinomialSolver.h:207:9:   required from 'int BinomialSolver<TG>::solve(double, double, double, int, int) [with TG = Eigen::Map<Eigen::SparseMatrix<double, 0, int> >]'
  207 |         update_working_set(lambda_1, lambda_2, duality_gap, working_set_size);
      |         ^~~~~~~~~~~~~~~~~~
BinomialSolver.h:182:9:   required from here
  182 |     int solve(double lambda_1, double lambda_2, double tolerance, int max_iterations, int min_working_set_size) {
      |         ^~~~~
BinomialSolver.h:410:93: warning: comparison of integer expressions of different signedness: 'std::vector<int>::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
  410 |         if (b_g[index] == 0 && b_gxe[index] == 0 && safe_set_g[index] && working_set.size() < working_set_size) {
      |                                                                          ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~
Solver.h: In instantiation of 'double Solver<TG>::update_b_for_working_set(double, double, bool) [with TG = Eigen::Map<Eigen::SparseMatrix<double, 0, int> >]':
BinomialSolver.h:232:48:   required from 'int BinomialSolver<TG>::solve(double, double, double, int, int) [with TG = Eigen::Map<Eigen::SparseMatrix<double, 0, int> >]'
  232 |             max_diff = update_b_for_working_set(lambda_1, lambda_2, false);
      |                        ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
BinomialSolver.h:182:9:   required from here
  182 |     int solve(double lambda_1, double lambda_2, double tolerance, int max_iterations, int min_working_set_size) {
      |         ^~~~~
Solver.h:278:23: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
  278 |     for (int k = 0; k < working_set.size(); ++k) {
      |                     ~~^~~~~~~~~~~~~~~~~~~~
GaussianSolver.h: In instantiation of 'double GaussianSolver<TG>::update_inner_nu(double, double) [with TG = Eigen::Map<const Eigen::Matrix<double, -1, -1> >]':
GaussianSolver.h:263:34:   required from 'double GaussianSolver<TG>::check_duality_gap(double, double, bool) [with TG = Eigen::Map<const Eigen::Matrix<double, -1, -1> >]'
  263 |         current_dual_objective = update_inner_nu(lambda_1, lambda_2);
      |                                  ^~~~~~~~~~~~~~~
GaussianSolver.h:159:23:   required from 'int GaussianSolver<TG>::solve(double, double, double, int, int) [with TG = Eigen::Map<const Eigen::Matrix<double, -1, -1> >]'
  159 |         duality_gap = check_duality_gap(lambda_1, lambda_2, false);
      |                       ^~~~~~~~~~~~~~~~~
GaussianSolver.h:142:17:   required from here
  142 |     virtual int solve(double lambda_1, double lambda_2, double tolerance, int max_iterations, int min_working_set_size) {
      |                 ^~~~~
GaussianSolver.h:251:25: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
  251 |       for (int i = 0; i < working_set.size(); ++i) {
      |                       ~~^~~~~~~~~~~~~~~~~~~~
Solver.h:271:12: warning: unused variable 'b_0_old' [-Wunused-variable]
  271 |     double b_0_old, b_e_old, b_g_old, b_gxe_old, b_g_new;
      |            ^~~~~~~
Solver.h:271:21: warning: unused variable 'b_e_old' [-Wunused-variable]
  271 |     double b_0_old, b_e_old, b_g_old, b_gxe_old, b_g_new;
      |                     ^~~~~~~
GaussianSolver.h: In instantiation of 'void GaussianSolver<TG>::update_working_set(double, double, double, int) [with TG = Eigen::Map<Eigen::SparseMatrix<double, 0, int> >]':
GaussianSolver.h:163:9:   required from 'int GaussianSolver<TG>::solve(double, double, double, int, int) [with TG = Eigen::Map<Eigen::SparseMatrix<double, 0, int> >]'
  163 |         update_working_set(lambda_1, lambda_2, duality_gap, working_set_size);
      |         ^~~~~~~~~~~~~~~~~~
GaussianSolver.h:142:17:   required from here
  142 |     virtual int solve(double lambda_1, double lambda_2, double tolerance, int max_iterations, int min_working_set_size) {
      |                 ^~~~~
GaussianSolver.h:306:93: warning: comparison of integer expressions of different signedness: 'std::vector<int>::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
  306 |         if (b_g[index] == 0 && b_gxe[index] == 0 && safe_set_g[index] && working_set.size() < working_set_size) {
      |                                                                          ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~
BinomialSolver.h: In instantiation of 'void BinomialSolver<TG>::update_inner_nu(double, double) [with TG = Eigen::Map<const Eigen::Matrix<double, -1, -1> >]':
BinomialSolver.h:346:7:   required from 'double BinomialSolver<TG>::check_inner_duality_gap(double, double) [with TG = Eigen::Map<const Eigen::Matrix<double, -1, -1> >]'
  346 |       update_inner_nu(lambda_1, lambda_2);
      |       ^~~~~~~~~~~~~~~
BinomialSolver.h:216:31:   required from 'int BinomialSolver<TG>::solve(double, double, double, int, int) [with TG = Eigen::Map<const Eigen::Matrix<double, -1, -1> >]'
  216 |           inner_duality_gap = check_inner_duality_gap(lambda_1, lambda_2);
      |                               ^~~~~~~~~~~~~~~~~~~~~~~
BinomialSolver.h:182:9:   required from here
  182 |     int solve(double lambda_1, double lambda_2, double tolerance, int max_iterations, int min_working_set_size) {
      |         ^~~~~
BinomialSolver.h:329:25: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
  329 |       for (int i = 0; i < working_set.size(); ++i) {
      |                       ~~^~~~~~~~~~~~~~~~~~~~
GaussianSolver.h: In instantiation of 'double GaussianSolver<TG>::update_inner_nu(double, double) [with TG = Eigen::Map<const Eigen::Matrix<double, -1, -1> >]':
GaussianSolver.h:263:34:   required from 'double GaussianSolver<TG>::check_duality_gap(double, double, bool) [with TG = Eigen::Map<const Eigen::Matrix<double, -1, -1> >]'
  263 |         current_dual_objective = update_inner_nu(lambda_1, lambda_2);
      |                                  ^~~~~~~~~~~~~~~
GaussianSolver.h:159:23:   required from 'int GaussianSolver<TG>::solve(double, double, double, int, int) [with TG = Eigen::Map<const Eigen::Matrix<double, -1, -1> >]'
  159 |         duality_gap = check_duality_gap(lambda_1, lambda_2, false);
      |                       ^~~~~~~~~~~~~~~~~
GaussianSolver.h:142:17:   required from here
  142 |     virtual int solve(double lambda_1, double lambda_2, double tolerance, int max_iterations, int min_working_set_size) {
      |                 ^~~~~
GaussianSolver.h:251:25: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
  251 |       for (int i = 0; i < working_set.size(); ++i) {
      |                       ~~^~~~~~~~~~~~~~~~~~~~
BinomialSolver.h: In instantiation of 'void BinomialSolver<TG>::update_inner_nu(double, double) [with TG = Eigen::Map<Eigen::SparseMatrix<double, 0, int> >]':
BinomialSolver.h:346:7:   required from 'double BinomialSolver<TG>::check_inner_duality_gap(double, double) [with TG = Eigen::Map<Eigen::SparseMatrix<double, 0, int> >]'
  346 |       update_inner_nu(lambda_1, lambda_2);
      |       ^~~~~~~~~~~~~~~
BinomialSolver.h:216:31:   required from 'int BinomialSolver<TG>::solve(double, double, double, int, int) [with TG = Eigen::Map<Eigen::SparseMatrix<double, 0, int> >]'
  216 |           inner_duality_gap = check_inner_duality_gap(lambda_1, lambda_2);
      |                               ^~~~~~~~~~~~~~~~~~~~~~~
BinomialSolver.h:182:9:   required from here
  182 |     int solve(double lambda_1, double lambda_2, double tolerance, int max_iterations, int min_working_set_size) {
      |         ^~~~~
BinomialSolver.h:329:25: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
  329 |       for (int i = 0; i < working_set.size(); ++i) {
      |                       ~~^~~~~~~~~~~~~~~~~~~~
GaussianSolver.h: In instantiation of 'double GaussianSolver<TG>::update_inner_nu(double, double) [with TG = Eigen::Map<Eigen::SparseMatrix<double, 0, int> >]':
GaussianSolver.h:263:34:   required from 'double GaussianSolver<TG>::check_duality_gap(double, double, bool) [with TG = Eigen::Map<Eigen::SparseMatrix<double, 0, int> >]'
  263 |         current_dual_objective = update_inner_nu(lambda_1, lambda_2);
      |                                  ^~~~~~~~~~~~~~~
GaussianSolver.h:159:23:   required from 'int GaussianSolver<TG>::solve(double, double, double, int, int) [with TG = Eigen::Map<Eigen::SparseMatrix<double, 0, int> >]'
  159 |         duality_gap = check_duality_gap(lambda_1, lambda_2, false);
      |                       ^~~~~~~~~~~~~~~~~
GaussianSolver.h:142:17:   required from here
  142 |     virtual int solve(double lambda_1, double lambda_2, double tolerance, int max_iterations, int min_working_set_size) {
      |                 ^~~~~
GaussianSolver.h:251:25: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
  251 |       for (int i = 0; i < working_set.size(); ++i) {
      |                       ~~^~~~~~~~~~~~~~~~~~~~
BinomialSolver.h: In instantiation of 'void BinomialSolver<TG>::update_inner_nu(double, double) [with TG = Eigen::Map<Eigen::SparseMatrix<double, 0, int> >]':
BinomialSolver.h:346:7:   required from 'double BinomialSolver<TG>::check_inner_duality_gap(double, double) [with TG = Eigen::Map<Eigen::SparseMatrix<double, 0, int> >]'
  346 |       update_inner_nu(lambda_1, lambda_2);
      |       ^~~~~~~~~~~~~~~
BinomialSolver.h:216:31:   required from 'int BinomialSolver<TG>::solve(double, double, double, int, int) [with TG = Eigen::Map<Eigen::SparseMatrix<double, 0, int> >]'
  216 |           inner_duality_gap = check_inner_duality_gap(lambda_1, lambda_2);
      |                               ^~~~~~~~~~~~~~~~~~~~~~~
BinomialSolver.h:182:9:   required from here
  182 |     int solve(double lambda_1, double lambda_2, double tolerance, int max_iterations, int min_working_set_size) {
      |         ^~~~~
BinomialSolver.h:329:25: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
  329 |       for (int i = 0; i < working_set.size(); ++i) {
      |                       ~~^~~~~~~~~~~~~~~~~~~~
GaussianSolver.h: In instantiation of 'double GaussianSolver<TG>::update_inner_nu(double, double) [with TG = Eigen::Map<Eigen::SparseMatrix<double, 0, int> >]':
GaussianSolver.h:263:34:   required from 'double GaussianSolver<TG>::check_duality_gap(double, double, bool) [with TG = Eigen::Map<Eigen::SparseMatrix<double, 0, int> >]'
  263 |         current_dual_objective = update_inner_nu(lambda_1, lambda_2);
      |                                  ^~~~~~~~~~~~~~~
GaussianSolver.h:159:23:   required from 'int GaussianSolver<TG>::solve(double, double, double, int, int) [with TG = Eigen::Map<Eigen::SparseMatrix<double, 0, int> >]'
  159 |         duality_gap = check_duality_gap(lambda_1, lambda_2, false);
      |                       ^~~~~~~~~~~~~~~~~
GaussianSolver.h:142:17:   required from here
  142 |     virtual int solve(double lambda_1, double lambda_2, double tolerance, int max_iterations, int min_working_set_size) {
      |                 ^~~~~
GaussianSolver.h:251:25: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
  251 |       for (int i = 0; i < working_set.size(); ++i) {
      |                       ~~^~~~~~~~~~~~~~~~~~~~
In file included from rcpp_wrappers_fit.cpp:7:
Solver.h: In instantiation of 'void Solver<TG>::update_weighted_variables(bool) [with TG = Eigen::Map<Eigen::SparseMatrix<double, 0, int> >]':
GaussianSolver.h:117:32:   required from 'void GaussianSolver<TG>::init() [with TG = Eigen::Map<Eigen::SparseMatrix<double, 0, int> >]'
  117 |       update_weighted_variables(false);
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~
GaussianSolver.h:112:7:   required from 'GaussianSolver<TG>::GaussianSolver(const MapSparseMat&, const Eigen::Map<Eigen::Matrix<double, -1, 1>, 0, Eigen::Stride<0, 0> >&, const Eigen::Map<Eigen::Matrix<double, -1, 1>, 0, Eigen::Stride<0, 0> >&, const Eigen::Map<Eigen::Matrix<double, -1, -1>, 0, Eigen::Stride<0, 0> >&, const Eigen::Map<Eigen::Matrix<double, -1, 1>, 0, Eigen::Stride<0, 0> >&, bool) [with TG = Eigen::Map<Eigen::SparseMatrix<double, 0, int> >; MapSparseMat = Eigen::Map<Eigen::SparseMatrix<double, 0, int> >]'
  112 |       init();
      |       ^~~~
rcpp_wrappers_fit.cpp:30:7:   required from 'Rcpp::List fitModelRcpp(const TG&, const Eigen::Map<Eigen::Matrix<double, -1, 1>, 0, Eigen::Stride<0, 0> >&, const Eigen::Map<Eigen::Matrix<double, -1, 1>, 0, Eigen::Stride<0, 0> >&, const Eigen::Map<Eigen::Matrix<double, -1, -1>, 0, Eigen::Stride<0, 0> >&, const Eigen::Map<Eigen::Matrix<double, -1, 1>, 0, Eigen::Stride<0, 0> >&, const Rcpp::LogicalVector&, const Eigen::VectorXd&, double, const std::string&, double, int, int) [with TG = Eigen::Map<Eigen::SparseMatrix<double, 0, int> >; Rcpp::List = Rcpp::Vector<19>; Rcpp::LogicalVector = Rcpp::Vector<10, Rcpp::PreserveStorage>; Eigen::VectorXd = Eigen::Matrix<double, -1, 1>; std::string = std::__cxx11::basic_string<char>]'
   30 |       new GaussianSolver<TG>(G, E, Y, C, weights, normalize[0]));
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
rcpp_wrappers_fit.cpp:149:38:   required from here
  149 |     return fitModelRcpp<MapSparseMat>(Rcpp::as<MapSparseMat>(G), E, Y, C,
      |            ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  150 |                                             weights, normalize, grid, alpha,
      |                                             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  151 |                                             family, tolerance, max_iterations, min_working_set_size);
      |                                             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Solver.h:237:25: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
  237 |       for (int j = 0; j < working_set.size(); ++j) {
      |                       ~~^~~~~~~~~~~~~~~~~~~~
Solver.h: In instantiation of 'void Solver<TG>::update_weighted_variables(bool) [with TG = Eigen::Map<const Eigen::Matrix<double, -1, -1> >]':
GaussianSolver.h:117:32:   required from 'void GaussianSolver<TG>::init() [with TG = Eigen::Map<const Eigen::Matrix<double, -1, -1> >]'
  117 |       update_weighted_variables(false);
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~
GaussianSolver.h:94:7:   required from 'GaussianSolver<TG>::GaussianSolver(const MapMat&, const Eigen::Map<Eigen::Matrix<double, -1, 1>, 0, Eigen::Stride<0, 0> >&, const Eigen::Map<Eigen::Matrix<double, -1, 1>, 0, Eigen::Stride<0, 0> >&, const Eigen::Map<Eigen::Matrix<double, -1, -1>, 0, Eigen::Stride<0, 0> >&, const Eigen::Map<Eigen::Matrix<double, -1, 1>, 0, Eigen::Stride<0, 0> >&, bool) [with TG = Eigen::Map<const Eigen::Matrix<double, -1, -1> >; MapMat = Eigen::Map<const Eigen::Matrix<double, -1, -1> >]'
   94 |       init();
      |       ^~~~
rcpp_wrappers_fit.cpp:30:7:   required from 'Rcpp::List fitModelRcpp(const TG&, const Eigen::Map<Eigen::Matrix<double, -1, 1>, 0, Eigen::Stride<0, 0> >&, const Eigen::Map<Eigen::Matrix<double, -1, 1>, 0, Eigen::Stride<0, 0> >&, const Eigen::Map<Eigen::Matrix<double, -1, -1>, 0, Eigen::Stride<0, 0> >&, const Eigen::Map<Eigen::Matrix<double, -1, 1>, 0, Eigen::Stride<0, 0> >&, const Rcpp::LogicalVector&, const Eigen::VectorXd&, double, const std::string&, double, int, int) [with TG = Eigen::Map<const Eigen::Matrix<double, -1, -1> >; Rcpp::List = Rcpp::Vector<19>; Rcpp::LogicalVector = Rcpp::Vector<10, Rcpp::PreserveStorage>; Eigen::VectorXd = Eigen::Matrix<double, -1, 1>; std::string = std::__cxx11::basic_string<char>]'
   30 |       new GaussianSolver<TG>(G, E, Y, C, weights, normalize[0]));
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
rcpp_wrappers_fit.cpp:156:32:   required from here
  156 |     return fitModelRcpp<MapMat>(Gmap, E, Y, C, weights, normalize, grid, alpha,
      |            ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  157 |                                 family, tolerance, max_iterations, min_working_set_size);
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Solver.h:237:25: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
  237 |       for (int j = 0; j < working_set.size(); ++j) {
      |                       ~~^~~~~~~~~~~~~~~~~~~~
In file included from rcpp_wrappers_fit.cpp:9:
BinomialSolver.h: In instantiation of 'double BinomialSolver<TG>::get_test_loss(const std::vector<int>&) [with TG = Eigen::Map<const Eigen::Matrix<double, -1, -1> >]':
BinomialSolver.h:420:20:   required from here
  420 |     virtual double get_test_loss(const std::vector<int>& test_idx) {
      |                    ^~~~~~~~~~~~~
BinomialSolver.h:423:25: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
  423 |       for (int i = 0; i < test_idx.size(); ++i) {
      |                       ~~^~~~~~~~~~~~~~~~~
In file included from rcpp_wrappers_fit.cpp:8:
GaussianSolver.h: In instantiation of 'double GaussianSolver<TG>::get_test_loss(const std::vector<int>&) [with TG = Eigen::Map<const Eigen::Matrix<double, -1, -1> >]':
GaussianSolver.h:346:20:   required from here
  346 |     virtual double get_test_loss(const std::vector<int>& test_idx) {
      |                    ^~~~~~~~~~~~~
GaussianSolver.h:349:25: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
  349 |       for (int i = 0; i < test_idx.size(); ++i) {
      |                       ~~^~~~~~~~~~~~~~~~~
BinomialSolver.h: In instantiation of 'double BinomialSolver<TG>::get_test_loss(const std::vector<int>&) [with TG = Eigen::Map<Eigen::SparseMatrix<double, 0, int> >]':
BinomialSolver.h:420:20:   required from here
  420 |     virtual double get_test_loss(const std::vector<int>& test_idx) {
      |                    ^~~~~~~~~~~~~
BinomialSolver.h:423:25: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
  423 |       for (int i = 0; i < test_idx.size(); ++i) {
      |                       ~~^~~~~~~~~~~~~~~~~
GaussianSolver.h: In instantiation of 'double GaussianSolver<TG>::get_test_loss(const std::vector<int>&) [with TG = Eigen::Map<Eigen::SparseMatrix<double, 0, int> >]':
GaussianSolver.h:346:20:   required from here
  346 |     virtual double get_test_loss(const std::vector<int>& test_idx) {
      |                    ^~~~~~~~~~~~~
GaussianSolver.h:349:25: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
  349 |       for (int i = 0; i < test_idx.size(); ++i) {
      |                       ~~^~~~~~~~~~~~~~~~~
BinomialSolver.h: In instantiation of 'void BinomialSolver<TG>::update_working_set(double, double, double, int) [with TG = Eigen::Map<const Eigen::Matrix<double, -1, -1> >]':
BinomialSolver.h:207:9:   required from 'int BinomialSolver<TG>::solve(double, double, double, int, int) [with TG = Eigen::Map<const Eigen::Matrix<double, -1, -1> >]'
  207 |         update_working_set(lambda_1, lambda_2, duality_gap, working_set_size);
      |         ^~~~~~~~~~~~~~~~~~
BinomialSolver.h:182:9:   required from here
  182 |     int solve(double lambda_1, double lambda_2, double tolerance, int max_iterations, int min_working_set_size) {
      |         ^~~~~
BinomialSolver.h:410:93: warning: comparison of integer expressions of different signedness: 'std::vector<int>::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
  410 |         if (b_g[index] == 0 && b_gxe[index] == 0 && safe_set_g[index] && working_set.size() < working_set_size) {
      |                                                                          ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~
Solver.h: In instantiation of 'double Solver<TG>::update_b_for_working_set(double, double, bool) [with TG = Eigen::Map<const Eigen::Matrix<double, -1, -1> >]':
BinomialSolver.h:232:48:   required from 'int BinomialSolver<TG>::solve(double, double, double, int, int) [with TG = Eigen::Map<const Eigen::Matrix<double, -1, -1> >]'
  232 |             max_diff = update_b_for_working_set(lambda_1, lambda_2, false);
      |                        ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
BinomialSolver.h:182:9:   required from here
  182 |     int solve(double lambda_1, double lambda_2, double tolerance, int max_iterations, int min_working_set_size) {
      |         ^~~~~
Solver.h:278:23: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
  278 |     for (int k = 0; k < working_set.size(); ++k) {
      |                     ~~^~~~~~~~~~~~~~~~~~~~
Solver.h:271:12: warning: unused variable 'b_0_old' [-Wunused-variable]
  271 |     double b_0_old, b_e_old, b_g_old, b_gxe_old, b_g_new;
      |            ^~~~~~~
Solver.h:271:21: warning: unused variable 'b_e_old' [-Wunused-variable]
  271 |     double b_0_old, b_e_old, b_g_old, b_gxe_old, b_g_new;
      |                     ^~~~~~~
GaussianSolver.h: In instantiation of 'void GaussianSolver<TG>::update_working_set(double, double, double, int) [with TG = Eigen::Map<const Eigen::Matrix<double, -1, -1> >]':
GaussianSolver.h:163:9:   required from 'int GaussianSolver<TG>::solve(double, double, double, int, int) [with TG = Eigen::Map<const Eigen::Matrix<double, -1, -1> >]'
  163 |         update_working_set(lambda_1, lambda_2, duality_gap, working_set_size);
      |         ^~~~~~~~~~~~~~~~~~
GaussianSolver.h:142:17:   required from here
  142 |     virtual int solve(double lambda_1, double lambda_2, double tolerance, int max_iterations, int min_working_set_size) {
      |                 ^~~~~
GaussianSolver.h:306:93: warning: comparison of integer expressions of different signedness: 'std::vector<int>::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
  306 |         if (b_g[index] == 0 && b_gxe[index] == 0 && safe_set_g[index] && working_set.size() < working_set_size) {
      |                                                                          ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~
BinomialSolver.h: In instantiation of 'void BinomialSolver<TG>::update_working_set(double, double, double, int) [with TG = Eigen::Map<Eigen::SparseMatrix<double, 0, int> >]':
BinomialSolver.h:207:9:   required from 'int BinomialSolver<TG>::solve(double, double, double, int, int) [with TG = Eigen::Map<Eigen::SparseMatrix<double, 0, int> >]'
  207 |         update_working_set(lambda_1, lambda_2, duality_gap, working_set_size);
      |         ^~~~~~~~~~~~~~~~~~
BinomialSolver.h:182:9:   required from here
  182 |     int solve(double lambda_1, double lambda_2, double tolerance, int max_iterations, int min_working_set_size) {
      |         ^~~~~
BinomialSolver.h:410:93: warning: comparison of integer expressions of different signedness: 'std::vector<int>::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
  410 |         if (b_g[index] == 0 && b_gxe[index] == 0 && safe_set_g[index] && working_set.size() < working_set_size) {
      |                                                                          ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~
Solver.h: In instantiation of 'double Solver<TG>::update_b_for_working_set(double, double, bool) [with TG = Eigen::Map<Eigen::SparseMatrix<double, 0, int> >]':
BinomialSolver.h:232:48:   required from 'int BinomialSolver<TG>::solve(double, double, double, int, int) [with TG = Eigen::Map<Eigen::SparseMatrix<double, 0, int> >]'
  232 |             max_diff = update_b_for_working_set(lambda_1, lambda_2, false);
      |                        ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
BinomialSolver.h:182:9:   required from here
  182 |     int solve(double lambda_1, double lambda_2, double tolerance, int max_iterations, int min_working_set_size) {
      |         ^~~~~
Solver.h:278:23: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
  278 |     for (int k = 0; k < working_set.size(); ++k) {
      |                     ~~^~~~~~~~~~~~~~~~~~~~
Solver.h:271:12: warning: unused variable 'b_0_old' [-Wunused-variable]
  271 |     double b_0_old, b_e_old, b_g_old, b_gxe_old, b_g_new;
      |            ^~~~~~~
Solver.h:271:21: warning: unused variable 'b_e_old' [-Wunused-variable]
  271 |     double b_0_old, b_e_old, b_g_old, b_gxe_old, b_g_new;
      |                     ^~~~~~~
GaussianSolver.h: In instantiation of 'void GaussianSolver<TG>::update_working_set(double, double, double, int) [with TG = Eigen::Map<Eigen::SparseMatrix<double, 0, int> >]':
GaussianSolver.h:163:9:   required from 'int GaussianSolver<TG>::solve(double, double, double, int, int) [with TG = Eigen::Map<Eigen::SparseMatrix<double, 0, int> >]'
  163 |         update_working_set(lambda_1, lambda_2, duality_gap, working_set_size);
      |         ^~~~~~~~~~~~~~~~~~
GaussianSolver.h:142:17:   required from here
  142 |     virtual int solve(double lambda_1, double lambda_2, double tolerance, int max_iterations, int min_working_set_size) {
      |                 ^~~~~
GaussianSolver.h:306:93: warning: comparison of integer expressions of different signedness: 'std::vector<int>::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
  306 |         if (b_g[index] == 0 && b_gxe[index] == 0 && safe_set_g[index] && working_set.size() < working_set_size) {
      |                                                                          ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~
BinomialSolver.h: In instantiation of 'void BinomialSolver<TG>::update_inner_nu(double, double) [with TG = Eigen::Map<const Eigen::Matrix<double, -1, -1> >]':
BinomialSolver.h:346:7:   required from 'double BinomialSolver<TG>::check_inner_duality_gap(double, double) [with TG = Eigen::Map<const Eigen::Matrix<double, -1, -1> >]'
  346 |       update_inner_nu(lambda_1, lambda_2);
      |       ^~~~~~~~~~~~~~~
BinomialSolver.h:216:31:   required from 'int BinomialSolver<TG>::solve(double, double, double, int, int) [with TG = Eigen::Map<const Eigen::Matrix<double, -1, -1> >]'
  216 |           inner_duality_gap = check_inner_duality_gap(lambda_1, lambda_2);
      |                               ^~~~~~~~~~~~~~~~~~~~~~~
BinomialSolver.h:182:9:   required from here
  182 |     int solve(double lambda_1, double lambda_2, double tolerance, int max_iterations, int min_working_set_size) {
      |         ^~~~~
BinomialSolver.h:329:25: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
  329 |       for (int i = 0; i < working_set.size(); ++i) {
      |                       ~~^~~~~~~~~~~~~~~~~~~~
GaussianSolver.h: In instantiation of 'double GaussianSolver<TG>::update_inner_nu(double, double) [with TG = Eigen::Map<const Eigen::Matrix<double, -1, -1> >]':
GaussianSolver.h:263:34:   required from 'double GaussianSolver<TG>::check_duality_gap(double, double, bool) [with TG = Eigen::Map<const Eigen::Matrix<double, -1, -1> >]'
  263 |         current_dual_objective = update_inner_nu(lambda_1, lambda_2);
      |                                  ^~~~~~~~~~~~~~~
GaussianSolver.h:159:23:   required from 'int GaussianSolver<TG>::solve(double, double, double, int, int) [with TG = Eigen::Map<const Eigen::Matrix<double, -1, -1> >]'
  159 |         duality_gap = check_duality_gap(lambda_1, lambda_2, false);
      |                       ^~~~~~~~~~~~~~~~~
GaussianSolver.h:142:17:   required from here
  142 |     virtual int solve(double lambda_1, double lambda_2, double tolerance, int max_iterations, int min_working_set_size) {
      |                 ^~~~~
GaussianSolver.h:251:25: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
  251 |       for (int i = 0; i < working_set.size(); ++i) {
      |                       ~~^~~~~~~~~~~~~~~~~~~~
BinomialSolver.h: In instantiation of 'void BinomialSolver<TG>::update_inner_nu(double, double) [with TG = Eigen::Map<Eigen::SparseMatrix<double, 0, int> >]':
BinomialSolver.h:346:7:   required from 'double BinomialSolver<TG>::check_inner_duality_gap(double, double) [with TG = Eigen::Map<Eigen::SparseMatrix<double, 0, int> >]'
  346 |       update_inner_nu(lambda_1, lambda_2);
      |       ^~~~~~~~~~~~~~~
BinomialSolver.h:216:31:   required from 'int BinomialSolver<TG>::solve(double, double, double, int, int) [with TG = Eigen::Map<Eigen::SparseMatrix<double, 0, int> >]'
  216 |           inner_duality_gap = check_inner_duality_gap(lambda_1, lambda_2);
      |                               ^~~~~~~~~~~~~~~~~~~~~~~
BinomialSolver.h:182:9:   required from here
  182 |     int solve(double lambda_1, double lambda_2, double tolerance, int max_iterations, int min_working_set_size) {
      |         ^~~~~
BinomialSolver.h:329:25: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
  329 |       for (int i = 0; i < working_set.size(); ++i) {
      |                       ~~^~~~~~~~~~~~~~~~~~~~
GaussianSolver.h: In instantiation of 'double GaussianSolver<TG>::update_inner_nu(double, double) [with TG = Eigen::Map<Eigen::SparseMatrix<double, 0, int> >]':
GaussianSolver.h:263:34:   required from 'double GaussianSolver<TG>::check_duality_gap(double, double, bool) [with TG = Eigen::Map<Eigen::SparseMatrix<double, 0, int> >]'
  263 |         current_dual_objective = update_inner_nu(lambda_1, lambda_2);
      |                                  ^~~~~~~~~~~~~~~
GaussianSolver.h:159:23:   required from 'int GaussianSolver<TG>::solve(double, double, double, int, int) [with TG = Eigen::Map<Eigen::SparseMatrix<double, 0, int> >]'
  159 |         duality_gap = check_duality_gap(lambda_1, lambda_2, false);
      |                       ^~~~~~~~~~~~~~~~~
GaussianSolver.h:142:17:   required from here
  142 |     virtual int solve(double lambda_1, double lambda_2, double tolerance, int max_iterations, int min_working_set_size) {
      |                 ^~~~~
GaussianSolver.h:251:25: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
  251 |       for (int i = 0; i < working_set.size(); ++i) {
      |                       ~~^~~~~~~~~~~~~~~~~~~~
In file included from /data/gannet/ripley/R/test-dev/RcppEigen/include/Eigen/Core:255,
                 from /data/gannet/ripley/R/test-dev/RcppEigen/include/Eigen/Dense:1,
                 from /data/gannet/ripley/R/test-dev/RcppEigen/include/RcppEigenForward.h:28,
                 from /data/gannet/ripley/R/test-dev/RcppEigen/include/RcppEigen.h:25,
                 from rcpp_compute_grid.cpp:3:
In copy constructor 'Eigen::internal::scalar_constant_op<Scalar>::scalar_constant_op(const Eigen::internal::scalar_constant_op<Scalar>&) [with Scalar = double]',
    inlined from 'Eigen::CwiseNullaryOp<Eigen::internal::scalar_constant_op<double>, const Eigen::Matrix<double, 1, -1> >::CwiseNullaryOp(const Eigen::CwiseNullaryOp<Eigen::internal::scalar_constant_op<double>, const Eigen::Matrix<double, 1, -1> >&)' at /data/gannet/ripley/R/test-dev/RcppEigen/include/Eigen/src/Core/CwiseNullaryOp.h:60:7,
    inlined from 'Eigen::CwiseBinaryOp<Eigen::internal::scalar_product_op<double, double>, const Eigen::CwiseNullaryOp<Eigen::internal::scalar_constant_op<double>, const Eigen::Matrix<double, 1, -1> >, const Eigen::Transpose<const Eigen::CwiseBinaryOp<Eigen::internal::scalar_product_op<double, double>, const Eigen::Matrix<double, -1, 1>, const Eigen::Map<Eigen::Matrix<double, -1, 1>, 0, Eigen::Stride<0, 0> > > > >::CwiseBinaryOp(const Eigen::CwiseBinaryOp<Eigen::internal::scalar_product_op<double, double>, const Eigen::CwiseNullaryOp<Eigen::internal::scalar_constant_op<double>, const Eigen::Matrix<double, 1, -1> >, const Eigen::Transpose<const Eigen::CwiseBinaryOp<Eigen::internal::scalar_product_op<double, double>, const Eigen::Matrix<double, -1, 1>, const Eigen::Map<Eigen::Matrix<double, -1, 1>, 0, Eigen::Stride<0, 0> > > > >&)' at /data/gannet/ripley/R/test-dev/RcppEigen/include/Eigen/src/Core/CwiseBinaryOp.h:77:7,
    inlined from 'Eigen::Product<Eigen::CwiseBinaryOp<Eigen::internal::scalar_product_op<double, double>, const Eigen::CwiseNullaryOp<Eigen::internal::scalar_constant_op<double>, const Eigen::Matrix<double, 1, -1> >, const Eigen::Transpose<const Eigen::CwiseBinaryOp<Eigen::internal::scalar_product_op<double, double>, const Eigen::Matrix<double, -1, 1>, const Eigen::Map<Eigen::Matrix<double, -1, 1>, 0, Eigen::Stride<0, 0> > > > >, Eigen::Map<Eigen::SparseMatrix<double, 0, int> >, 0>::Product(const Eigen::Product<Eigen::CwiseBinaryOp<Eigen::internal::scalar_product_op<double, double>, const Eigen::CwiseNullaryOp<Eigen::internal::scalar_constant_op<double>, const Eigen::Matrix<double, 1, -1> >, const Eigen::Transpose<const Eigen::CwiseBinaryOp<Eigen::internal::scalar_product_op<double, double>, const Eigen::Matrix<double, -1, 1>, const Eigen::Map<Eigen::Matrix<double, -1, 1>, 0, Eigen::Stride<0, 0> > > > >, Eigen::Map<Eigen::SparseMatrix<double, 0, int> >, 0>&)' at /data/gannet/ripley/R/test-dev/RcppEigen/include/Eigen/src/Core/Product.h:71:7,
    inlined from 'Eigen::CwiseUnaryOp<Eigen::internal::scalar_abs_op<double>, const Eigen::Product<Eigen::CwiseBinaryOp<Eigen::internal::scalar_product_op<double, double>, const Eigen::CwiseNullaryOp<Eigen::internal::scalar_constant_op<double>, const Eigen::Matrix<double, 1, -1> >, const Eigen::Transpose<const Eigen::CwiseBinaryOp<Eigen::internal::scalar_product_op<double, double>, const Eigen::Matrix<double, -1, 1>, const Eigen::Map<Eigen::Matrix<double, -1, 1>, 0, Eigen::Stride<0, 0> > > > >, Eigen::Map<Eigen::SparseMatrix<double, 0, int> >, 0> >::CwiseUnaryOp(const Eigen::CwiseUnaryOp<Eigen::internal::scalar_abs_op<double>, const Eigen::Product<Eigen::CwiseBinaryOp<Eigen::internal::scalar_product_op<double, double>, const Eigen::CwiseNullaryOp<Eigen::internal::scalar_constant_op<double>, const Eigen::Matrix<double, 1, -1> >, const Eigen::Transpose<const Eigen::CwiseBinaryOp<Eigen::internal::scalar_product_op<double, double>, const Eigen::Matrix<double, -1, 1>, const Eigen::Map<Eigen::Matrix<double, -1, 1>, 0, Eigen::Stride<0, 0> > > > >, Eigen::Map<Eigen::SparseMatrix<double, 0, int> >, 0> >&)' at /data/gannet/ripley/R/test-dev/RcppEigen/include/Eigen/src/Core/CwiseUnaryOp.h:55:7,
    inlined from 'Eigen::Transpose<MatrixType>::Transpose(const Eigen::Transpose<MatrixType>&) [with MatrixType = const Eigen::CwiseUnaryOp<Eigen::internal::scalar_abs_op<double>, const Eigen::Product<Eigen::CwiseBinaryOp<Eigen::internal::scalar_product_op<double, double>, const Eigen::CwiseNullaryOp<Eigen::internal::scalar_constant_op<double>, const Eigen::Matrix<double, 1, -1> >, const Eigen::Transpose<const Eigen::CwiseBinaryOp<Eigen::internal::scalar_product_op<double, double>, const Eigen::Matrix<double, -1, 1>, const Eigen::Map<Eigen::Matrix<double, -1, 1>, 0, Eigen::Stride<0, 0> > > > >, Eigen::Map<Eigen::SparseMatrix<double, 0, int> >, 0> >]' at /data/gannet/ripley/R/test-dev/RcppEigen/include/Eigen/src/Core/Transpose.h:66:5,
    inlined from 'Eigen::CwiseBinaryOp<BinaryOp, Lhs, Rhs>::CwiseBinaryOp(const Lhs&, const Rhs&, const BinaryOp&) [with BinaryOp = Eigen::internal::scalar_product_op<double, double>; LhsType = const Eigen::Transpose<const Eigen::CwiseUnaryOp<Eigen::internal::scalar_abs_op<double>, const Eigen::Product<Eigen::CwiseBinaryOp<Eigen::internal::scalar_product_op<double, double>, const Eigen::CwiseNullaryOp<Eigen::internal::scalar_constant_op<double>, const Eigen::Matrix<double, 1, -1> >, const Eigen::Transpose<const Eigen::CwiseBinaryOp<Eigen::internal::scalar_product_op<double, double>, const Eigen::Matrix<double, -1, 1>, const Eigen::Map<Eigen::Matrix<double, -1, 1>, 0, Eigen::Stride<0, 0> > > > >, Eigen::Map<Eigen::SparseMatrix<double, 0, int> >, 0> > >; RhsType = const Eigen::Matrix<double, -1, 1>]' at /data/gannet/ripley/R/test-dev/RcppEigen/include/Eigen/src/Core/CwiseBinaryOp.h:111:9,
    inlined from 'const Eigen::CwiseBinaryOp<Eigen::internal::scalar_product_op<typename Eigen::internal::traits<T>::Scalar, typename Eigen::internal::traits<OtherDerived>::Scalar>, const Derived, const OtherDerived> Eigen::MatrixBase<Derived>::cwiseProduct(const Eigen::MatrixBase<OtherDerived>&) const [with OtherDerived = Eigen::Matrix<double, -1, 1>; Derived = Eigen::Transpose<const Eigen::CwiseUnaryOp<Eigen::internal::scalar_abs_op<double>, const Eigen::Product<Eigen::CwiseBinaryOp<Eigen::internal::scalar_product_op<double, double>, const Eigen::CwiseNullaryOp<Eigen::internal::scalar_constant_op<double>, const Eigen::Matrix<double, 1, -1> >, const Eigen::Transpose<const Eigen::CwiseBinaryOp<Eigen::internal::scalar_product_op<double, double>, const Eigen::Matrix<double, -1, 1>, const Eigen::Map<Eigen::Matrix<double, -1, 1>, 0, Eigen::Stride<0, 0> > > > >, Eigen::Map<Eigen::SparseMatrix<double, 0, int> >, 0> > >]' at /data/gannet/ripley/R/test-dev/RcppEigen/include/Eigen/src/Core/../plugins/MatrixCwiseBinaryOps.h:25:97,
    inlined from 'double computeLambdaMaxRcpp(const TG&, const Eigen::Map<Eigen::Matrix<double, -1, 1>, 0, Eigen::Stride<0, 0> >&, const Eigen::Map<Eigen::Matrix<double, -1, 1>, 0, Eigen::Stride<0, 0> >&, const Eigen::Map<Eigen::Matrix<double, -1, -1>, 0, Eigen::Stride<0, 0> >&, const Eigen::Map<Eigen::Matrix<double, -1, 1>, 0, Eigen::Stride<0, 0> >&, const Rcpp::LogicalVector&, const std::string&) [with TG = Eigen::Map<Eigen::SparseMatrix<double, 0, int> >]' at rcpp_compute_grid.cpp:44:103:
/data/gannet/ripley/R/test-dev/RcppEigen/include/Eigen/src/Core/functors/NullaryFunctors.h:19:95: warning: 'normalize_weights_e' may be used uninitialized [-Wmaybe-uninitialized]
   19 |   EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE scalar_constant_op(const scalar_constant_op& other) : m_other(other.m_other) { }
      |                                                                                               ^~~~~~~~~~~~~~~~~~~~~~
rcpp_compute_grid.cpp: In function 'double computeLambdaMaxRcpp(const TG&, const Eigen::Map<Eigen::Matrix<double, -1, 1>, 0, Eigen::Stride<0, 0> >&, const Eigen::Map<Eigen::Matrix<double, -1, 1>, 0, Eigen::Stride<0, 0> >&, const Eigen::Map<Eigen::Matrix<double, -1, -1>, 0, Eigen::Stride<0, 0> >&, const Eigen::Map<Eigen::Matrix<double, -1, 1>, 0, Eigen::Stride<0, 0> >&, const Rcpp::LogicalVector&, const std::string&) [with TG = Eigen::Map<Eigen::SparseMatrix<double, 0, int> >]':
rcpp_compute_grid.cpp:26:10: note: 'normalize_weights_e' was declared here
   26 |   double normalize_weights_e;
      |          ^~~~~~~~~~~~~~~~~~~
In copy constructor 'Eigen::internal::scalar_constant_op<Scalar>::scalar_constant_op(const Eigen::internal::scalar_constant_op<Scalar>&) [with Scalar = double]',
    inlined from 'Eigen::CwiseNullaryOp<Eigen::internal::scalar_constant_op<double>, const Eigen::Matrix<double, 1, -1> >::CwiseNullaryOp(const Eigen::CwiseNullaryOp<Eigen::internal::scalar_constant_op<double>, const Eigen::Matrix<double, 1, -1> >&)' at /data/gannet/ripley/R/test-dev/RcppEigen/include/Eigen/src/Core/CwiseNullaryOp.h:60:7,
    inlined from 'Eigen::CwiseBinaryOp<Eigen::internal::scalar_product_op<double, double>, const Eigen::CwiseNullaryOp<Eigen::internal::scalar_constant_op<double>, const Eigen::Matrix<double, 1, -1> >, const Eigen::Transpose<const Eigen::CwiseBinaryOp<Eigen::internal::scalar_product_op<double, double>, const Eigen::Matrix<double, -1, 1>, const Eigen::Map<Eigen::Matrix<double, -1, 1>, 0, Eigen::Stride<0, 0> > > > >::CwiseBinaryOp(const Eigen::CwiseBinaryOp<Eigen::internal::scalar_product_op<double, double>, const Eigen::CwiseNullaryOp<Eigen::internal::scalar_constant_op<double>, const Eigen::Matrix<double, 1, -1> >, const Eigen::Transpose<const Eigen::CwiseBinaryOp<Eigen::internal::scalar_product_op<double, double>, const Eigen::Matrix<double, -1, 1>, const Eigen::Map<Eigen::Matrix<double, -1, 1>, 0, Eigen::Stride<0, 0> > > > >&)' at /data/gannet/ripley/R/test-dev/RcppEigen/include/Eigen/src/Core/CwiseBinaryOp.h:77:7,
    inlined from 'Eigen::Product<Eigen::CwiseBinaryOp<Eigen::internal::scalar_product_op<double, double>, const Eigen::CwiseNullaryOp<Eigen::internal::scalar_constant_op<double>, const Eigen::Matrix<double, 1, -1> >, const Eigen::Transpose<const Eigen::CwiseBinaryOp<Eigen::internal::scalar_product_op<double, double>, const Eigen::Matrix<double, -1, 1>, const Eigen::Map<Eigen::Matrix<double, -1, 1>, 0, Eigen::Stride<0, 0> > > > >, Eigen::Map<const Eigen::Matrix<double, -1, -1> >, 0>::Product(const Eigen::Product<Eigen::CwiseBinaryOp<Eigen::internal::scalar_product_op<double, double>, const Eigen::CwiseNullaryOp<Eigen::internal::scalar_constant_op<double>, const Eigen::Matrix<double, 1, -1> >, const Eigen::Transpose<const Eigen::CwiseBinaryOp<Eigen::internal::scalar_product_op<double, double>, const Eigen::Matrix<double, -1, 1>, const Eigen::Map<Eigen::Matrix<double, -1, 1>, 0, Eigen::Stride<0, 0> > > > >, Eigen::Map<const Eigen::Matrix<double, -1, -1> >, 0>&)' at /data/gannet/ripley/R/test-dev/RcppEigen/include/Eigen/src/Core/Product.h:71:7,
    inlined from 'Eigen::CwiseUnaryOp<Eigen::internal::scalar_abs_op<double>, const Eigen::Product<Eigen::CwiseBinaryOp<Eigen::internal::scalar_product_op<double, double>, const Eigen::CwiseNullaryOp<Eigen::internal::scalar_constant_op<double>, const Eigen::Matrix<double, 1, -1> >, const Eigen::Transpose<const Eigen::CwiseBinaryOp<Eigen::internal::scalar_product_op<double, double>, const Eigen::Matrix<double, -1, 1>, const Eigen::Map<Eigen::Matrix<double, -1, 1>, 0, Eigen::Stride<0, 0> > > > >, Eigen::Map<const Eigen::Matrix<double, -1, -1> >, 0> >::CwiseUnaryOp(const Eigen::CwiseUnaryOp<Eigen::internal::scalar_abs_op<double>, const Eigen::Product<Eigen::CwiseBinaryOp<Eigen::internal::scalar_product_op<double, double>, const Eigen::CwiseNullaryOp<Eigen::internal::scalar_constant_op<double>, const Eigen::Matrix<double, 1, -1> >, const Eigen::Transpose<const Eigen::CwiseBinaryOp<Eigen::internal::scalar_product_op<double, double>, const Eigen::Matrix<double, -1, 1>, const Eigen::Map<Eigen::Matrix<double, -1, 1>, 0, Eigen::Stride<0, 0> > > > >, Eigen::Map<const Eigen::Matrix<double, -1, -1> >, 0> >&)' at /data/gannet/ripley/R/test-dev/RcppEigen/include/Eigen/src/Core/CwiseUnaryOp.h:55:7,
    inlined from 'Eigen::Transpose<MatrixType>::Transpose(const Eigen::Transpose<MatrixType>&) [with MatrixType = const Eigen::CwiseUnaryOp<Eigen::internal::scalar_abs_op<double>, const Eigen::Product<Eigen::CwiseBinaryOp<Eigen::internal::scalar_product_op<double, double>, const Eigen::CwiseNullaryOp<Eigen::internal::scalar_constant_op<double>, const Eigen::Matrix<double, 1, -1> >, const Eigen::Transpose<const Eigen::CwiseBinaryOp<Eigen::internal::scalar_product_op<double, double>, const Eigen::Matrix<double, -1, 1>, const Eigen::Map<Eigen::Matrix<double, -1, 1>, 0, Eigen::Stride<0, 0> > > > >, Eigen::Map<const Eigen::Matrix<double, -1, -1> >, 0> >]' at /data/gannet/ripley/R/test-dev/RcppEigen/include/Eigen/src/Core/Transpose.h:66:5,
    inlined from 'Eigen::CwiseBinaryOp<BinaryOp, Lhs, Rhs>::CwiseBinaryOp(const Lhs&, const Rhs&, const BinaryOp&) [with BinaryOp = Eigen::internal::scalar_product_op<double, double>; LhsType = const Eigen::Transpose<const Eigen::CwiseUnaryOp<Eigen::internal::scalar_abs_op<double>, const Eigen::Product<Eigen::CwiseBinaryOp<Eigen::internal::scalar_product_op<double, double>, const Eigen::CwiseNullaryOp<Eigen::internal::scalar_constant_op<double>, const Eigen::Matrix<double, 1, -1> >, const Eigen::Transpose<const Eigen::CwiseBinaryOp<Eigen::internal::scalar_product_op<double, double>, const Eigen::Matrix<double, -1, 1>, const Eigen::Map<Eigen::Matrix<double, -1, 1>, 0, Eigen::Stride<0, 0> > > > >, Eigen::Map<const Eigen::Matrix<double, -1, -1> >, 0> > >; RhsType = const Eigen::Matrix<double, -1, 1>]' at /data/gannet/ripley/R/test-dev/RcppEigen/include/Eigen/src/Core/CwiseBinaryOp.h:111:9,
    inlined from 'const Eigen::CwiseBinaryOp<Eigen::internal::scalar_product_op<typename Eigen::internal::traits<T>::Scalar, typename Eigen::internal::traits<OtherDerived>::Scalar>, const Derived, const OtherDerived> Eigen::MatrixBase<Derived>::cwiseProduct(const Eigen::MatrixBase<OtherDerived>&) const [with OtherDerived = Eigen::Matrix<double, -1, 1>; Derived = Eigen::Transpose<const Eigen::CwiseUnaryOp<Eigen::internal::scalar_abs_op<double>, const Eigen::Product<Eigen::CwiseBinaryOp<Eigen::internal::scalar_product_op<double, double>, const Eigen::CwiseNullaryOp<Eigen::internal::scalar_constant_op<double>, const Eigen::Matrix<double, 1, -1> >, const Eigen::Transpose<const Eigen::CwiseBinaryOp<Eigen::internal::scalar_product_op<double, double>, const Eigen::Matrix<double, -1, 1>, const Eigen::Map<Eigen::Matrix<double, -1, 1>, 0, Eigen::Stride<0, 0> > > > >, Eigen::Map<const Eigen::Matrix<double, -1, -1> >, 0> > >]' at /data/gannet/ripley/R/test-dev/RcppEigen/include/Eigen/src/Core/../plugins/MatrixCwiseBinaryOps.h:25:97,
    inlined from 'double computeLambdaMaxRcpp(const TG&, const Eigen::Map<Eigen::Matrix<double, -1, 1>, 0, Eigen::Stride<0, 0> >&, const Eigen::Map<Eigen::Matrix<double, -1, 1>, 0, Eigen::Stride<0, 0> >&, const Eigen::Map<Eigen::Matrix<double, -1, -1>, 0, Eigen::Stride<0, 0> >&, const Eigen::Map<Eigen::Matrix<double, -1, 1>, 0, Eigen::Stride<0, 0> >&, const Rcpp::LogicalVector&, const std::string&) [with TG = Eigen::Map<const Eigen::Matrix<double, -1, -1> >]' at rcpp_compute_grid.cpp:44:103:
/data/gannet/ripley/R/test-dev/RcppEigen/include/Eigen/src/Core/functors/NullaryFunctors.h:19:95: warning: 'normalize_weights_e' may be used uninitialized [-Wmaybe-uninitialized]
   19 |   EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE scalar_constant_op(const scalar_constant_op& other) : m_other(other.m_other) { }
      |                                                                                               ^~~~~~~~~~~~~~~~~~~~~~
rcpp_compute_grid.cpp: In function 'double computeLambdaMaxRcpp(const TG&, const Eigen::Map<Eigen::Matrix<double, -1, 1>, 0, Eigen::Stride<0, 0> >&, const Eigen::Map<Eigen::Matrix<double, -1, 1>, 0, Eigen::Stride<0, 0> >&, const Eigen::Map<Eigen::Matrix<double, -1, -1>, 0, Eigen::Stride<0, 0> >&, const Eigen::Map<Eigen::Matrix<double, -1, 1>, 0, Eigen::Stride<0, 0> >&, const Rcpp::LogicalVector&, const std::string&) [with TG = Eigen::Map<const Eigen::Matrix<double, -1, -1> >]':
rcpp_compute_grid.cpp:26:10: note: 'normalize_weights_e' was declared here
   26 |   double normalize_weights_e;
      |          ^~~~~~~~~~~~~~~~~~~
g++-14 -std=gnu++11 -shared -L/usr/local/gcc14/lib64 -L/usr/local/lib64 -o gesso.so RcppExports.o rcpp_compute_grid.o rcpp_wrappers_cv.o rcpp_wrappers_fit.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/gesso/src'
make[1]: Entering directory '/data/gannet/ripley/R/packages/tests-devel/gesso/src'
make[1]: Leaving directory '/data/gannet/ripley/R/packages/tests-devel/gesso/src'
installing to /data/gannet/ripley/R/packages/tests-devel/gesso.Rcheck/00LOCK-gesso/00new/gesso/libs
** R
** inst
** byte-compile and prepare package for lazy loading
** help
*** installing help indices
*** copying figures
** 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 (gesso)