* installing *source* package ‘castor’ ...
** this is package ‘castor’ version ‘1.8.6’
** package ‘castor’ successfully unpacked and MD5 sums checked
** using staged installation
** libs
using C compiler: ‘gcc (GCC) 16.1.1 20260515 (Red Hat 16.1.1-2)’
using C++ compiler: ‘g++ (GCC) 16.1.1 20260515 (Red Hat 16.1.1-2)’
make[1]: Entering directory '/data/localhost/ripley/R/packages/tests-devel/castor/src'
g++ -std=gnu++20 -I"/data/localhost/ripley/R/R-devel/include" -DNDEBUG -I'/data/localhost/ripley/R/test-dev/Rcpp/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++ -std=gnu++20 -I"/data/localhost/ripley/R/R-devel/include" -DNDEBUG -I'/data/localhost/ripley/R/test-dev/Rcpp/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 STMathExpression.cpp -o STMathExpression.o
g++ -std=gnu++20 -I"/data/localhost/ripley/R/R-devel/include" -DNDEBUG -I'/data/localhost/ripley/R/test-dev/Rcpp/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 phylogenetics_cpp_routines.cpp -o phylogenetics_cpp_routines.o
gcc -I"/data/localhost/ripley/R/R-devel/include" -DNDEBUG -I'/data/localhost/ripley/R/test-dev/Rcpp/include' -I/usr/local/include -fpic -g -O2 -Wall -pedantic -mtune=native -Wp,-D_FORTIFY_SOURCE=3 -fexceptions -fstack-protector-strong -fstack-clash-protection -fcf-protection -Werror=implicit-function-declaration -Wstrict-prototypes -c registerDynamicSymbol.c -o registerDynamicSymbol.o
STMathExpression.cpp:10: warning: ignoring ‘#pragma mark ’ [-Wunknown-pragmas]
10 | #pragma mark -
STMathExpression.cpp:11: warning: ignoring ‘#pragma mark String’ [-Wunknown-pragmas]
11 | #pragma mark String manipulations
STMathExpression.cpp:12: warning: ignoring ‘#pragma mark ’ [-Wunknown-pragmas]
12 | #pragma mark
STMathExpression.cpp:65: warning: ignoring ‘#pragma mark ’ [-Wunknown-pragmas]
65 | #pragma mark -
STMathExpression.cpp:66: warning: ignoring ‘#pragma mark MathExpression’ [-Wunknown-pragmas]
66 | #pragma mark MathExpression
STMathExpression.cpp:67: warning: ignoring ‘#pragma mark ’ [-Wunknown-pragmas]
67 | #pragma mark
phylogenetics_cpp_routines.cpp:154: warning: ignoring ‘#pragma mark ’ [-Wunknown-pragmas]
154 | #pragma mark -
phylogenetics_cpp_routines.cpp:155: warning: ignoring ‘#pragma mark Declarations’ [-Wunknown-pragmas]
155 | #pragma mark Declarations
phylogenetics_cpp_routines.cpp:156: warning: ignoring ‘#pragma mark ’ [-Wunknown-pragmas]
156 | #pragma mark
phylogenetics_cpp_routines.cpp:168: warning: ignoring ‘#pragma mark ’ [-Wunknown-pragmas]
168 | #pragma mark -
phylogenetics_cpp_routines.cpp:169: warning: ignoring ‘#pragma mark Functions’ [-Wunknown-pragmas]
169 | #pragma mark Functions for debugging
phylogenetics_cpp_routines.cpp:170: warning: ignoring ‘#pragma mark ’ [-Wunknown-pragmas]
170 | #pragma mark
phylogenetics_cpp_routines.cpp:243: warning: ignoring ‘#pragma mark ’ [-Wunknown-pragmas]
243 | #pragma mark -
phylogenetics_cpp_routines.cpp:244: warning: ignoring ‘#pragma mark Auxiliary’ [-Wunknown-pragmas]
244 | #pragma mark Auxiliary functions
phylogenetics_cpp_routines.cpp:245: warning: ignoring ‘#pragma mark ’ [-Wunknown-pragmas]
245 | #pragma mark
phylogenetics_cpp_routines.cpp:1468: warning: ignoring ‘#pragma mark ’ [-Wunknown-pragmas]
1468 | #pragma mark -
phylogenetics_cpp_routines.cpp:1469: warning: ignoring ‘#pragma mark Graphs’ [-Wunknown-pragmas]
1469 | #pragma mark Graphs
phylogenetics_cpp_routines.cpp:1470: warning: ignoring ‘#pragma mark ’ [-Wunknown-pragmas]
1470 | #pragma mark
phylogenetics_cpp_routines.cpp:1615: warning: ignoring ‘#pragma mark ’ [-Wunknown-pragmas]
1615 | #pragma mark -
phylogenetics_cpp_routines.cpp:1616: warning: ignoring ‘#pragma mark Polynomials’ [-Wunknown-pragmas]
1616 | #pragma mark Polynomials
phylogenetics_cpp_routines.cpp:1617: warning: ignoring ‘#pragma mark ’ [-Wunknown-pragmas]
1617 | #pragma mark
phylogenetics_cpp_routines.cpp:2954: warning: ignoring ‘#pragma mark ’ [-Wunknown-pragmas]
2954 | #pragma mark -
phylogenetics_cpp_routines.cpp:2955: warning: ignoring ‘#pragma mark Integration’ [-Wunknown-pragmas]
2955 | #pragma mark Integration, antiderivatives, derivatives
phylogenetics_cpp_routines.cpp:2956: warning: ignoring ‘#pragma mark ’ [-Wunknown-pragmas]
2956 | #pragma mark
phylogenetics_cpp_routines.cpp:3459: warning: ignoring ‘#pragma mark ’ [-Wunknown-pragmas]
3459 | #pragma mark -
phylogenetics_cpp_routines.cpp:3460: warning: ignoring ‘#pragma mark Vectorized’ [-Wunknown-pragmas]
3460 | #pragma mark Vectorized basic arithmetics
phylogenetics_cpp_routines.cpp:3461: warning: ignoring ‘#pragma mark ’ [-Wunknown-pragmas]
3461 | #pragma mark
phylogenetics_cpp_routines.cpp:3617: warning: ignoring ‘#pragma mark ’ [-Wunknown-pragmas]
3617 | #pragma mark -
phylogenetics_cpp_routines.cpp:3618: warning: ignoring ‘#pragma mark Random’ [-Wunknown-pragmas]
3618 | #pragma mark Random numbers
phylogenetics_cpp_routines.cpp:3619: warning: ignoring ‘#pragma mark ’ [-Wunknown-pragmas]
3619 | #pragma mark
phylogenetics_cpp_routines.cpp:4013: warning: ignoring ‘#pragma mark ’ [-Wunknown-pragmas]
4013 | #pragma mark -
phylogenetics_cpp_routines.cpp:4014: warning: ignoring ‘#pragma mark Matrix’ [-Wunknown-pragmas]
4014 | #pragma mark Matrix algebra
phylogenetics_cpp_routines.cpp:4015: warning: ignoring ‘#pragma mark ’ [-Wunknown-pragmas]
4015 | #pragma mark
phylogenetics_cpp_routines.cpp:7223: warning: ignoring ‘#pragma mark ’ [-Wunknown-pragmas]
7223 | #pragma mark -
phylogenetics_cpp_routines.cpp:7224: warning: ignoring ‘#pragma mark Numerical’ [-Wunknown-pragmas]
7224 | #pragma mark Numerical solvers
phylogenetics_cpp_routines.cpp:7225: warning: ignoring ‘#pragma mark ’ [-Wunknown-pragmas]
7225 | #pragma mark
phylogenetics_cpp_routines.cpp:8636: warning: ignoring ‘#pragma mark ’ [-Wunknown-pragmas]
8636 | #pragma mark -
phylogenetics_cpp_routines.cpp:8637: warning: ignoring ‘#pragma mark Time’ [-Wunknown-pragmas]
8637 | #pragma mark Time series analysis
phylogenetics_cpp_routines.cpp:8638: warning: ignoring ‘#pragma mark ’ [-Wunknown-pragmas]
8638 | #pragma mark
phylogenetics_cpp_routines.cpp:10043: warning: ignoring ‘#pragma mark ’ [-Wunknown-pragmas]
10043 | #pragma mark -
phylogenetics_cpp_routines.cpp:10044: warning: ignoring ‘#pragma mark Class’ [-Wunknown-pragmas]
10044 | #pragma mark Class: LinearInterpolationFunctor
phylogenetics_cpp_routines.cpp:10045: warning: ignoring ‘#pragma mark ’ [-Wunknown-pragmas]
10045 | #pragma mark -
phylogenetics_cpp_routines.cpp:10523: warning: ignoring ‘#pragma mark ’ [-Wunknown-pragmas]
10523 | #pragma mark -
phylogenetics_cpp_routines.cpp:10524: warning: ignoring ‘#pragma mark Stochastic’ [-Wunknown-pragmas]
10524 | #pragma mark Stochastic processes
phylogenetics_cpp_routines.cpp:10525: warning: ignoring ‘#pragma mark ’ [-Wunknown-pragmas]
10525 | #pragma mark
phylogenetics_cpp_routines.cpp:10718: warning: ignoring ‘#pragma mark ’ [-Wunknown-pragmas]
10718 | #pragma mark -
phylogenetics_cpp_routines.cpp:10719: warning: ignoring ‘#pragma mark Deterministic’ [-Wunknown-pragmas]
10719 | #pragma mark Deterministic diversity dynamics
phylogenetics_cpp_routines.cpp:10720: warning: ignoring ‘#pragma mark ’ [-Wunknown-pragmas]
10720 | #pragma mark
phylogenetics_cpp_routines.cpp:11819: warning: ignoring ‘#pragma mark ’ [-Wunknown-pragmas]
11819 | #pragma mark -
phylogenetics_cpp_routines.cpp:11820: warning: ignoring ‘#pragma mark Building’ [-Wunknown-pragmas]
11820 | #pragma mark Building auxiliary data structures
phylogenetics_cpp_routines.cpp:11821: warning: ignoring ‘#pragma mark ’ [-Wunknown-pragmas]
11821 | #pragma mark
phylogenetics_cpp_routines.cpp:12507: warning: ignoring ‘#pragma mark ’ [-Wunknown-pragmas]
12507 | #pragma mark -
phylogenetics_cpp_routines.cpp:12508: warning: ignoring ‘#pragma mark Tree’ [-Wunknown-pragmas]
12508 | #pragma mark Tree statistics
phylogenetics_cpp_routines.cpp:12509: warning: ignoring ‘#pragma mark ’ [-Wunknown-pragmas]
12509 | #pragma mark
phylogenetics_cpp_routines.cpp:14849: warning: ignoring ‘#pragma mark ’ [-Wunknown-pragmas]
14849 | #pragma mark -
phylogenetics_cpp_routines.cpp:14850: warning: ignoring ‘#pragma mark Generating’ [-Wunknown-pragmas]
14850 | #pragma mark Generating & manipulating trees
phylogenetics_cpp_routines.cpp:14851: warning: ignoring ‘#pragma mark ’ [-Wunknown-pragmas]
14851 | #pragma mark
phylogenetics_cpp_routines.cpp:18161: warning: ignoring ‘#pragma mark ’ [-Wunknown-pragmas]
18161 | #pragma mark -
phylogenetics_cpp_routines.cpp:18162: warning: ignoring ‘#pragma mark Comparing’ [-Wunknown-pragmas]
18162 | #pragma mark Comparing trees
phylogenetics_cpp_routines.cpp:18163: warning: ignoring ‘#pragma mark ’ [-Wunknown-pragmas]
18163 | #pragma mark
phylogenetics_cpp_routines.cpp:18581: warning: ignoring ‘#pragma mark ’ [-Wunknown-pragmas]
18581 | #pragma mark -
phylogenetics_cpp_routines.cpp:18582: warning: ignoring ‘#pragma mark Tree’ [-Wunknown-pragmas]
18582 | #pragma mark Tree dating
phylogenetics_cpp_routines.cpp:18583: warning: ignoring ‘#pragma mark ’ [-Wunknown-pragmas]
18583 | #pragma mark
phylogenetics_cpp_routines.cpp:18682: warning: ignoring ‘#pragma mark ’ [-Wunknown-pragmas]
18682 | #pragma mark -
phylogenetics_cpp_routines.cpp:18683: warning: ignoring ‘#pragma mark Plotting’ [-Wunknown-pragmas]
18683 | #pragma mark Plotting trees
phylogenetics_cpp_routines.cpp:18684: warning: ignoring ‘#pragma mark ’ [-Wunknown-pragmas]
18684 | #pragma mark
phylogenetics_cpp_routines.cpp:18905: warning: ignoring ‘#pragma mark ’ [-Wunknown-pragmas]
18905 | #pragma mark -
phylogenetics_cpp_routines.cpp:18906: warning: ignoring ‘#pragma mark Writing’ [-Wunknown-pragmas]
18906 | #pragma mark Writing/reading trees
phylogenetics_cpp_routines.cpp:18907: warning: ignoring ‘#pragma mark ’ [-Wunknown-pragmas]
18907 | #pragma mark
phylogenetics_cpp_routines.cpp:19396: warning: ignoring ‘#pragma mark ’ [-Wunknown-pragmas]
19396 | #pragma mark -
phylogenetics_cpp_routines.cpp:19397: warning: ignoring ‘#pragma mark Statistics’ [-Wunknown-pragmas]
19397 | #pragma mark Statistics of trait distribution
phylogenetics_cpp_routines.cpp:19398: warning: ignoring ‘#pragma mark ’ [-Wunknown-pragmas]
19398 | #pragma mark
phylogenetics_cpp_routines.cpp:20774: warning: ignoring ‘#pragma mark ’ [-Wunknown-pragmas]
20774 | #pragma mark -
phylogenetics_cpp_routines.cpp:20775: warning: ignoring ‘#pragma mark Most’ [-Wunknown-pragmas]
20775 | #pragma mark Most recent common ancestors
phylogenetics_cpp_routines.cpp:20776: warning: ignoring ‘#pragma mark ’ [-Wunknown-pragmas]
20776 | #pragma mark
phylogenetics_cpp_routines.cpp:21213: warning: ignoring ‘#pragma mark ’ [-Wunknown-pragmas]
21213 | #pragma mark -
phylogenetics_cpp_routines.cpp:21214: warning: ignoring ‘#pragma mark Ancestral’ [-Wunknown-pragmas]
21214 | #pragma mark Ancestral state reconstruction
phylogenetics_cpp_routines.cpp:21215: warning: ignoring ‘#pragma mark ’ [-Wunknown-pragmas]
21215 | #pragma mark
phylogenetics_cpp_routines.cpp:22993: warning: ignoring ‘#pragma mark ’ [-Wunknown-pragmas]
22993 | #pragma mark -
phylogenetics_cpp_routines.cpp:22994: warning: ignoring ‘#pragma mark MuSSE’ [-Wunknown-pragmas]
22994 | #pragma mark MuSSE model fitting
phylogenetics_cpp_routines.cpp:22995: warning: ignoring ‘#pragma mark ’ [-Wunknown-pragmas]
22995 | #pragma mark
phylogenetics_cpp_routines.cpp:24259: warning: ignoring ‘#pragma mark ’ [-Wunknown-pragmas]
24259 | #pragma mark -
phylogenetics_cpp_routines.cpp:24260: warning: ignoring ‘#pragma mark Homogenous’ [-Wunknown-pragmas]
24260 | #pragma mark Homogenous Birth-Death models
phylogenetics_cpp_routines.cpp:24261: warning: ignoring ‘#pragma mark ’ [-Wunknown-pragmas]
24261 | #pragma mark
phylogenetics_cpp_routines.cpp:25717: warning: ignoring ‘#pragma mark ’ [-Wunknown-pragmas]
25717 | #pragma mark -
phylogenetics_cpp_routines.cpp:25718: warning: ignoring ‘#pragma mark Homogenous’ [-Wunknown-pragmas]
25718 | #pragma mark Homogenous Birth-Death-Sampling model
phylogenetics_cpp_routines.cpp:25719: warning: ignoring ‘#pragma mark ’ [-Wunknown-pragmas]
25719 | #pragma mark
phylogenetics_cpp_routines.cpp:26828: warning: ignoring ‘#pragma mark ’ [-Wunknown-pragmas]
26828 | #pragma mark -
phylogenetics_cpp_routines.cpp:26829: warning: ignoring ‘#pragma mark Simulate’ [-Wunknown-pragmas]
26829 | #pragma mark Simulate models of trait evolution
phylogenetics_cpp_routines.cpp:26830: warning: ignoring ‘#pragma mark ’ [-Wunknown-pragmas]
26830 | #pragma mark
phylogenetics_cpp_routines.cpp:27342: warning: ignoring ‘#pragma mark ’ [-Wunknown-pragmas]
27342 | #pragma mark -
phylogenetics_cpp_routines.cpp:27343: warning: ignoring ‘#pragma mark Generating’ [-Wunknown-pragmas]
27343 | #pragma mark Generating random trees via cladogenic models
phylogenetics_cpp_routines.cpp:27344: warning: ignoring ‘#pragma mark ’ [-Wunknown-pragmas]
27344 | #pragma mark
phylogenetics_cpp_routines.cpp:30003: warning: ignoring ‘#pragma mark ’ [-Wunknown-pragmas]
30003 | #pragma mark -
phylogenetics_cpp_routines.cpp:30004: warning: ignoring ‘#pragma mark Generating’ [-Wunknown-pragmas]
30004 | #pragma mark Generating gene trees
phylogenetics_cpp_routines.cpp:30005: warning: ignoring ‘#pragma mark ’ [-Wunknown-pragmas]
30005 | #pragma mark
phylogenetics_cpp_routines.cpp:31249: warning: ignoring ‘#pragma mark ’ [-Wunknown-pragmas]
31249 | #pragma mark -
phylogenetics_cpp_routines.cpp:31250: warning: ignoring ‘#pragma mark Spherical’ [-Wunknown-pragmas]
31250 | #pragma mark Spherical Brownian motion
phylogenetics_cpp_routines.cpp:31251: warning: ignoring ‘#pragma mark ’ [-Wunknown-pragmas]
31251 | #pragma mark
phylogenetics_cpp_routines.cpp:32783: warning: ignoring ‘#pragma mark ’ [-Wunknown-pragmas]
32783 | #pragma mark -
phylogenetics_cpp_routines.cpp:32784: warning: ignoring ‘#pragma mark Loading’ [-Wunknown-pragmas]
32784 | #pragma mark Loading files
phylogenetics_cpp_routines.cpp:32785: warning: ignoring ‘#pragma mark ’ [-Wunknown-pragmas]
32785 | #pragma mark
phylogenetics_cpp_routines.cpp:32973: warning: ignoring ‘#pragma mark ’ [-Wunknown-pragmas]
32973 | #pragma mark -
phylogenetics_cpp_routines.cpp:32974: warning: ignoring ‘#pragma mark Working’ [-Wunknown-pragmas]
32974 | #pragma mark Working with raw sequences
phylogenetics_cpp_routines.cpp:32975: warning: ignoring ‘#pragma mark ’ [-Wunknown-pragmas]
32975 | #pragma mark
phylogenetics_cpp_routines.cpp: In function ‘void string_to_ascii(const std::string&, lvector&)’:
phylogenetics_cpp_routines.cpp:252:20: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::__cxx11::basic_string<char>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
252 | for(long i=0; i<input.length(); ++i){
| ~^~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘long int count_occurrences(const std::string&, char, bool)’:
phylogenetics_cpp_routines.cpp:344:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::__cxx11::basic_string<char>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
344 | for(long i=0; i<haystack.size(); ++i){
| ~^~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘void split_string(const std::string&, const std::string&, long int, std::vector<std::__cxx11::basic_string<char> >&)’:
phylogenetics_cpp_routines.cpp:367:46: warning: comparison of integer expressions of different signedness: ‘std::vector<std::__cxx11::basic_string<char> >::size_type’ {aka ‘long unsigned int’} and ‘const long int’ [-Wsign-compare]
367 | while((max_Nparts<0) || (parts.size()<max_Nparts)){
| ~~~~~~~~~~~~^~~~~~~~~~~
phylogenetics_cpp_routines.cpp:369:23: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘const std::__cxx11::basic_string<char>::size_type’ {aka ‘const long unsigned int’} [-Wsign-compare]
369 | if(pos==string::npos) break;
| ~~~^~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:373:43: warning: comparison of integer expressions of different signedness: ‘std::vector<std::__cxx11::basic_string<char> >::size_type’ {aka ‘long unsigned int’} and ‘const long int’ [-Wsign-compare]
373 | if((max_Nparts<0) || (parts.size()<max_Nparts)){
| ~~~~~~~~~~~~^~~~~~~~~~~
STMathExpression.cpp: In static member function ‘static long int MathExpression::splitBinaryOperatorInverseOrder(const std::string&, long int, long int, const std::vector<long int>&)’:
STMathExpression.cpp:256:42: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘const std::__cxx11::basic_string<char>::size_type’ {aka ‘const long unsigned int’} [-Wsign-compare]
256 | else if(j==string::npos){ if(!STMath_isReal(expression.substr(0,i-1))) return getLeftMostOfPlusMinusOperatorChain(expression,start,i); }
| ~^~~~~~~~~~~~~~
STMathExpression.cpp: In member function ‘std::string MathExpression::parseBlock(const std::string&, long int, long int, const std::vector<long int>&, const std::map<std::__cxx11::basic_string<char>, long int>&, const std::map<std::__cxx11::basic_string<char>, long int>&, long int, bool)’:
STMathExpression.cpp:313:105: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::__cxx11::basic_string<char>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
313 | if(isWhiteSpace(expression,start,end)) return "Missing "+(start==0 ? "leading expression" : (end==expression.size()-1 ? "trailing expression" : "expression between '"+expression.substr(0,start)+"' and '"+expression.substr(end+1)+"'"));
| ~~~^~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘long int find_first_non_nan(const std::vector<double>&, long int)’:
phylogenetics_cpp_routines.cpp:470:28: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
470 | for(long n=start; n<haystack.size(); ++n){
| ~^~~~~~~~~~~~~~~~
STMathExpression.cpp:359:37: warning: comparison of integer expressions of different signedness: ‘const long int’ and ‘const std::__cxx11::basic_string<char>::size_type’ {aka ‘const long unsigned int’} [-Wsign-compare]
359 | if((rightMostBracket==string::npos) || (rightMostBracket<start)){
| ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘long int vector_sum(const std::vector<char>&)’:
phylogenetics_cpp_routines.cpp:717:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<char>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
717 | for(long i=0; i<values.size(); ++i) S += values[i];
| ~^~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘double smallest_nonzero_step(const std::vector<double>&)’:
phylogenetics_cpp_routines.cpp:732:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
732 | for(long i=0; i<times.size(); ++i){
| ~^~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘double vector_mean(const std::vector<double>&)’:
phylogenetics_cpp_routines.cpp:750:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
750 | for(long i=0; i<values.size(); ++i) S += values[i];
| ~^~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘double vector_abs_mean(const std::vector<double>&)’:
phylogenetics_cpp_routines.cpp:757:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
757 | for(long i=0; i<values.size(); ++i) S += abs(values[i]);
| ~^~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘double vector_max_abs(const std::vector<double>&)’:
phylogenetics_cpp_routines.cpp:786:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
786 | for(long i=0; i<values.size(); ++i) A = max(A, abs(values[i]));
| ~^~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘void make_vector_positive(std::vector<double>&)’:
phylogenetics_cpp_routines.cpp:817:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
817 | for(long i=0; i<values.size(); ++i) values[i] = max(0.0, values[i]);
| ~^~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘void replace_negatives(std::vector<double>&, double)’:
phylogenetics_cpp_routines.cpp:822:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
822 | for(long i=0; i<values.size(); ++i){
| ~^~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘void replace_non_positives(std::vector<double>&, double)’:
phylogenetics_cpp_routines.cpp:829:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
829 | for(long i=0; i<values.size(); ++i){
| ~^~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘void cap_values(double, double, std::vector<double>&)’:
phylogenetics_cpp_routines.cpp:839:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
839 | for(long i=0; i<values.size(); ++i){
| ~^~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘long int vector_count_zeros(const std::vector<long int>&)’:
phylogenetics_cpp_routines.cpp:892:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
892 | for(long i=0; i<values.size(); ++i) S += (values[i]==0 ? 1 : 0);
| ~^~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘int taxon_descends(const std::vector<std::__cxx11::basic_string<char> >&, const std::vector<std::__cxx11::basic_string<char> >&)’:
phylogenetics_cpp_routines.cpp:912:32: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘const long unsigned int’ [-Wsign-compare]
912 | for(long level=0; level<min(parent_taxonomy.size(), child_taxonomy.size()); ++level){
| ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘void remove_item_from_mapped_list(lvector&, lvector&, long int)’:
phylogenetics_cpp_routines.cpp:958:33: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits<std::allocator<long int>, long int>::value_type’ {aka ‘long int’} and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
958 | if(pool2list[pool_index]==list2pool.size()-1){
phylogenetics_cpp_routines.cpp: In function ‘long int get_nearest_index(const std::vector<long int>&, long int)’:
phylogenetics_cpp_routines.cpp:986:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
986 | for(long i=0; i<(haystack.size()-1); ++i){
| ~^~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘Rcpp::List dense_binary_matrix_row2column_major_CPP(long int, long int, const Rcpp::List&, bool)’:
phylogenetics_cpp_routines.cpp:1007:32: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
1007 | for(long i=0; i<dense_row.size(); ++i){
| ~^~~~~~~~~~~~~~~~~
STMathExpression.cpp: In static member function ‘static bool MathExpression::findBracketPairs(const std::string&, std::vector<long int>&)’:
STMathExpression.cpp:463:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::__cxx11::basic_string<char>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
463 | for(long i=0; i<expression.length(); ++i){
| ~^~~~~~~~~~~~~~~~~~~~
STMathExpression.cpp: In static member function ‘static bool MathExpression::findRoundBracketPairs(const std::string&, std::vector<long int>&)’:
STMathExpression.cpp:500:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::__cxx11::basic_string<char>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
500 | for(long i=0; i<expression.length(); ++i){
| ~^~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘void filtered_indices_to_bool(long int, const lvector&, const lvector&, bvector&)’:
phylogenetics_cpp_routines.cpp:1432:32: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
1432 | for(long i=0; i<only_indices.size(); ++i){
| ~^~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:1437:32: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
1437 | for(long i=0; i<omit_indices.size(); ++i){
| ~^~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘std::string lowecase(const std::string&)’:
phylogenetics_cpp_routines.cpp:1446:26: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::__cxx11::basic_string<char>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
1446 | for(long i = 0; i<lower.size(); ++i){
| ~^~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘bool is_proper_taxon_name(const std::string&)’:
phylogenetics_cpp_routines.cpp:1461:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::__cxx11::basic_string<char>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
1461 | for(long i=0; i<taxon.size(); ++i){
| ~^~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘double sum_piecewise_polynomials(const std::vector<std::vector<double> >&, const lvector&, const dvector&, double, long int)’:
phylogenetics_cpp_routines.cpp:1651:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
1651 | for(long i=0; i<Ydegrees.size(); ++i){
| ~^~~~~~~~~~~~~~~~
STMathExpression.cpp: In member function ‘void MathExpression::printDebug(std::ostream&) const’:
STMathExpression.cpp:953:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
953 | for(long i=0; i<variableValues.size(); ++i){
| ~^~~~~~~~~~~~~~~~~~~~~~
STMathExpression.cpp:957:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
957 | for(long i=0; i<stackValues.size(); ++i){
| ~^~~~~~~~~~~~~~~~~~~
STMathExpression.cpp: In member function ‘double MathExpression::operator()(const std::vector<double>&) const’:
STMathExpression.cpp:981:34: warning: comparison of integer expressions of different signedness: ‘const __gnu_cxx::__alloc_traits<std::allocator<long int>, long int>::value_type’ {aka ‘const long int’} and ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
981 | if(variableIDs[i]>=x.size()){ variableValues[i]=0; }
STMathExpression.cpp: In member function ‘double MathExpression::operator()(const std::vector<double>&, long int, ...) const’:
STMathExpression.cpp:1044:34: warning: comparison of integer expressions of different signedness: ‘const __gnu_cxx::__alloc_traits<std::allocator<long int>, long int>::value_type’ {aka ‘const long int’} and ‘long unsigned int’ [-Wsign-compare]
1044 | if(variableIDs[i]>=x.size()+numberOfAdditionalVariables){ variableValues[i]=0; }
STMathExpression.cpp:1045:39: warning: comparison of integer expressions of different signedness: ‘const __gnu_cxx::__alloc_traits<std::allocator<long int>, long int>::value_type’ {aka ‘const long int’} and ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
1045 | else if(variableIDs[i]<x.size()){ variableValues[i]=x[variableIDs[i]]; }
phylogenetics_cpp_routines.cpp: In function ‘Rcpp::NumericVector evaluate_spline_CPP(const std::vector<double>&, const std::vector<double>&, long int, const std::vector<double>&, const std::string&, long int)’:
phylogenetics_cpp_routines.cpp:2872:30: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
2872 | for(long t=0, g=-1; t<Xtarget.size(); ++t){
| ~^~~~~~~~~~~~~~~
STMathExpression.cpp: In member function ‘bool MathExpression::dependsOnVariable(const std::string&) const’:
STMathExpression.cpp:1195:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<std::__cxx11::basic_string<char> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
1195 | for(long i=0; i<variableNames.size(); ++i){
| ~^~~~~~~~~~~~~~~~~~~~~
STMathExpression.cpp: In member function ‘bool MathExpression::dependsOnVariableWithPrefix(const std::string&) const’:
STMathExpression.cpp:1202:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<std::__cxx11::basic_string<char> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
1202 | for(long i=0; i<variableNames.size(); ++i){
| ~^~~~~~~~~~~~~~~~~~~~~
STMathExpression.cpp: In static member function ‘static bool MathExpression::isValidName(const std::string&, std::string&)’:
STMathExpression.cpp:1258:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::__cxx11::basic_string<char>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
1258 | for(long i=0; i<s.size(); ++i){
| ~^~~~~~~~~
STMathExpression.cpp: In static member function ‘static std::string MathExpression::lowercase(std::string)’:
STMathExpression.cpp:1269:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::__cxx11::basic_string<char>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
1269 | for(long n=0; n<s.length(); ++n){ s[n] = tolower(s[n]); }
| ~^~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘Rcpp::NumericVector get_antiderivative_CPP(const std::vector<double>&, double, const std::vector<double>&, long int, const std::vector<double>&)’:
phylogenetics_cpp_routines.cpp:3312:29: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
3312 | for(long t=0, g=0; t<Xtarget.size(); ++t){
| ~^~~~~~~~~~~~~~~
STMathExpression.cpp: In function ‘Rcpp::List evaluate_univariate_expression_CPP(const std::string&, const std::string&, const std::vector<double>&)’:
STMathExpression.cpp:1378:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
1378 | for(long i=0; i<X.size(); ++i){
| ~^~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘Rcpp::NumericVector get_derivative_CPP(const std::vector<double>&, const std::vector<double>&, long int, const std::vector<double>&)’:
phylogenetics_cpp_routines.cpp:3339:32: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
3339 | for(long t=0, g=0, p; t<Xtarget.size(); ++t){
| ~^~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘std::vector<bool>& operator&=(std::vector<bool>&, const std::vector<bool>&)’:
phylogenetics_cpp_routines.cpp:3611:20: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<bool>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
3611 | for(long i=0; i<x.size(); ++i){
| ~^~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘void QR_linear_least_squares(double*, long int, long int, long int, long int, const double*, long int*, double*, double*, double*)’:
phylogenetics_cpp_routines.cpp:4543:17: warning: variable ‘info’ set but not used [-Wunused-but-set-variable=]
4543 | long i, info, j, k;
| ^~~~
phylogenetics_cpp_routines.cpp: In member function ‘void matrix_exponentiator::initialize(long int, const std::vector<std::complex<double> >&, const std::vector<std::complex<double> >&, const std::vector<std::complex<double> >&, double)’:
phylogenetics_cpp_routines.cpp:5894:40: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<std::complex<double> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
5894 | for(long r=0; r<eigenvalues.size(); ++r) eigenvalues[r] *= rescaling;
| ~^~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘void apply_approximate_RosenbrockEuler_exponential(long int, long int, const std::vector<double>&, const double&, const std::vector<double>&, const long int&, std::vector<double>&, std::vector<double>&, std::vector<double>&)’:
phylogenetics_cpp_routines.cpp:5974:19: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
5974 | for(k=0; k<Y.size(); ++k) Y[k] = scaling*X[k];
| ~^~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘double dot_product(const dvector&, const dvector&)’:
phylogenetics_cpp_routines.cpp:6006:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
6006 | for(long i=0; i<X.size(); ++i) S += X[i]*Y[i];
| ~^~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘void refine_piecewise_polynomial(long int, long int, const double*, const double*, bool, const dvector&, dvector&)’:
phylogenetics_cpp_routines.cpp:8919:32: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
8919 | for(long ng=0, og=0; ng<newTimes.size(); ++ng){
| ~~^~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘void refine_piecewise_polynomial(long int, const dvector&, const dvector&, bool, const dvector&, dvector&, dvector&)’:
phylogenetics_cpp_routines.cpp:8956:32: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
8956 | for(long ng=0, og=0; ng<newTimes.size(); ++ng){
| ~~^~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘Rcpp::List monotonize_series_via_interpolation_CPP(const std::vector<double>&, std::vector<double>, bool, bool)’:
phylogenetics_cpp_routines.cpp:10000:56: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
10000 | for(long k=0; k<invalids.size(); ++k){
| ~^~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:10026:56: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
10026 | for(long k=0; k<invalids.size(); ++k){
| ~^~~~~~~~~~~~~~~~
STMathExpression.cpp: In instantiation of ‘void MathExpression::printTuple(std::ostream&, const std::vector<T>&) const [with TYPE = long int; std::ostream = std::basic_ostream<char>]’:
STMathExpression.cpp:961:14: required from here
961 | printTuple(stream, stackArguments[i]);
| ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
STMathExpression.cpp:1227:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
1227 | for(long i=0; i<components.size(); ++i){
| ~^~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In member function ‘void TreeSpeciationExtinctionModel::calculate_coalescent_diversities()’:
phylogenetics_cpp_routines.cpp:10988:32: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
10988 | for(long t=0; t<times.size(); ++t){
| ~^~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘void get_cumulative_edge_lengths_per_node(long int, long int, long int, long int, const std::vector<long int>&, const std::vector<double>&, std::vector<double>&)’:
phylogenetics_cpp_routines.cpp:12745:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
12745 | for(long q=0; q<traversal_queue.size(); ++q){
| ~^~~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘void get_clade_ages(long int, long int, long int, const std::vector<long int>&, const std::vector<double>&, const tree_context&, dvector&)’:
phylogenetics_cpp_routines.cpp:12867:31: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
12867 | for(long q=0, clade; q<context.queue.size(); ++q){
| ~^~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘Rcpp::List get_closest_tip_per_clade_CPP(long int, long int, long int, const std::vector<long int>&, const std::vector<double>&, const std::vector<long int>&, bool, bool, const std::string&)’:
phylogenetics_cpp_routines.cpp:12973:32: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
12973 | for(long t=0; t<onlyToTips.size(); ++t){
| ~^~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:13004:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
13004 | for(long q=0; q<traversal_queue_root2tips.size(); ++q){
| ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘Rcpp::List get_farthest_tip_per_clade_CPP(long int, long int, long int, const std::vector<long int>&, const std::vector<double>&, const std::vector<long int>&, bool, bool, const std::string&)’:
phylogenetics_cpp_routines.cpp:13092:32: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
13092 | for(long t=0; t<onlyToTips.size(); ++t){
| ~^~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:13123:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
13123 | for(long q=1; q<traversal_queue_root2tips.size(); ++q){
| ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:13151:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
13151 | for(long q=0; q<traversal_queue_root2tips.size(); ++q){
| ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘Rcpp::List get_farthest_tips_per_edge_CPP(long int, long int, long int, const std::vector<long int>&, const std::vector<double>&, const std::vector<long int>&)’:
phylogenetics_cpp_routines.cpp:13213:32: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
13213 | for(long t=0; t<onlyToTips.size(); ++t){
| ~^~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:13243:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
13243 | for(long q=0; q<context.queue.size(); ++q){
| ~^~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘Rcpp::NumericMatrix get_distance_matrix_between_clades_CPP(long int, long int, long int, const std::vector<long int>&, const std::vector<double>&, const std::vector<long int>&, bool, const std::string&)’:
phylogenetics_cpp_routines.cpp:13335:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
13335 | for(long q=0; q<traversal_queue.size(); ++q){
| ~^~~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:13355:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
13355 | for(long q=0; q<traversal_queue.size(); ++q){
| ~^~~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘Rcpp::NumericVector get_distances_between_clades_CPP(long int, long int, long int, const std::vector<long int>&, const std::vector<double>&, const std::vector<long int>&, const std::vector<long int>&, bool, const std::string&)’:
phylogenetics_cpp_routines.cpp:13466:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
13466 | for(long q=0; q<traversal_queue.size(); ++q){
| ~^~~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:13486:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
13486 | for(long q=0; q<traversal_queue.size(); ++q){
| ~^~~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘Rcpp::List count_clades_at_regular_times_CPP(long int, long int, long int, const std::vector<long int>&, const std::vector<double>&, long int, double, double, bool, long int, bool)’:
phylogenetics_cpp_routines.cpp:13679:31: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
13679 | for(long q=0, clade; q<context.queue.size(); ++q){
| ~^~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘Rcpp::IntegerVector count_clades_at_times_CPP(long int, long int, long int, const std::vector<long int>&, const std::vector<double>&, const std::vector<double>&, long int)’:
phylogenetics_cpp_routines.cpp:13780:31: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
13780 | for(long q=0, clade; q<context.queue.size(); ++q){
| ~^~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘Rcpp::List get_speciation_extinction_events_CPP(long int, long int, long int, const std::vector<long int>&, const std::vector<double>&, double, double, const std::vector<long int>&, const std::vector<long int>&)’:
phylogenetics_cpp_routines.cpp:13937:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
13937 | for(long q=0; q<queue_root2tips.size(); ++q){
| ~^~~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:13961:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
13961 | for(long c=0; c<only_clades.size(); ++c) include_clade[only_clades[c]] = true;
| ~^~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:13962:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
13962 | for(long c=0; c<omit_clades.size(); ++c) include_clade[omit_clades[c]] = false;
| ~^~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘void get_relative_evolutionary_divergences(long int, long int, long int, const std::vector<long int>&, const std::vector<double>&, std::vector<double>&)’:
phylogenetics_cpp_routines.cpp:14107:45: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
14107 | for(long q=1, clade, pnode, cnode; q<context.queue.size(); ++q){
| ~^~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘double get_gamma_statistic_CPP(long int, long int, long int, const std::vector<long int>&, const std::vector<double>&)’:
phylogenetics_cpp_routines.cpp:14363:31: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
14363 | for(long q=0, clade; q<context.queue.size(); ++q){
| ~^~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘Rcpp::IntegerVector extract_tip_neighborhood_CPP(long int, long int, long int, const std::vector<long int>&, long int, long int, long int)’:
phylogenetics_cpp_routines.cpp:14528:16: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
14528 | while(k<clade_queue.size()){
| ~^~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘Rcpp::IntegerVector extract_deep_frame_CPP(long int, long int, long int, const std::vector<long int>&, long int)’:
phylogenetics_cpp_routines.cpp:14585:28: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
14585 | while(queue_pointer<clades.size()){
| ~~~~~~~~~~~~~^~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:14602:31: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
14602 | for(long c=0, clade; c<clades.size(); ++c){
| ~^~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘Rcpp::NumericVector get_all_distances_to_tip_CPP(long int, long int, long int, const std::vector<long int>&, const std::vector<double>&, long int)’:
phylogenetics_cpp_routines.cpp:14647:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
14647 | for(long q=0; q<context.queue.size(); ++q){
| ~^~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘Rcpp::List inherit_taxonomies_CPP(long int, long int, long int, const std::vector<long int>&, const std::vector<std::__cxx11::basic_string<char> >&, const std::vector<std::__cxx11::basic_string<char> >&, const std::vector<long int>&, bool, const std::string&, bool, const std::string&)’:
phylogenetics_cpp_routines.cpp:14745:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
14745 | for(long i=0; i<focal_clades.size(); ++i) clade_is_relevant[focal_clades[i]] = true;
| ~^~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:14799:32: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
14799 | for(long q=0; q<context.queue.size(); ++q){
| ~^~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:14810:32: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
14810 | for(long q=0; q<context.queue.size(); ++q){
| ~^~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:14821:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
14821 | for(long q=0; q<context.queue.size(); ++q){
| ~^~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:14838:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
14838 | for(long i=0; i<focal_clades.size(); ++i){
| ~^~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:14737:21: warning: unused variable ‘node’ [-Wunused-variable]
14737 | long clade, node, edge, parent;
| ^~~~
phylogenetics_cpp_routines.cpp:14737:27: warning: unused variable ‘edge’ [-Wunused-variable]
14737 | long clade, node, edge, parent;
| ^~~~
phylogenetics_cpp_routines.cpp: In function ‘Rcpp::List get_subtree_with_specific_clades_CPP(long int, long int, long int, const std::vector<long int>&, const std::vector<double>&, const std::vector<long int>&, bool, bool, bool, bool)’:
phylogenetics_cpp_routines.cpp:15392:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
15392 | for(long c=0; c<clades_to_keep.size(); ++c){
| ~^~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:15409:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
15409 | for(long q=0; q<traversal_queue_root2tips.size(); ++q){
| ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘long int find_root_for_monophyletic_clade_CPP(long int, long int, long int, std::vector<long int>, bool, const std::vector<long int>&, bool)’:
phylogenetics_cpp_routines.cpp:16233:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
16233 | for(long t=0; t<target_tips.size(); ++t){
| ~^~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:16256:38: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
16256 | for(long q=1, cnode, pnode; q<traversal_queue_root2tips.size(); ++q){
| ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘Rcpp::List find_edge_splitting_tree_CPP(long int, long int, long int, std::vector<long int>, bool, const std::vector<long int>&, bool)’:
phylogenetics_cpp_routines.cpp:16363:29: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
16363 | for(long t=0, tip; t<target_tips.size(); ++t){
| ~^~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:16377:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
16377 | for(long q=1; q<traversal_queue_root2tips.size(); ++q){
| ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:16412:32: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
16412 | for(long q=1; q<traversal_queue_root2tips.size(); ++q){
| ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘Rcpp::List trim_tree_at_height_CPP(long int, long int, long int, const std::vector<long int>&, const std::vector<double>&, double)’:
phylogenetics_cpp_routines.cpp:16679:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
16679 | for(long q=0; q<traversal_queue.size(); ++q){
| ~^~~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘Rcpp::List split_tree_at_height_CPP(long int, long int, long int, const std::vector<long int>&, const std::vector<double>&, double, double)’:
phylogenetics_cpp_routines.cpp:16789:32: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
16789 | for(long q=0; q<context.queue.size(); ++q){
| ~^~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘Rcpp::List merge_nodes_to_multifurcations_CPP(long int, long int, long int, const std::vector<long int>&, const std::vector<double>&, const std::vector<long int>&, bool, bool)’:
phylogenetics_cpp_routines.cpp:17129:38: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
17129 | for(long n=0, node; n<nodes_to_merge.size(); ++n){
| ~^~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:17139:49: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
17139 | for(long n=0, e, pnode, child; n<nodes_to_merge.size(); ++n){
| ~^~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:17203:89: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
17203 | for(long q=0, clade, node, absorbing_ancestor, parent, child, e, edge, inedge; q<context.queue.size(); ++q){
| ~^~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘Rcpp::List shift_clade_times_CPP(long int, long int, long int, const std::vector<long int>&, const std::vector<double>&, const std::vector<long int>&, const std::vector<double>&, bool, const std::string&)’:
phylogenetics_cpp_routines.cpp:17300:48: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
17300 | for(long s=0, clade, inedge, node, e; s<clades_to_shift.size(); ++s){
| ~^~~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:17323:56: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
17323 | for(long q=1, clade, node, inedge, e; q<context.queue.size(); ++q){
| ~^~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:17357:47: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
17357 | for(long q=1, clade, inedge; q<context.queue.size(); ++q){
| ~^~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘void assign_clades_to_taxa(long int, long int, long int, const std::vector<long int>&, const std::vector<long int>&, std::vector<long int>&)’:
phylogenetics_cpp_routines.cpp:17693:31: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
17693 | for(long q=0, clade; q<traversal_queue.size(); ++q){
| ~^~~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘Rcpp::List place_tips_taxonomically_CPP(long int, long int, long int, const std::vector<long int>&, const std::vector<std::__cxx11::basic_string<char> >&, const std::vector<std::__cxx11::basic_string<char> >&, const std::string&, const std::string&, bool)’:
phylogenetics_cpp_routines.cpp:18089:32: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
18089 | for(long f=0; f<fits.size(); ++f){
| ~^~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:18090:66: warning: comparison of integer expressions of different signedness: ‘std::vector<std::__cxx11::basic_string<char> >::size_type’ {aka ‘long unsigned int’} and ‘long int’ [-Wsign-compare]
18090 | if(clade_taxonomies_split[fits[f]].size()==max_precision) precise_fits.push_back(fits[f]);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘Rcpp::List tree_from_placements_CPP(long int, long int, long int, std::vector<long int>, std::vector<double>, const std::vector<long int>&, const std::vector<double>&, const std::vector<double>&)’:
phylogenetics_cpp_routines.cpp:18127:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
18127 | for(long i=0; i<tree_edge.size(); ++i){
| ~^~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘Rcpp::List congruify_trees_CPP(long int, long int, long int, const std::vector<long int>&, long int, long int, long int, const std::vector<long int>&, const std::vector<long int>&)’:
phylogenetics_cpp_routines.cpp:18325:38: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
18325 | for(long m=0, Tnode, Rnode; m<mapped_Tnodes.size(); ++m){
| ~^~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘Rcpp::List get_Robinson_Foulds_distance_CPP(long int, long int, long int, const std::vector<long int>&, long int, long int, const std::vector<long int>&, const std::vector<long int>&)’:
phylogenetics_cpp_routines.cpp:18555:60: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
18555 | for(long fb=0, fa=-1, f; fb<membershipsB[nodeB].size(); ++fb){
| ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘std::vector<double> relative_to_absolute_node_ages_CPP(long int, long int, long int, const std::vector<long int>&, const std::vector<long int>&, const std::vector<double>&, const std::vector<double>&, const std::vector<double>&)’:
phylogenetics_cpp_routines.cpp:18611:44: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
18611 | for(long q=1, clade, node, pnode; q<traversal_queue.size(); ++q){
| ~^~~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘std::vector<double> propagate_min_ages_upstream_CPP(long int, long int, long int, const std::vector<long int>&, const std::vector<long int>&, const std::vector<long int>&, const std::vector<long int>&)’:
phylogenetics_cpp_routines.cpp:18635:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
18635 | for(long a=0; a<anchor_nodes.size(); ++a){
| ~^~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘std::vector<double> propagate_max_ages_downstream_CPP(long int, long int, long int, const std::vector<long int>&, const std::vector<long int>&, const std::vector<long int>&, const std::vector<long int>&)’:
phylogenetics_cpp_routines.cpp:18664:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
18664 | for(long a=0; a<anchor_nodes.size(); ++a){
| ~^~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:18669:44: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
18669 | for(long q=0, clade, node, pnode; q<traversal_queue.size(); ++q){
| ~^~~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘Rcpp::List get_phylogram_geometry_CPP(long int, long int, long int, std::vector<long int>, const std::vector<double>&)’:
phylogenetics_cpp_routines.cpp:18731:39: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
18731 | for(long q=1, clade, parent; q<traversal_queue.size(); ++q){
| ~^~~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:18748:37: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
18748 | for(long q=0, clade, node; q<traversal_queue.size(); ++q){
| ~^~~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘Rcpp::List get_radial_tree_geometry_CPP(long int, long int, long int, std::vector<long int>, const std::vector<double>&, double, bool, double)’:
phylogenetics_cpp_routines.cpp:18814:50: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
18814 | for(long q=0, clade, node, edge, child; q<context.queue.size(); ++q){
| ~^~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:18856:39: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
18856 | for(long q=1, clade, parent; q<context.queue.size(); ++q){
| ~^~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘void aux_get_trait_depth_consenTRAIT(long int, long int, long int, long int, const std::vector<long int>&, const std::vector<double>&, const std::vector<long int>&, double, bool, bool, const std::vector<long int>&, const std::vector<long int>&, const std::vector<long int>&, const std::vector<long int>&, const std::vector<long int>&, const std::vector<long int>&, const std::vector<double>&, double, bool, std::vector<long int>&, std::vector<long int>&, std::vector<double>&, double&, double&, double&, double&, long int&, std::vector<long int>&, bool, const std::string&)’:
phylogenetics_cpp_routines.cpp:19471:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
19471 | for(long q=0; q<traversal_queue.size(); ++q){
| ~^~~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘void aux_get_discrete_trait_depths(long int, long int, long int, long int, long int, const std::vector<long int>&, const std::vector<double>&, const std::vector<long int>&, double, bool, bool, const std::vector<long int>&, const std::vector<long int>&, const std::vector<long int>&, const std::vector<long int>&, const std::vector<long int>&, const std::vector<long int>&, const std::vector<double>&, double, std::vector<long int>&, double&, double&, double&, double&, long int&, std::vector<double>&, std::vector<double>&, std::vector<double>&, std::vector<double>&, std::vector<long int>&, bool, const std::string&)’:
phylogenetics_cpp_routines.cpp:19784:40: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
19784 | for(long q=0, dominant_state; q<traversal_queue.size(); ++q){
| ~^~~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘Rcpp::List get_mrca_defining_tips_CPP(long int, long int, long int, const std::vector<long int>&, const std::vector<long int>&, bool, const std::string&)’:
phylogenetics_cpp_routines.cpp:20833:32: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
20833 | for(long q=0, parent; q<traversal_queue.size(); ++q){
| ~^~~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘Rcpp::IntegerVector get_pairwise_ancestries_CPP(long int, long int, long int, long int, const std::vector<long int>&, const std::vector<long int>&)’:
phylogenetics_cpp_routines.cpp:20904:26: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
20904 | for(long fc=0; fc<focal_clades.size(); ++fc){
| ~~^~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:20910:26: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
20910 | for(long fc=0; fc<focal_clades.size(); ++fc){
| ~~^~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘Rcpp::IntegerVector get_most_recent_common_ancestors_CPP(long int, long int, long int, const std::vector<long int>&, const std::vector<long int>&, const std::vector<long int>&, bool, const std::string&)’:
phylogenetics_cpp_routines.cpp:21038:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
21038 | for(long q=0; q<traversal_queue.size(); ++q){
| ~^~~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:21057:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
21057 | for(long q=0; q<traversal_queue.size(); ++q){
| ~^~~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘bool is_monophyletic_tip_set_CPP(long int, long int, long int, const std::vector<long int>&, const std::vector<long int>&)’:
phylogenetics_cpp_routines.cpp:21193:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
21193 | for(long t=0; t<focal_tips.size(); ++t) tip_is_focal[focal_tips[t]] = true;
| ~^~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘Rcpp::List WMPR_ASR_CPP(long int, long int, long int, long int, const std::vector<long int>&, const std::vector<double>&, const std::vector<long int>&, const std::vector<double>&, double, bool, bool, const std::string&)’:
phylogenetics_cpp_routines.cpp:21423:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
21423 | for(long q=0; q<traversal_queue_root2tips.size(); ++q){
| ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘Rcpp::List ASR_with_fixed_rates_Markov_model_CPP(long int, long int, long int, long int, const std::vector<long int>&, const std::vector<double>&, const std::vector<double>&, const Rcpp::ComplexVector&, const Rcpp::ComplexVector&, const Rcpp::ComplexVector&, const std::vector<double>&, const std::string&, const std::vector<double>&, bool, bool, double, double, long int, bool)’:
phylogenetics_cpp_routines.cpp:21785:32: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
21785 | for(long n=0; n<posteriors.size(); ++n) posteriors[n] = exp(logposteriors[n]);
| ~^~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:21826:34: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
21826 | for(long q=0, new_root; q<depth_first_search_queue.size(); ++q){
| ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘Rcpp::List apply_fixed_rate_Markov_model_to_missing_clades_CPP(long int, long int, long int, long int, const std::vector<long int>&, const std::vector<double>&, const std::vector<double>&, double, long int, Rcpp::LogicalVector, std::vector<double>, bool)’:
phylogenetics_cpp_routines.cpp:22236:37: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
22236 | for(long q=0, node, clade; q<traversal_queue.size(); ++q){
| ~^~~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘Rcpp::NumericVector apply_attributes_to_descendants_CPP(long int, long int, long int, long int, const std::vector<long int>&, std::vector<long int>, std::vector<double>)’:
phylogenetics_cpp_routines.cpp:22294:37: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
22294 | for(long q=0, node, clade; q<traversal_queue.size(); ++q){
| ~^~~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘Rcpp::List ASR_via_squared_change_parsimony_CPP(long int, long int, long int, const std::vector<long int>&, const std::vector<double>&, const std::vector<double>&, bool)’:
phylogenetics_cpp_routines.cpp:22468:42: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
22468 | for(long q=0, new_root; q<depth_first_search_queue.size(); ++q){
| ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘Rcpp::List ASR_via_independent_contrasts_CPP(long int, long int, long int, const std::vector<long int>&, const std::vector<double>&, const std::vector<double>&, bool)’:
phylogenetics_cpp_routines.cpp:22729:30: warning: comparison of integer expressions of different signedness: ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} and ‘const long int’ [-Wsign-compare]
22729 | if(node_states.size()>Nnodes) node_states.resize(Nnodes);
| ~~~~~~~~~~~~~~~~~~^~~~~~~
phylogenetics_cpp_routines.cpp:22730:39: warning: comparison of integer expressions of different signedness: ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} and ‘const long int’ [-Wsign-compare]
22730 | if(node_standard_errors.size()>Nnodes) node_standard_errors.resize(Nnodes);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~
phylogenetics_cpp_routines.cpp:22731:29: warning: comparison of integer expressions of different signedness: ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} and ‘const long int’ [-Wsign-compare]
22731 | if(node_CI95s.size()>Nnodes) node_CI95s.resize(Nnodes);
| ~~~~~~~~~~~~~~~~~^~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘Rcpp::NumericVector apply_BM_parsimony_to_missing_clades_CPP(long int, long int, long int, const std::vector<long int>&, Rcpp::LogicalVector, std::vector<double>)’:
phylogenetics_cpp_routines.cpp:22772:37: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
22772 | for(long q=0, node, clade; q<traversal_queue.size(); ++q){
| ~^~~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In member function ‘double BinaryTraitLogLikelihood::operator()(double) const’:
phylogenetics_cpp_routines.cpp:22808:37: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
22808 | for(long i=0, tip; i<only_tips.size(); ++i){
| ~^~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In member function ‘double BinaryTraitLogLikelihood::gradient(double) const’:
phylogenetics_cpp_routines.cpp:22836:37: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
22836 | for(long i=0, tip; i<only_tips.size(); ++i){
| ~^~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In member function ‘double BinaryTraitLogLikelihood::Hessian(double) const’:
phylogenetics_cpp_routines.cpp:22865:37: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
22865 | for(long i=0, tip; i<only_tips.size(); ++i){
| ~^~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In member function ‘void MuSSEmodelD::registerState(double, const MuSSEstateD&)’:
phylogenetics_cpp_routines.cpp:23110:32: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
23110 | for(long s=0; s<trajectory[i].size(); ++s) trajectory[i][s] = max(0.0, min(1.0, trajectory[i][s]));
| ~^~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In member function ‘void MuSSEmodelD::registerScaledState(double, const MuSSEstateD&, double)’:
phylogenetics_cpp_routines.cpp:23124:32: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
23124 | for(long s=0; s<trajectory_shape[i].size(); ++s) trajectory_shape[i][s] = max(0.0, trajectory_shape[i][s]);
| ~^~~~~~~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In member function ‘bool MuSSEmodelD::checkShouldRefineTimeStep(double, const MuSSEstateD&, double, const MuSSEstateD&) const’:
phylogenetics_cpp_routines.cpp:23216:40: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
23216 | for(long i=0; i<candidate_state.size(); ++i){
| ~^~~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In member function ‘bool MuSSEmodelD::checkShouldRefineTimeStep(double, const MuSSEstateD&, double, double, const MuSSEstateD&, double) const’:
phylogenetics_cpp_routines.cpp:23229:40: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
23229 | for(long i=0; i<candidateY.size(); ++i){
| ~^~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:23234:40: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
23234 | for(long i=0; i<candidateY.size(); ++i){
| ~^~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In member function ‘CrossedBoundary MuSSEmodelD::checkCrossedDomainBoundaryAndFix(double, const MuSSEstateD&, double&, MuSSEstateD&, bool) const’:
phylogenetics_cpp_routines.cpp:23254:32: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
23254 | for(long s=0; s<candidate_state.size(); ++s){
| ~^~~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:23276:40: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
23276 | for(long s=0; s<candidate_state.size(); ++s){
| ~^~~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In member function ‘CrossedBoundary MuSSEmodelD::checkCrossedDomainBoundaryAndFix(double, const MuSSEstateD&, double, double&, MuSSEstateD&, double&, bool) const’:
phylogenetics_cpp_routines.cpp:23299:32: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
23299 | for(long s=0; s<candidateY.size(); ++s){
| ~^~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:23323:40: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
23323 | for(long s=0; s<candidateY.size(); ++s){
| ~^~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In member function ‘bool MuSSEmodelE::checkShouldRefineTimeStep(double, const MuSSEstateE&, double, const MuSSEstateE&) const’:
phylogenetics_cpp_routines.cpp:23506:32: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
23506 | for(long s=0; s<candidate_state.size(); ++s){
| ~^~~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In member function ‘double MuSSEmodelE::getRelativeChange(const MuSSEstateE&, const MuSSEstateE&) const’:
phylogenetics_cpp_routines.cpp:23519:32: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
23519 | for(long s=0; s<stateA.size(); ++s){
| ~^~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In member function ‘CrossedBoundary MuSSEmodelE::checkCrossedDomainBoundaryAndFix(double, const MuSSEstateE&, double&, MuSSEstateE&, bool) const’:
phylogenetics_cpp_routines.cpp:23536:32: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
23536 | for(long s=0; s<candidate_state.size(); ++s){
| ~^~~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:23558:40: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
23558 | for(long s=0; s<candidate_state.size(); ++s){
| ~^~~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘bool get_MuSSE_flow(long int, const std::vector<double>&, const std::vector<double>&, const std::vector<double>&, const std::vector<double>&, const std::vector<double>&, double, double, double, double, double, double, bool, std::vector<std::__cxx11::basic_string<char> >&, std::string&, double&, long int&, MuSSEmodelE&, MuSSEmodelD&, std::vector<LinearInterpolationFunctor<std::vector<double> > >&, std::vector<LinearInterpolationFunctor<double> >&)’:
phylogenetics_cpp_routines.cpp:23807:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
23807 | for(long a=0; a<ages.size(); ++a){
| ~^~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘Rcpp::List simulate_deterministic_HBD_model_CPP(double, double, const std::vector<double>&, const std::vector<double>&, const std::vector<double>&, std::vector<double>, const std::vector<double>&, double, double, double, double, long int, double, bool)’:
phylogenetics_cpp_routines.cpp:24632:40: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
24632 | for(long i=0; i<lambdas.size(); ++i) coarse_mus[i] = lambdas[i] * mu_over_lambda[i];
| ~^~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘Rcpp::List simulate_fixed_rates_Markov_model_CPP(long int, long int, long int, long int, const std::vector<long int>&, const std::vector<double>&, const std::vector<double>&, const std::vector<double>&, bool, bool, long int)’:
phylogenetics_cpp_routines.cpp:26888:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
26888 | for(long q=0; q<traversal_queue.size(); ++q){
| ~^~~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘Rcpp::List simulate_Ornstein_Uhlenbeck_on_tree_CPP(long int, long int, long int, const std::vector<long int>&, const std::vector<double>&, double, double, double, bool, bool, long int)’:
phylogenetics_cpp_routines.cpp:26968:32: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
26968 | for(long q=0; q<traversal_queue.size(); ++q){
| ~^~~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘Rcpp::List simulate_reflected_Ornstein_Uhlenbeck_on_tree_CPP(long int, long int, long int, const std::vector<long int>&, const std::vector<double>&, double, double, double, bool, bool, long int)’:
phylogenetics_cpp_routines.cpp:27050:32: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
27050 | for(long q=0; q<traversal_queue.size(); ++q){
| ~^~~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘Rcpp::List simulate_scalar_Brownian_motion_model_CPP(long int, long int, long int, const std::vector<long int>&, const std::vector<double>&, const std::vector<double>&, double, bool, bool, long int)’:
phylogenetics_cpp_routines.cpp:27121:32: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
27121 | for(long q=0; q<traversal_queue.size(); ++q){
| ~^~~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘Rcpp::List simulate_multivariate_Brownian_motion_model_CPP(long int, long int, long int, long int, long int, const std::vector<long int>&, const std::vector<double>&, const std::vector<double>&, const std::vector<double>&, bool, bool, long int)’:
phylogenetics_cpp_routines.cpp:27201:32: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
27201 | for(long q=0; q<traversal_queue.size(); ++q){
| ~^~~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘Rcpp::List simulate_neutral_gene_evolution_CPP(long int, long int, long int, long int, long int, const std::vector<long int>&, const std::vector<double>&, const std::vector<long int>&, double, bool, bool, bool, long int)’:
phylogenetics_cpp_routines.cpp:27293:32: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
27293 | for(long q=0; q<traversal_queue.size(); ++q){
| ~^~~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘void aux_finalize_generated_random_tree(double, bool, bool, bool, const dvector&, const dvector&, const dvector&, long int&, long int&, long int&, long int&, double&, lvector&, dvector&, lvector&, lvector&, lvector&, dvector&, dvector&)’:
phylogenetics_cpp_routines.cpp:27405:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
27405 | for(long i=0; i<sampled_tips.size(); ++i){
| ~^~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:27408:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
27408 | for(long i=0; i<sampled_node_clades.size(); ++i){
| ~^~~~~~~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:27414:53: warning: comparison of integer expressions of different signedness: ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} and ‘long int’ [-Wsign-compare]
27414 | if(only_sampled_tips && (sampled_tips.size()<Ntips)){
| ~~~~~~~~~~~~~~~~~~~^~~~~~
phylogenetics_cpp_routines.cpp:27451:48: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
27451 | for(long new_clade=0; new_clade<pruning_new2old_clade.size(); ++new_clade){
| ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:27457:32: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
27457 | for(long i=0; i<sampled_tips.size(); ++i){
| ~^~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:27460:32: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
27460 | for(long i=0; i<sampled_node_clades.size(); ++i){
| ~^~~~~~~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘Rcpp::List generate_random_tree_CPP(long int, long int, double, double, double, double, double, double, double, double, const std::vector<double>&, const std::vector<double>&, const std::vector<double>&, bool, bool, long int, bool, bool, bool, bool)’:
phylogenetics_cpp_routines.cpp:27545:75: warning: comparison of integer expressions of different signedness: ‘long unsigned int’ and ‘const long int’ [-Wsign-compare]
27545 | while(((max_tips<=0) || ((coalescent ? extant_tips.size() : Ntips)<max_tips)) && ((max_extant_tips<=0) || extant_tips.size()<max_extant_tips) && ((max_time<=0) || (time+1/total_rate<max_time)) && ((max_time_since_equilibrium<0) || (time-equilibrium_time+1/total_rate<max_time_since_equilibrium))){
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~
phylogenetics_cpp_routines.cpp:27545:133: warning: comparison of integer expressions of different signedness: ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} and ‘const long int’ [-Wsign-compare]
27545 | while(((max_tips<=0) || ((coalescent ? extant_tips.size() : Ntips)<max_tips)) && ((max_extant_tips<=0) || extant_tips.size()<max_extant_tips) && ((max_time<=0) || (time+1/total_rate<max_time)) && ((max_time_since_equilibrium<0) || (time-equilibrium_time+1/total_rate<max_time_since_equilibrium))){
| ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘Rcpp::List generate_random_tree_HBDS_CPP(long int, long int, long int, long int, long int, double, const std::vector<double>&, const std::vector<double>&, const std::vector<double>&, const std::vector<double>&, const std::vector<double>&, long int, const std::vector<double>&, const std::vector<double>&, const std::vector<double>&, bool, bool, double, bool, bool, bool, bool)’:
phylogenetics_cpp_routines.cpp:27758:100: warning: comparison of integer expressions of different signedness: ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} and ‘const long int’ [-Wsign-compare]
27758 | while(((max_tips<=0) || (Ntips<max_tips)) && ((max_sampled_tips<=0) || (sampled_tips.size()<max_sampled_tips)) && ((max_extant_tips<=0) || (extant_tips.size()<max_extant_tips)) && ((max_extinct_tips<=0) || (extinct_tips.size()<max_extinct_tips))){
| ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:27758:167: warning: comparison of integer expressions of different signedness: ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} and ‘const long int’ [-Wsign-compare]
27758 | while(((max_tips<=0) || (Ntips<max_tips)) && ((max_sampled_tips<=0) || (sampled_tips.size()<max_sampled_tips)) && ((max_extant_tips<=0) || (extant_tips.size()<max_extant_tips)) && ((max_extinct_tips<=0) || (extinct_tips.size()<max_extinct_tips))){
| ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:27758:235: warning: comparison of integer expressions of different signedness: ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} and ‘const long int’ [-Wsign-compare]
27758 | while(((max_tips<=0) || (Ntips<max_tips)) && ((max_sampled_tips<=0) || (sampled_tips.size()<max_sampled_tips)) && ((max_extant_tips<=0) || (extant_tips.size()<max_extant_tips)) && ((max_extinct_tips<=0) || (extinct_tips.size()<max_extinct_tips))){
| ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:27942:34: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
27942 | for(long nc=0; nc<new2old_clade.size(); ++nc){
| ~~^~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:27949:34: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
27949 | for(long nc=0; nc<new2old_clade.size(); ++nc){
| ~~^~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:27956:26: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
27956 | for(long nc=0; nc<new2old_clade.size(); ++nc){
| ~~^~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘Rcpp::List generate_random_tree_BM_rates_CPP(long int, double, double, double, double, double, double, double, double, double, double, bool, long int, bool, bool, bool)’:
phylogenetics_cpp_routines.cpp:28610:75: warning: comparison of integer expressions of different signedness: ‘long unsigned int’ and ‘const long int’ [-Wsign-compare]
28610 | while(((max_tips<=0) || ((coalescent ? extant_tips.size() : Ntips)<max_tips)) && ((max_time<=0) || (time+1/total_rate<max_time)) && ((max_time_since_equilibrium<0) || (time-equilibrium_time+1/total_rate<max_time_since_equilibrium))){
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘Rcpp::List generate_random_tree_OU_rates_CPP(long int, double, double, double, double, double, double, double, double, double, double, double, double, double, double, bool, long int, bool, bool, bool)’:
phylogenetics_cpp_routines.cpp:28804:75: warning: comparison of integer expressions of different signedness: ‘long unsigned int’ and ‘const long int’ [-Wsign-compare]
28804 | while(((max_tips<=0) || ((coalescent ? extant_tips.size() : Ntips)<max_tips)) && ((max_time<=0) || (time+1/total_rate<max_time)) && ((max_time_since_equilibrium<0) || (time-equilibrium_time+1/total_rate<max_time_since_equilibrium))){
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘Rcpp::List generate_random_tree_Mk_rates_CPP(long int, long int, long int, double, double, long int, long int, long int, const std::vector<double>&, const std::vector<double>&, const std::vector<double>&, const std::vector<double>&, const std::vector<double>&, bool, bool, bool, bool, bool, bool)’:
phylogenetics_cpp_routines.cpp:29265:34: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
29265 | for(long nc=0; nc<new2old_clade.size(); ++nc){
| ~~^~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:29271:34: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
29271 | for(long nc=0; nc<new2old_clade.size(); ++nc){
| ~~^~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:29276:26: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
29276 | for(long nc=0; nc<new2old_clade.size(); ++nc){
| ~~^~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘Rcpp::List generate_random_tree_tdSSE_CPP(long int, double, long int, long int, long int, const std::vector<double>&, const std::vector<double>&, const std::vector<double>&, const std::vector<double>&, const std::vector<double>&, long int, bool, long int, bool, bool, bool, bool)’:
phylogenetics_cpp_routines.cpp:29944:38: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
29944 | for(long stip=0; stip<extant_tips[state].size(); ++stip){
| ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘void aux_coalesce_genes(const std::vector<double>&, double, EdgeLengthUnit, double, double, long int, std::vector<long int>&, long int&, std::vector<double>&, std::vector<double>&, std::vector<double>&, std::vector<long int>&, std::vector<double>&)’:
phylogenetics_cpp_routines.cpp:30188:44: warning: comparison of integer expressions of different signedness: ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} and ‘long int’ [-Wsign-compare]
30188 | if(clade2tail_length.size()<=next_clade) clade2tail_length.resize(next_clade+1);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:30190:42: warning: comparison of integer expressions of different signedness: ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} and ‘long int’ [-Wsign-compare]
30190 | if(clade2tail_time.size()<=next_clade) clade2tail_time.resize(next_clade+1);
| ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:30199:41: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
30199 | for(long orphan=0, clade; orphan<orphan_clades.size(); ++orphan){
| ~~~~~~^~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘void add_edges_from_branching_heights(const std::vector<double>&, std::vector<long int>&, long int&, std::vector<double>&, std::vector<long int>&, std::vector<double>&)’:
phylogenetics_cpp_routines.cpp:30252:40: warning: comparison of integer expressions of different signedness: ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} and ‘long int’ [-Wsign-compare]
30252 | if(clade_heights.size()<=next_clade) clade_heights.resize(next_clade+1);
| ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘bool generate_gene_tree_in_species_tree_MSC(long int, long int, long int, const std::vector<long int>&, const std::vector<double>&, const std::vector<double>&, const std::vector<double>&, const std::vector<double>&, const std::vector<long int>&, const std::string&, long int, bool, bool, long int, long int&, long int&, long int&, long int&, std::vector<long int>&, std::vector<double>&, std::vector<long int>&, std::vector<long int>&, std::vector<double>&, std::string&)’:
phylogenetics_cpp_routines.cpp:30302:64: warning: comparison of integer expressions of different signedness: ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} and ‘const long int’ [-Wsign-compare]
30302 | const bool got_allele_counts = (allele_counts.size()==NStips);
| ~~~~~~~~~~~~~~~~~~~~^~~~~~~~
phylogenetics_cpp_routines.cpp:30303:67: warning: comparison of integer expressions of different signedness: ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} and ‘const long int’ [-Wsign-compare]
30303 | const bool got_population_sizes = (population_sizes.size()==NSclades);
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~
phylogenetics_cpp_routines.cpp:30304:67: warning: comparison of integer expressions of different signedness: ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} and ‘const long int’ [-Wsign-compare]
30304 | const bool got_generation_times = (generation_times.size()==NSclades);
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~
phylogenetics_cpp_routines.cpp:30305:65: warning: comparison of integer expressions of different signedness: ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} and ‘const long int’ [-Wsign-compare]
30305 | const bool got_mutation_rates = (mutation_rates.size()==NSclades);
| ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~
phylogenetics_cpp_routines.cpp:30328:31: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
30328 | for(long q=0, clade; q<context.queue.size(); ++q){
| ~^~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:30345:37: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
30345 | for(allele=0; allele<gene_orphans[stip].size(); ++allele){
| ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:30430:50: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
30430 | for(long orphan=0; orphan<gene_orphans[context.root].size()-1; ++orphan){
| ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘Rcpp::List generate_gene_tree_in_species_tree_MSC_HGT_DL_CPP(long int, long int, long int, const std::vector<long int>&, const std::vector<double>&, const std::vector<double>&, const std::vector<double>&, const std::vector<double>&, const std::vector<double>&, const std::vector<double>&, const std::vector<double>&, const std::vector<long int>&, const std::string&, long int, bool, bool, long int, bool, bool, double, double, bool)’:
phylogenetics_cpp_routines.cpp:30584:83: warning: comparison of integer expressions of different signedness: ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} and ‘const long int’ [-Wsign-compare]
30584 | const bool got_population_sizes = (population_sizes.size()==NSclades);
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~
phylogenetics_cpp_routines.cpp:30585:83: warning: comparison of integer expressions of different signedness: ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} and ‘const long int’ [-Wsign-compare]
30585 | const bool got_generation_times = (generation_times.size()==NSclades);
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~
phylogenetics_cpp_routines.cpp:30586:81: warning: comparison of integer expressions of different signedness: ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} and ‘const long int’ [-Wsign-compare]
30586 | const bool got_mutation_rates = (mutation_rates.size()==NSclades);
| ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~
phylogenetics_cpp_routines.cpp:30587:80: warning: comparison of integer expressions of different signedness: ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} and ‘const long int’ [-Wsign-compare]
30587 | const bool got_allele_counts = (allele_counts.size()==NStips);
| ~~~~~~~~~~~~~~~~~~~~^~~~~~~~
phylogenetics_cpp_routines.cpp:30588:84: warning: comparison of integer expressions of different signedness: ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} and ‘const long int’ [-Wsign-compare]
30588 | const bool got_HGT_rates = (HGT_rates.size()==NSclades);
| ~~~~~~~~~~~~~~~~^~~~~~~~~~
phylogenetics_cpp_routines.cpp:30589:84: warning: comparison of integer expressions of different signedness: ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} and ‘const long int’ [-Wsign-compare]
30589 | const bool got_duplication_rates = (duplication_rates.size()==NSclades);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~
phylogenetics_cpp_routines.cpp:30590:85: warning: comparison of integer expressions of different signedness: ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} and ‘const long int’ [-Wsign-compare]
30590 | const bool got_loss_rates = (loss_rates.size()==NSclades);
| ~~~~~~~~~~~~~~~~~^~~~~~~~~~
phylogenetics_cpp_routines.cpp:30611:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
30611 | for(long q=0; q<context.queue.size(); ++q){
| ~^~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:30618:31: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
30618 | for(long q=0, clade; q<context.queue.size(); ++q){
| ~^~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:30721:66: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
30721 | for(long l=0, locus, new_locus; l<clade_current_loci[mclade].size(); ++l){
| ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:30747:39: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
30747 | for(long l=0, locus; l<clade_current_loci[mclade].size(); ++l){
| ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘void simulate_SBM_on_tree(long int, long int, long int, const std::vector<long int>&, const std::vector<double>&, double, double, double, double, dvector&, dvector&)’:
phylogenetics_cpp_routines.cpp:31559:48: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
31559 | for(long q=0, parent, child, e, edge; q<context.queue.size(); ++q){
| ~^~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘Rcpp::List simulate_SBM_trajectory_CPP(const std::vector<double>&, double, double, double, double)’:
phylogenetics_cpp_routines.cpp:31672:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
31672 | for(long t=1; t<times.size(); ++t){
| ~^~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In member function ‘double Spherical_Brownian_Motion_LL::operator()(double) const’:
phylogenetics_cpp_routines.cpp:32145:32: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
32145 | for(long p=0; p<time_steps.size(); ++p){
| ~^~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘Rcpp::List SBM_LLs_of_transitions_CPP(double, const std::vector<double>&, const std::vector<double>&, const std::vector<double>&, double, long int)’:
phylogenetics_cpp_routines.cpp:32187:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
32187 | for(long d=0; d<diffusivities.size(); ++d){
| ~^~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘Rcpp::List SBM_LLs_of_sampled_transitions_CPP(double, const std::vector<double>&, const std::vector<double>&, const std::vector<double>&, const std::vector<double>&, const std::vector<double>&, const std::vector<double>&, long int, long int, const std::vector<double>&, double, long int)’:
phylogenetics_cpp_routines.cpp:32225:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
32225 | for(long d=0; d<diffusivities.size(); ++d){
| ~^~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘double SBM_planar_diffusivity_estimate(const dvector&, const dvector&, const std::vector<char>&)’:
phylogenetics_cpp_routines.cpp:32387:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
32387 | for(long p=0; p<time_steps.size(); ++p){
| ~^~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘Rcpp::List read_distances_list_CPP(const std::string&, const std::string&, const std::string&, bool, long int, double, double, long int, long int, const std::string&)’:
phylogenetics_cpp_routines.cpp:32935:32: warning: comparison of integer expressions of different signedness: ‘std::vector<std::__cxx11::basic_string<char> >::size_type’ {aka ‘long unsigned int’} and ‘const long int’ [-Wsign-compare]
32935 | if(parts.size()<=distances_column){
| ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:32963:56: warning: comparison of integer expressions of different signedness: ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} and ‘const long int’ [-Wsign-compare]
32963 | if((max_Nedges>=0) && (distances.size()>=max_Nedges)) break;
| ~~~~~~~~~~~~~~~~^~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘bool char_in_string(char, const std::string&, bool)’:
phylogenetics_cpp_routines.cpp:33013:32: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::__cxx11::basic_string<char>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
33013 | for(long i=0; i<haystack.size(); ++i){
| ~^~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:33018:32: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::__cxx11::basic_string<char>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
33018 | for(long i=0; i<haystack.size(); ++i){
| ~^~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘Rcpp::List place_paired_end_reads_CPP(const std::vector<std::__cxx11::basic_string<char> >&, const std::vector<std::__cxx11::basic_string<char> >&, long int, long int)’:
phylogenetics_cpp_routines.cpp:33098:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<std::__cxx11::basic_string<char> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
33098 | for(long s=0; s<forward_reads.size(); ++s){
| ~^~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In instantiation of ‘void multiply_array_with_scalar(ARRAY_TYPE&, double) [with ARRAY_TYPE = std::vector<double>]’:
phylogenetics_cpp_routines.cpp:5385:29: required from here
5385 | multiply_array_with_scalar(A,factor);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~
phylogenetics_cpp_routines.cpp:590:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
590 | for(long i=0; i<X.size(); ++i) X[i] *= scalar;
| ~^~~~~~~~~
phylogenetics_cpp_routines.cpp: In instantiation of ‘double get_norm_L2_of_vector(const ARRAY_TYPE&) [with ARRAY_TYPE = std::vector<double>]’:
phylogenetics_cpp_routines.cpp:5580:34: required from here
5580 | epsilon /= get_norm_L2_of_vector(balances) * get_norm_L2_of_inverted_vector(balances);
| ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~
phylogenetics_cpp_routines.cpp:4986:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
4986 | for(long i=0; i<X.size(); ++i) S += SQR(X[i]);
| ~^~~~~~~~~
phylogenetics_cpp_routines.cpp: In instantiation of ‘double get_norm_L2_of_inverted_vector(const ARRAY_TYPE&) [with ARRAY_TYPE = std::vector<double>]’:
phylogenetics_cpp_routines.cpp:5580:77: required from here
5580 | epsilon /= get_norm_L2_of_vector(balances) * get_norm_L2_of_inverted_vector(balances);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~
phylogenetics_cpp_routines.cpp:4994:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
4994 | for(long i=0; i<X.size(); ++i) S += SQR(1.0/X[i]);
| ~^~~~~~~~~
phylogenetics_cpp_routines.cpp: In instantiation of ‘TYPE vector_sum(const std::vector<T>&) [with TYPE = long int]’:
phylogenetics_cpp_routines.cpp:8793:48: required from here
8793 | const long NR = (end_c-start_c+1) + vector_sum(dN);
| ~~~~~~~~~~^~~~
phylogenetics_cpp_routines.cpp:702:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
702 | for(long i=0; i<values.size(); ++i) S += values[i];
| ~^~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In instantiation of ‘bool LUsolveLinearSystem(const TYPE*, TYPE*, long unsigned int, const TYPE*, double, unsigned int, TYPE*) [with TYPE = double]’:
phylogenetics_cpp_routines.cpp:9015:25: required from here
9015 | if(!LUsolveLinearSystem( &matrix[0],
| ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
9016 | &scratchSpace[0],
| ~~~~~~~~~~~~~~~~~
9017 | 3,
| ~~
9018 | &b[0],
| ~~~~~~
9019 | epsilon*3,
| ~~~~~~~~~~
9020 | 5,
| ~~
9021 | &sol[0])){
| ~~~~~~~~
phylogenetics_cpp_routines.cpp:4836:19: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘long unsigned int’ [-Wsign-compare]
4836 | for(i=0; i<N; ++i){
| ~^~
phylogenetics_cpp_routines.cpp:4837:27: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘long unsigned int’ [-Wsign-compare]
4837 | for(j=0; j<N; ++j){
| ~^~
phylogenetics_cpp_routines.cpp:4852:87: warning: comparison of integer expressions of different signedness: ‘int’ and ‘unsigned int’ [-Wsign-compare]
4852 | while((errorInLinearSolution(matrix, N, b, x) > maxError) && (impCount<maxImprovements)){
| ~~~~~~~~~^~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In instantiation of ‘bool fitLeastSquares_affine_real_scalar(const std::vector<T>&, const std::vector<T>&, long int, long int, double, bool, bool, REAL_TYPE&, REAL_TYPE&, REAL_TYPE&, long int&) [with REAL_TYPE = double]’:
phylogenetics_cpp_routines.cpp:9385:40: required from here
9385 | if(fitLeastSquares_affine_real_scalar(X, logY, start, end, Xshift[n], false, false, A[n], rate[n], RSS, count[n])){
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:9247:21: warning: comparison of integer expressions of different signedness: ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} and ‘const long int’ [-Wsign-compare]
9247 | if((x.size()<=end) || (y.size()<=end)) return false;
| ~~~~~~~~~^~~~~~
phylogenetics_cpp_routines.cpp:9247:40: warning: comparison of integer expressions of different signedness: ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} and ‘const long int’ [-Wsign-compare]
9247 | if((x.size()<=end) || (y.size()<=end)) return false;
| ~~~~~~~~~^~~~~~
phylogenetics_cpp_routines.cpp: In instantiation of ‘std::vector<T>& operator*=(std::vector<T>&, double) [with TYPE = double]’:
phylogenetics_cpp_routines.cpp:9819:24: required from here
9819 | Acoeff *= (Ngrid-1.0)/Aend;
| ^~~~
phylogenetics_cpp_routines.cpp:3502:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
3502 | for(long i=0; i<x.size(); ++i){
| ~^~~~~~~~~
phylogenetics_cpp_routines.cpp: In instantiation of ‘void get_tree_traversal_root_to_tips(long int, long int, long int, long int, const ARRAY_TYPE&, bool, bool, std::vector<long int>&, std::vector<long int>&, std::vector<long int>&, std::vector<long int>&, bool, const std::string&) [with ARRAY_TYPE = std::vector<long int>; std::string = std::__cxx11::basic_string<char>]’:
phylogenetics_cpp_routines.cpp:12202:33: required from here
12202 | get_tree_traversal_root_to_tips(Ntips,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~
12203 | Nnodes,
| ~~~~~~~
12204 | Nedges,
| ~~~~~~~
12205 | -1,
| ~~~
12206 | tree_edge,
| ~~~~~~~~~~
12207 | include_tips,
| ~~~~~~~~~~~~~
12208 | false,
| ~~~~~~
12209 | queue,
| ~~~~~~
12210 | node2first_edge,
| ~~~~~~~~~~~~~~~~
12211 | node2last_edge,
| ~~~~~~~~~~~~~~~
12212 | edges,
| ~~~~~~
12213 | false,
| ~~~~~~
12214 | "");
| ~~~
phylogenetics_cpp_routines.cpp:12175:28: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
12175 | while(queue_pointer<queue.size()){
| ~~~~~~~~~~~~~^~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In instantiation of ‘TYPE vector_max(const std::vector<T>&) [with TYPE = double]’:
phylogenetics_cpp_routines.cpp:12877:36: required from here
12877 | const double root_age = vector_max(ages);
| ~~~~~~~~~~^~~~~~
phylogenetics_cpp_routines.cpp:780:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
780 | for(long i=0; i<values.size(); ++i) A = (A<values[i] ? values[i] : A);
| ~^~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In instantiation of ‘void qsortIndices(const std::vector<T>&, std::vector<long int>&) [with TYPE = double]’:
phylogenetics_cpp_routines.cpp:13946:14: required from here
13946 | qsortIndices(distances_from_root, chronological_clade_order);
| ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:1081:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
1081 | for(long n=0; n<sortedIndices.size(); ++n) sortedIndices[n] = n;
| ~^~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In instantiation of ‘TYPE vector_max(const std::vector<T>&) [with TYPE = long int]’:
phylogenetics_cpp_routines.cpp:14245:33: required from here
14245 | const long Nsplits = vector_max(node2child_count);
| ~~~~~~~~~~^~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:780:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
780 | for(long i=0; i<values.size(); ++i) A = (A<values[i] ? values[i] : A);
| ~^~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In instantiation of ‘void sort_tree_edges_root_to_tips(long int, long int, long int, bool, bool, const ARRAY_TYPE&, std::vector<long int>&) [with ARRAY_TYPE = std::vector<long int>]’:
phylogenetics_cpp_routines.cpp:15084:30: required from here
15084 | sort_tree_edges_root_to_tips( Ntips,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~
15085 | Nnodes,
| ~~~~~~~
15086 | Nedges,
| ~~~~~~~
15087 | depth_first_search,
| ~~~~~~~~~~~~~~~~~~~
15088 | root_to_tips,
| ~~~~~~~~~~~~~
15089 | tree_edge,
| ~~~~~~~~~~
15090 | new2old_edge);
| ~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:15056:36: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
15056 | while(queue_pointer<scratch_queue.size()){
| ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In instantiation of ‘void get_tree_with_collapsed_monofurcations(long int, long int, long int, long int, bool, const lvector&, const ARRAY_INT&, const ARRAY_DOUBLE&, std::vector<long int>&, std::vector<double>&, std::vector<long int>&, long int&, double&) [with ARRAY_INT = std::vector<long int>; ARRAY_DOUBLE = std::vector<double>; lvector = std::vector<long int>]’:
phylogenetics_cpp_routines.cpp:15320:40: required from here
15320 | get_tree_with_collapsed_monofurcations( Ntips,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
15321 | Nnodes,
| ~~~~~~~
15322 | Nedges,
| ~~~~~~~
15323 | root,
| ~~~~~
15324 | force_keep_root,
| ~~~~~~~~~~~~~~~~
15325 | force_keep_nodes,
| ~~~~~~~~~~~~~~~~~
15326 | tree_edge,
| ~~~~~~~~~~
15327 | edge_length,
| ~~~~~~~~~~~~
15328 | new_tree_edge,
| ~~~~~~~~~~~~~~
15329 | new_edge_length,
| ~~~~~~~~~~~~~~~~
15330 | new2old_node,
| ~~~~~~~~~~~~~
15331 | new_root,
| ~~~~~~~~~
15332 | root_shift);
| ~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:15216:32: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
15216 | for(long fn=0, node; fn<force_keep_nodes.size(); ++fn){
| ~~^~~~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:15230:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
15230 | for(long q=0; q<traversal_queue.size(); ++q){
| ~^~~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:15253:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
15253 | for(long q=0; q<traversal_queue.size(); ++q){
| ~^~~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In instantiation of ‘void get_subtree_with_specific_tips(long int, long int, long int, const ARRAY_INT&, const ARRAY_DOUBLE&, const ARRAY_INT&, bool, bool, const lvector&, std::vector<long int>&, std::vector<double>&, std::vector<long int>&, long int&, long int&, long int&, long int&, long int&, double&) [with ARRAY_INT = std::vector<long int>; ARRAY_DOUBLE = std::vector<double>; lvector = std::vector<long int>]’:
phylogenetics_cpp_routines.cpp:15932:32: required from here
15932 | get_subtree_with_specific_tips( Ntips,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
15933 | Nnodes,
| ~~~~~~~
15934 | Nedges,
| ~~~~~~~
15935 | tree_edge,
| ~~~~~~~~~~
15936 | edge_length,
| ~~~~~~~~~~~~
15937 | tips_to_keep,
| ~~~~~~~~~~~~~
15938 | collapse_monofurcations,
| ~~~~~~~~~~~~~~~~~~~~~~~~
15939 | force_keep_root,
| ~~~~~~~~~~~~~~~~
15940 | lvector(),
| ~~~~~~~~~~
15941 | new_tree_edge,
| ~~~~~~~~~~~~~~
15942 | new_edge_length,
| ~~~~~~~~~~~~~~~~
15943 | new2old_clade,
| ~~~~~~~~~~~~~~
15944 | new_root,
| ~~~~~~~~~
15945 | old_stem_edge,
| ~~~~~~~~~~~~~~
15946 | Ntips_kept,
| ~~~~~~~~~~~
15947 | Nnodes_kept,
| ~~~~~~~~~~~~
15948 | Nedges_kept,
| ~~~~~~~~~~~~
15949 | root_shift);
| ~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:15790:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
15790 | for(long t=0; t<tips_to_keep.size(); ++t){
| ~^~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:15793:26: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
15793 | for(long fn=0; fn<force_keep_nodes.size(); ++fn){
| ~~^~~~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:15866:37: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
15866 | for(long fn=0, new_clade; fn<force_keep_nodes.size(); ++fn){
| ~~^~~~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In instantiation of ‘void get_distances_from_root(long int, long int, long int, const ARRAY_TYPE_INT&, const ARRAY_TYPE_D&, const tree_context&, dvector&) [with ARRAY_TYPE_INT = std::vector<long int>; ARRAY_TYPE_D = std::vector<double>; dvector = std::vector<double>]’:
phylogenetics_cpp_routines.cpp:17159:26: required from here
17159 | get_distances_from_root(Ntips, Nnodes, Nedges, tree_edge, edge_length, context, clade_times);
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:12825:31: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
12825 | for(long q=0, clade; q<context.queue.size(); ++q){
| ~^~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In instantiation of ‘long int find_in_ascending_list(const std::vector<T>&, TYPE2, long int) [with TYPE1 = long int; TYPE2 = long int]’:
phylogenetics_cpp_routines.cpp:18557:33: required from here
18557 | fa = find_in_ascending_list(membershipsA[nodeA],f,fa+1);
| ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:496:28: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
496 | for(long n=start; n<haystack.size(); ++n){
| ~^~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In instantiation of ‘std::vector<T> operator/(std::vector<T>, double) [with TYPE = double]’:
phylogenetics_cpp_routines.cpp:23099:19: required from here
23099 | shape = initial/initial_mean;
| ^~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:3584:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
3584 | for(long i=0; i<x.size(); ++i){
| ~^~~~~~~~~
phylogenetics_cpp_routines.cpp: In instantiation of ‘std::vector<T> operator*(std::vector<T>, double) [with TYPE = double]’:
phylogenetics_cpp_routines.cpp:23162:27: required from here
23162 | rateY = YA - currentY*rateS;
| ^~~~~
phylogenetics_cpp_routines.cpp:3484:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
3484 | for(long i=0; i<x.size(); ++i){
| ~^~~~~~~~~
phylogenetics_cpp_routines.cpp: In instantiation of ‘std::vector<T> operator-(std::vector<T>, const std::vector<T>&) [with TYPE = double]’:
phylogenetics_cpp_routines.cpp:23162:27: required from here
23162 | rateY = YA - currentY*rateS;
| ^~~~~
phylogenetics_cpp_routines.cpp:3538:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
3538 | for(long i=0; i<x.size(); ++i){
| ~^~~~~~~~~
phylogenetics_cpp_routines.cpp: In instantiation of ‘std::vector<T> operator+(std::vector<T>, const std::vector<T>&) [with TYPE = double]’:
phylogenetics_cpp_routines.cpp:23271:66: required from here
23271 | candidate_state = previous_state*(1-lambda) + candidate_state*lambda;
| ^~~~~~
phylogenetics_cpp_routines.cpp:3511:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
3511 | for(long i=0; i<x.size(); ++i){
| ~^~~~~~~~~
phylogenetics_cpp_routines.cpp: In instantiation of ‘bool contains_nan(const std::vector<T>&) [with TYPE = double]’:
phylogenetics_cpp_routines.cpp:23335:22: required from here
23335 | return contains_nan(state);
| ~~~~~~~~~~~~^~~~~~~
phylogenetics_cpp_routines.cpp:875:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
875 | for(long i=0; i<values.size(); ++i){
| ~^~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In instantiation of ‘std::vector<T>& operator*=(std::vector<T>&, const std::vector<T>&) [with TYPE = double]’:
phylogenetics_cpp_routines.cpp:23695:32: required from here
23695 | posteriors[node] *= modelD.initial;
| ^~~~~~~
phylogenetics_cpp_routines.cpp:3475:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
3475 | for(long i=0; i<x.size(); ++i){
| ~^~~~~~~~~
phylogenetics_cpp_routines.cpp: In instantiation of ‘TYPE vector_sum(const std::vector<T>&) [with TYPE = double]’:
phylogenetics_cpp_routines.cpp:23716:30: required from here
23716 | const double S = vector_sum(posteriors[node]);
| ~~~~~~~~~~^~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:702:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
702 | for(long i=0; i<values.size(); ++i) S += values[i];
| ~^~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In instantiation of ‘std::vector<T>& operator/=(std::vector<T>&, double) [with TYPE = double]’:
phylogenetics_cpp_routines.cpp:23717:23: required from here
23717 | posteriors[node] /= S;
| ^
phylogenetics_cpp_routines.cpp:3593:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
3593 | for(long i=0; i<x.size(); ++i){
| ~^~~~~~~~~
phylogenetics_cpp_routines.cpp: In instantiation of ‘std::vector<T> operator*(std::vector<T>, const std::vector<T>&) [with TYPE = double]’:
phylogenetics_cpp_routines.cpp:23725:56: required from here
23725 | loglikelihood += log(vector_sum(posteriors[root_node]*root_prior));
| ^~~~~~~~~~
phylogenetics_cpp_routines.cpp:3466:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
3466 | for(long i=0; i<x.size(); ++i){
| ~^~~~~~~~~
phylogenetics_cpp_routines.cpp: In instantiation of ‘TYPE scalar_product(const std::vector<T>&, const std::vector<T>&) [with TYPE = double]’:
phylogenetics_cpp_routines.cpp:24235:38: required from here
24235 | loglikelihood += log(scalar_product(substem_D,substem_prior));
| ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:725:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘const long unsigned int’ [-Wsign-compare]
725 | for(long i=0; i<min(A.size(),B.size()); ++i) S += A[i] * B[i];
| ~^~~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In instantiation of ‘std::vector<T>& operator-=(std::vector<T>&, const std::vector<T>&) [with TYPE = double]’:
phylogenetics_cpp_routines.cpp:24634:83: required from here
24634 | dvector coarse_diversification_rates = lambdas; coarse_diversification_rates -= mus;
| ^~~
phylogenetics_cpp_routines.cpp:3556:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
3556 | for(long i=0; i<x.size(); ++i){
| ~^~~~~~~~~
phylogenetics_cpp_routines.cpp: In instantiation of ‘std::vector<T> abs(std::vector<T>) [with TYPE = double]’:
phylogenetics_cpp_routines.cpp:25254:48: required from here
25254 | dvector coarse_abs_diversification_rates = abs(coarse_diversification_rates);
| ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:3602:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
3602 | for(long i=0; i<x.size(); ++i){
| ~^~~~~~~~~
phylogenetics_cpp_routines.cpp: In instantiation of ‘VALUE_TYPE PiecewisePolynomial<VALUE_TYPE>::getMaxAbs() const [with VALUE_TYPE = double]’:
phylogenetics_cpp_routines.cpp:25746:26: required from here
25746 | return lambda.getMaxAbs() + mu.getMaxAbs() + psi.getMaxAbs();
| ~~~~~~~~~~~~~~~~^~
phylogenetics_cpp_routines.cpp:2698:32: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
2698 | for(long i=0; i<X.size()-1; ++i){
| ~^~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In instantiation of ‘VALUE_TYPE PiecewisePolynomial<VALUE_TYPE>::getMaxAbs(double, double) const [with VALUE_TYPE = double]’:
phylogenetics_cpp_routines.cpp:25751:26: required from here
25751 | return lambda.getMaxAbs(start_time,end_time) + mu.getMaxAbs(start_time,end_time) + psi.getMaxAbs(start_time,end_time);
| ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:2709:32: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
2709 | for(long i=0; i<X.size()-1; ++i){
| ~^~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In instantiation of ‘std::vector<T>& operator+=(std::vector<T>&, const TYPE&) [with TYPE = long int]’:
phylogenetics_cpp_routines.cpp:26174:20: required from here
26174 | NCSAcrossings += 1l;
| ^~
phylogenetics_cpp_routines.cpp:3529:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
3529 | for(long i=0; i<x.size(); ++i){
| ~^~~~~~~~~
phylogenetics_cpp_routines.cpp: In instantiation of ‘std::vector<T> operator-(std::vector<T>, const TYPE&) [with TYPE = long int]’:
phylogenetics_cpp_routines.cpp:27417:52: required from here
27417 | lvector force_keep_nodes = sampled_node_clades - Ntips;
| ^~~~~
phylogenetics_cpp_routines.cpp:3547:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
3547 | for(long i=0; i<x.size(); ++i){
| ~^~~~~~~~~
phylogenetics_cpp_routines.cpp: In instantiation of ‘void remove_item_from_vector(std::vector<T>&, long int) [with TYPE = long int]’:
phylogenetics_cpp_routines.cpp:27878:27: required from here
27878 | remove_item_from_vector(extant_tips, tip);
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:928:17: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
928 | if(index==list.size()-1){
| ~~~~~^~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In instantiation of ‘void simulate_SBM_on_tree(long int, long int, long int, const std::vector<long int>&, const std::vector<double>&, double, const DFUNCTOR&, double, double, dvector&, dvector&) [with DFUNCTOR = PiecewisePolynomial<double>; dvector = std::vector<double>]’:
phylogenetics_cpp_routines.cpp:31705:22: required from here
31705 | simulate_SBM_on_tree( Ntips,
| ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~
31706 | Nnodes,
| ~~~~~~~
31707 | Nedges,
| ~~~~~~~
31708 | tree_edge,
| ~~~~~~~~~~
31709 | edge_length,
| ~~~~~~~~~~~~
31710 | radius,
| ~~~~~~~
31711 | diffusivity_integral,
| ~~~~~~~~~~~~~~~~~~~~~
31712 | root_theta,
| ~~~~~~~~~~~
31713 | root_phi,
| ~~~~~~~~~
31714 | clade_theta,
| ~~~~~~~~~~~~
31715 | clade_phi);
| ~~~~~~~~~~
phylogenetics_cpp_routines.cpp:31607:48: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
31607 | for(long q=0, parent, child, e, edge; q<context.queue.size(); ++q){
| ~^~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In instantiation of ‘bool LUDecomposition(TYPE*, long unsigned int, long unsigned int*, int&) [with TYPE = double]’:
phylogenetics_cpp_routines.cpp:4843:21: required from ‘bool LUsolveLinearSystem(const TYPE*, TYPE*, long unsigned int, const TYPE*, double, unsigned int, TYPE*) [with TYPE = double]’
4843 | if(!LUDecomposition(scratchSpace, N, pivoting_indices, Psign)){
| ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:9015:25: required from here
9015 | if(!LUsolveLinearSystem( &matrix[0],
| ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
9016 | &scratchSpace[0],
| ~~~~~~~~~~~~~~~~~
9017 | 3,
| ~~
9018 | &b[0],
| ~~~~~~
9019 | epsilon*3,
| ~~~~~~~~~~
9020 | 5,
| ~~
9021 | &sol[0])){
| ~~~~~~~~
phylogenetics_cpp_routines.cpp:4691:19: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘long unsigned int’ [-Wsign-compare]
4691 | for(i=0; i<N; ++i){
| ~^~
phylogenetics_cpp_routines.cpp:4692:34: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘long unsigned int’ [-Wsign-compare]
4692 | for(j=0, big=0; j<N; ++j){
| ~^~
phylogenetics_cpp_routines.cpp:4701:19: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘long unsigned int’ [-Wsign-compare]
4701 | for(j=0; j<N; ++j){
| ~^~
phylogenetics_cpp_routines.cpp:4708:27: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘long unsigned int’ [-Wsign-compare]
4708 | for(i=j; i<N; ++i){
| ~^~
phylogenetics_cpp_routines.cpp:4718:35: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘long unsigned int’ [-Wsign-compare]
4718 | for(k=0; k<N; ++k){
| ~^~
phylogenetics_cpp_routines.cpp:4730:22: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘long unsigned int’ [-Wsign-compare]
4730 | if(j < N-1){
| ~~^~~~~
phylogenetics_cpp_routines.cpp:4732:37: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘long unsigned int’ [-Wsign-compare]
4732 | for(i=j+1; i<N; ++i){ matrix[i*N+j] *= dummyT; }
| ~^~
phylogenetics_cpp_routines.cpp: In instantiation of ‘void LUSolveLinearSystem(const TYPE*, long unsigned int, const long unsigned int*, TYPE*) [with TYPE = double]’:
phylogenetics_cpp_routines.cpp:4848:21: required from ‘bool LUsolveLinearSystem(const TYPE*, TYPE*, long unsigned int, const TYPE*, double, unsigned int, TYPE*) [with TYPE = double]’
4848 | LUSolveLinearSystem(scratchSpace, N, pivoting_indices, x);
| ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:9015:25: required from here
9015 | if(!LUsolveLinearSystem( &matrix[0],
| ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
9016 | &scratchSpace[0],
| ~~~~~~~~~~~~~~~~~
9017 | 3,
| ~~
9018 | &b[0],
| ~~~~~~
9019 | epsilon*3,
| ~~~~~~~~~~
9020 | 5,
| ~~
9021 | &sol[0])){
| ~~~~~~~~
phylogenetics_cpp_routines.cpp:4753:19: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘long unsigned int’ [-Wsign-compare]
4753 | for(i=0; i<N; ++i){
| ~^~
phylogenetics_cpp_routines.cpp:4766:29: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘long unsigned int’ [-Wsign-compare]
4766 | for(j=i+1; j<N; ++j){ sum -= LUmatrix[i*N+j]*b[j]; }
| ~^~
phylogenetics_cpp_routines.cpp: In instantiation of ‘void LUImproveSolutionToLinearSystem(const TYPE*, const TYPE*, long unsigned int, const long unsigned int*, const TYPE*, TYPE*) [with TYPE = double]’:
phylogenetics_cpp_routines.cpp:4853:35: required from ‘bool LUsolveLinearSystem(const TYPE*, TYPE*, long unsigned int, const TYPE*, double, unsigned int, TYPE*) [with TYPE = double]’
4853 | LUImproveSolutionToLinearSystem(matrix, scratchSpace, N, pivoting_indices, b, x);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:9015:25: required from here
9015 | if(!LUsolveLinearSystem( &matrix[0],
| ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
9016 | &scratchSpace[0],
| ~~~~~~~~~~~~~~~~~
9017 | 3,
| ~~
9018 | &b[0],
| ~~~~~~
9019 | epsilon*3,
| ~~~~~~~~~~
9020 | 5,
| ~~
9021 | &sol[0])){
| ~~~~~~~~
phylogenetics_cpp_routines.cpp:4804:19: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘long unsigned int’ [-Wsign-compare]
4804 | for(i=0; i<N; ++i){
| ~^~
phylogenetics_cpp_routines.cpp:4806:27: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘long unsigned int’ [-Wsign-compare]
4806 | for(j=0; j<N; ++j){ s += matrix[i*N+j] * x[j]; }
| ~^~
phylogenetics_cpp_routines.cpp:4810:19: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘long unsigned int’ [-Wsign-compare]
4810 | for(i=0; i<N; ++i){ x[i] -= r[i]; }
| ~^~
phylogenetics_cpp_routines.cpp: In instantiation of ‘long int find_first_occurrence(const std::vector<T>&, TYPE2) [with TYPE1 = double; TYPE2 = double]’:
phylogenetics_cpp_routines.cpp:5459:27: required from ‘long int min_polynomials_for_positive_exponential_of_irreducible_matrix(long int, const ARRAY_TYPE&) [with ARRAY_TYPE = std::vector<double>]’
5459 | if(find_first_occurrence(sum_of_powers, 0.0)<0) return (p+1);
| ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:21727:94: required from here
21727 | const long min_polynomials = min_polynomials_for_positive_exponential_of_irreducible_matrix(Nstates, transition_matrix);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:478:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
478 | for(long n=0; n<haystack.size(); ++n){
| ~^~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In instantiation of ‘std::vector<T> operator*(double, std::vector<T>) [with TYPE = double]’:
phylogenetics_cpp_routines.cpp:10253:64: required from ‘LinearInterpolationFunctor<VALUE_TYPE>::LinearInterpolationFunctor(const std::vector<double>&, const std::vector<T>&, bool, const VALUE_TYPE&, const VALUE_TYPE&, bool, double) [with VALUE_TYPE = std::vector<double>]’
10253 | referenceValues[0] = referenceValues[referenceCount-1] = 0.5*(referenceValues[0] + referenceValues[referenceCount-1]);
| ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:23668:141: required from here
23668 | modelD.E = LinearInterpolationFunctor<MuSSEstateE>(modelE.ages,modelE.trajectory,false,modelE.trajectory[0],modelE.trajectory.back(),true,0);
| ^
phylogenetics_cpp_routines.cpp:3493:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
3493 | for(long i=0; i<x.size(); ++i){
| ~^~~~~~~~~
phylogenetics_cpp_routines.cpp: In instantiation of ‘void linear_combination(double, const std::vector<T>&, double, const std::vector<T>&, std::vector<T>&) [with TYPE = double]’:
phylogenetics_cpp_routines.cpp:7517:21: required from ‘bool RungeKutta2(double, double, double, MODEL&, double, double, double, double, long int, double, const PROGRESS_REPORTER&, double, std::string&) [with COORDINATE = std::vector<double>; MODEL = MuSSEmodelE; PROGRESS_REPORTER = ProgressReporter; std::string = std::__cxx11::basic_string<char>]’
7517 | linear_combination(1.0,currentPoint,current_dt1,k1,point2); // point2 = currentPoint + k1*current_dt1;
| ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:23770:9: required from here
23769 | bool success = RungeKutta2<MuSSEstateE,MuSSEmodelE,ProgressReporter>
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
23770 | (0, // start_time
| ^~~~~~~~~~~~~~~~~
23771 | oldest_age, // end_time
| ~~~~~~~~~~~~~~~~~~~~~~~
23772 | max(0.000001*oldest_age,min(0.2*oldest_age,relative_ODE_step/maxErate)), // default integration time step
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
23773 | modelE,
| ~~~~~~~
23774 | minRecordingTimeStep,
| ~~~~~~~~~~~~~~~~~~~~~
23775 | maxRecordingTimeStep,
| ~~~~~~~~~~~~~~~~~~~~~
23776 | guessNrecordings,
| ~~~~~~~~~~~~~~~~~
23777 | E_value_step, // recordingRelValueStep
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
23778 | 5, // maxTimeStepRefinements
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
23779 | 4, // refinement_factor
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
23780 | ProgressReporter(true),
| ~~~~~~~~~~~~~~~~~~~~~~~
23781 | (runtime_out_seconds>0 ? max(runtime_out_seconds*0.01, runtime_out_seconds+start_runtime-get_thread_monotonic_walltime_seconds()) : 0.0),
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
23782 | warningMessage);
| ~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:441:24: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘std::vector<double>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
441 | for(long i=0; i<X.size(); ++i) result[i] = a*X[i] + b*Y[i];
| ~^~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘double first_Wasserstein_distance_CPP(const std::vector<double>&, const std::vector<double>&)’:
phylogenetics_cpp_routines.cpp:1332:25: warning: ‘t1’ may be used uninitialized [-Wmaybe-uninitialized]
1332 | W += (t2-t1) * abs(CDFY-CDFX);
| ~~~^~~~
phylogenetics_cpp_routines.cpp:1316:32: note: ‘t1’ was declared here
1316 | double CDFX=0, CDFY=0, t1, t2;
| ^~
phylogenetics_cpp_routines.cpp: In function ‘double legendre_polynomial(long int, double)’:
phylogenetics_cpp_routines.cpp:31269:16: warning: ‘Pn’ may be used uninitialized [-Wmaybe-uninitialized]
31269 | return Pn;
| ^~
phylogenetics_cpp_routines.cpp:31263:16: note: ‘Pn’ was declared here
31263 | double Pn;
| ^~
phylogenetics_cpp_routines.cpp: In function ‘double solve_polynomial_via_bisection(const double*, long int, double, double, double, double, double, double, long int)’:
phylogenetics_cpp_routines.cpp:2312:16: warning: ‘c’ may be used uninitialized [-Wmaybe-uninitialized]
2312 | return c; // did not converge, but the last c is the best estimate
| ^
phylogenetics_cpp_routines.cpp:2258:36: note: ‘c’ was declared here
2258 | double a = Xmin, b = Xmax, c;
| ^
phylogenetics_cpp_routines.cpp: In function ‘double solve_piecewise_polynomial_bisection(const dvector&, const dvector&, long int, bool, double, double, double, bool, double, double, long int, long int&, long int&)’:
phylogenetics_cpp_routines.cpp:2395:16: warning: ‘c’ may be used uninitialized [-Wmaybe-uninitialized]
2395 | return c; // did not converge, but the last c is the best estimate
| ^
phylogenetics_cpp_routines.cpp:2333:36: note: ‘c’ was declared here
2333 | double a = Xmin, b = Xmax, c;
| ^
phylogenetics_cpp_routines.cpp: In function ‘double solve_piecewise_polynomial_sum_bisection(const dvector&, const std::vector<std::vector<double> >&, const lvector&, bool, const dvector&, double, double, double, bool, double, double, long int, long int&, long int&)’:
phylogenetics_cpp_routines.cpp:2492:16: warning: ‘c’ may be used uninitialized [-Wmaybe-uninitialized]
2492 | return c; // did not converge, but the last c is the best estimate
| ^
phylogenetics_cpp_routines.cpp:2425:36: note: ‘c’ was declared here
2425 | double a = Xmin, b = Xmax, c;
| ^
phylogenetics_cpp_routines.cpp: In function ‘bool get_dominant_eigenvalue(long int, const dvector&, long int, double, dvector&, double&)’:
phylogenetics_cpp_routines.cpp:6090:37: warning: ‘error’ may be used uninitialized [-Wmaybe-uninitialized]
6090 | return (best_error<tolerance);
| ^
phylogenetics_cpp_routines.cpp:6020:21: note: ‘error’ was declared here
6020 | double XAX, error, best_lambda=0, best_error=INFTY_D;
| ^~~~~
In file included from /usr/include/c++/16/cmath:59,
from phylogenetics_cpp_routines.cpp:31:
In function ‘constexpr double std::abs(double)’,
inlined from ‘VALUE_TYPE polynomial_bound_abs(long int, const VALUE_TYPE*, double, double) [with VALUE_TYPE = double]’ at phylogenetics_cpp_routines.cpp:1790:17:
/usr/include/c++/16/bits/std_abs.h:78:30: warning: ‘Yvertex’ may be used uninitialized [-Wmaybe-uninitialized]
78 | { return __builtin_fabs(__x); }
| ^
phylogenetics_cpp_routines.cpp: In function ‘VALUE_TYPE polynomial_bound_abs(long int, const VALUE_TYPE*, double, double) [with VALUE_TYPE = double]’:
phylogenetics_cpp_routines.cpp:1788:28: note: ‘Yvertex’ was declared here
1788 | VALUE_TYPE Yvertex;
| ^~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘bool LUDecomposition(TYPE*, long unsigned int, long unsigned int*, int&) [with TYPE = double]’:
phylogenetics_cpp_routines.cpp:4717:17: warning: ‘imax’ may be used uninitialized [-Wmaybe-uninitialized]
4717 | if(j != imax){
| ^~
phylogenetics_cpp_routines.cpp:4685:16: note: ‘imax’ was declared here
4685 | long i,imax,j,k;
| ^~~~
phylogenetics_cpp_routines.cpp: In member function ‘void TreeSpeciationExtinctionModel::get_coalescent_trajectory(double, double, std::vector<TreeStateHistory>&) const’:
phylogenetics_cpp_routines.cpp:10977:96: warning: ‘coalescent_diversity_at_resolution_age’ may be used uninitialized [-Wmaybe-uninitialized]
10977 | coalescent[t].Pmissing = coalescent_diversity_at_resolution_age/coalescent[t].diversity;
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:10954:59: note: ‘coalescent_diversity_at_resolution_age’ was declared here
10954 | double total_diversity_at_resolution_age, coalescent_diversity_at_resolution_age;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘Rcpp::List get_trait_richness_collectors_curve_CPP(long int, long int, long int, long int, long int, const std::vector<long int>&, const std::vector<double>&, const std::vector<long int>&, const std::vector<long int>&, const std::vector<long int>&, const std::vector<long int>&, long int, const std::string&, bool)’:
phylogenetics_cpp_routines.cpp:20404:49: warning: ‘tip’ may be used uninitialized [-Wmaybe-uninitialized]
20404 | tip_included[tip] = true;
| ^
phylogenetics_cpp_routines.cpp:20267:14: note: ‘tip’ was declared here
20267 | long tip, clade, count_tips_remaining;
| ^~~
phylogenetics_cpp_routines.cpp:20364:76: warning: ‘count_tips_remaining’ may be used uninitialized [-Wmaybe-uninitialized]
20364 | long tip_counter = uniformIntWithin(0,count_tips_remaining-1);
| ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:20267:26: note: ‘count_tips_remaining’ was declared here
20267 | long tip, clade, count_tips_remaining;
| ^~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘Rcpp::List simulate_fixed_rates_Markov_model_CPP(long int, long int, long int, long int, const std::vector<long int>&, const std::vector<double>&, const std::vector<double>&, const std::vector<double>&, bool, bool, long int)’:
phylogenetics_cpp_routines.cpp:26887:27: warning: ‘parent’ may be used uninitialized [-Wmaybe-uninitialized]
26887 | long clade, edge, parent, parent_state, state=0;
| ^~~~~~
phylogenetics_cpp_routines.cpp: In function ‘Rcpp::List inherit_taxonomies_CPP(long int, long int, long int, const std::vector<long int>&, const std::vector<std::__cxx11::basic_string<char> >&, const std::vector<std::__cxx11::basic_string<char> >&, const std::vector<long int>&, bool, const std::string&, bool, const std::string&)’:
phylogenetics_cpp_routines.cpp:14830:98: warning: ‘parent’ may be used uninitialized [-Wmaybe-uninitialized]
14830 | clade_taxonomies[clade] += ((clade==context.root) || (clade_levels[parent]==0) ? "" : delimiter) + (clade<Ntips ? tip_taxa[clade] : node_taxa[clade-Ntips]);
| ^
phylogenetics_cpp_routines.cpp:14737:33: note: ‘parent’ was declared here
14737 | long clade, node, edge, parent;
| ^~~~~~
phylogenetics_cpp_routines.cpp: In function ‘Rcpp::List simulate_deterministic_diversity_growth_CPP(double, double, double, double, double, double, double, double, long int, const std::vector<double>&, const std::vector<double>&, const std::vector<double>&, bool, const std::vector<double>&, double, double, double, double, bool, bool, bool, bool, bool, bool, double)’:
phylogenetics_cpp_routines.cpp:11198:86: warning: ‘Pmissing_at_resolution_age’ may be used uninitialized [-Wmaybe-uninitialized]
11198 | const double effective_rarefaction = rarefaction * (1-Pmissing_at_resolution_age);
| ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:11173:24: note: ‘Pmissing_at_resolution_age’ was declared here
11173 | double Pmissing_at_resolution_age, total_diversity_at_resolution_age, coalescent_diversity_at_resolution_age;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:11206:88: warning: ‘coalescent_diversity_at_resolution_age’ may be used uninitialized [-Wmaybe-uninitialized]
11206 | Pmissing = 1.0 - coalescent_diversity_at_resolution_age/total_diversities[t]; // effective Pmissing, based on coalescent and total diversity after collapsing and rarefaction
phylogenetics_cpp_routines.cpp:11173:87: note: ‘coalescent_diversity_at_resolution_age’ was declared here
11173 | double Pmissing_at_resolution_age, total_diversity_at_resolution_age, coalescent_diversity_at_resolution_age;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘Rcpp::List HBD_PDR_loglikelihood_CPP(const std::vector<double>&, double, double, const std::vector<double>&, const std::vector<double>&, long int, const std::string&, double, double, std::vector<double>, long int)’:
phylogenetics_cpp_routines.cpp:25515:102: warning: ‘Zdegree’ may be used uninitialized [-Wmaybe-uninitialized]
25515 | branching_Z = polynomial_value(Zdegree, &Zcoeff[d][current_g*(Zdegree+1)], branching_age-age_offset);
| ~~~~~~~~^~~
phylogenetics_cpp_routines.cpp:25481:14: note: ‘Zdegree’ was declared here
25481 | long Zdegree, EZdegree, Wdegree;
| ^~~~~~~
phylogenetics_cpp_routines.cpp:25516:102: warning: ‘Wdegree’ may be used uninitialized [-Wmaybe-uninitialized]
25516 | branching_W = polynomial_value(Wdegree, &Wcoeff[d][current_g*(Wdegree+1)], branching_age-age_offset);
| ~~~~~~~~^~~
phylogenetics_cpp_routines.cpp:25481:33: note: ‘Wdegree’ was declared here
25481 | long Zdegree, EZdegree, Wdegree;
| ^~~~~~~
In file included from /data/localhost/ripley/R/test-dev/Rcpp/include/RcppCommon.h:188,
from /data/localhost/ripley/R/test-dev/Rcpp/include/Rcpp.h:27,
from phylogenetics_cpp_routines.cpp:39:
In function ‘SEXPREC* Rcpp::internal::primitive_wrap__impl__cast(const T&, Rcpp::traits::false_type) [with T = double]’,
inlined from ‘SEXPREC* Rcpp::internal::primitive_wrap__impl(const T&, Rcpp::traits::r_type_primitive_tag) [with T = double]’ at /data/localhost/ripley/R/test-dev/Rcpp/include/Rcpp/internal/wrap.h:471:46,
inlined from ‘SEXPREC* Rcpp::internal::primitive_wrap(const T&) [with T = double]’ at /data/localhost/ripley/R/test-dev/Rcpp/include/Rcpp/internal/wrap.h:495:40,
inlined from ‘SEXPREC* Rcpp::internal::wrap_dispatch(const T&, Rcpp::traits::wrap_type_primitive_tag) [with T = double]’ at /data/localhost/ripley/R/test-dev/Rcpp/include/Rcpp/internal/wrap.h:744:34,
inlined from ‘SEXPREC* Rcpp::wrap(const T&) [with T = double]’ at /data/localhost/ripley/R/test-dev/Rcpp/include/Rcpp/internal/wrap_end.h:30:38,
inlined from ‘static SEXPREC* Rcpp::internal::generic_element_converter<RTYPE>::get(const T&) [with T = double; int RTYPE = 19]’ at /data/localhost/ripley/R/test-dev/Rcpp/include/Rcpp/vector/converter.h:80:23,
inlined from ‘static void Rcpp::Vector<RTYPE, StoragePolicy>::replace_element__dispatch__isArgument(Rcpp::traits::false_type, iterator, SEXP, R_xlen_t, const U&) [with U = Rcpp::traits::named_object<double>; int RTYPE = 19; StoragePolicy = Rcpp::PreserveStorage]’ at /data/localhost/ripley/R/test-dev/Rcpp/include/Rcpp/vector/Vector.h:545:13,
inlined from ‘static void Rcpp::Vector<RTYPE, StoragePolicy>::replace_element__dispatch(Rcpp::traits::true_type, iterator, SEXP, R_xlen_t, const U&) [with U = Rcpp::traits::named_object<double>; int RTYPE = 19; StoragePolicy = Rcpp::PreserveStorage]’ at /data/localhost/ripley/R/test-dev/Rcpp/include/Rcpp/vector/Vector.h:538:46,
inlined from ‘static void Rcpp::Vector<RTYPE, StoragePolicy>::replace_element(iterator, SEXP, R_xlen_t, const U&) [with U = Rcpp::traits::named_object<double>; int RTYPE = 19; StoragePolicy = Rcpp::PreserveStorage]’ at /data/localhost/ripley/R/test-dev/Rcpp/include/Rcpp/vector/Vector.h:527:34,
inlined from ‘static void Rcpp::Vector<RTYPE, StoragePolicy>::replace_element_impl(iterator&, Rcpp::Shield<SEXPREC*>&, int&, const T&, const TArgs& ...) [with T = Rcpp::traits::named_object<double>; TArgs = {Rcpp::traits::named_object<bool>}; int RTYPE = 19; StoragePolicy = Rcpp::PreserveStorage]’ at /data/localhost/ripley/R/test-dev/Rcpp/include/Rcpp/vector/Vector.h:1184:24,
inlined from ‘static void Rcpp::Vector<RTYPE, StoragePolicy>::replace_element_impl(iterator&, Rcpp::Shield<SEXPREC*>&, int&, const T&, const TArgs& ...) [with T = Rcpp::traits::named_object<long int>; TArgs = {Rcpp::traits::named_object<double>, Rcpp::traits::named_object<bool>}; int RTYPE = 19; StoragePolicy = Rcpp::PreserveStorage]’ at /data/localhost/ripley/R/test-dev/Rcpp/include/Rcpp/vector/Vector.h:1185:29,
inlined from ‘static void Rcpp::Vector<RTYPE, StoragePolicy>::replace_element_impl(iterator&, Rcpp::Shield<SEXPREC*>&, int&, const T&, const TArgs& ...) [with T = Rcpp::traits::named_object<SEXPREC*>; TArgs = {Rcpp::traits::named_object<long int>, Rcpp::traits::named_object<double>, Rcpp::traits::named_object<bool>}; int RTYPE = 19; StoragePolicy = Rcpp::PreserveStorage]’ at /data/localhost/ripley/R/test-dev/Rcpp/include/Rcpp/vector/Vector.h:1185:29,
inlined from ‘static void Rcpp::Vector<RTYPE, StoragePolicy>::replace_element_impl(iterator&, Rcpp::Shield<SEXPREC*>&, int&, const T&, const TArgs& ...) [with T = Rcpp::traits::named_object<SEXPREC*>; TArgs = {Rcpp::traits::named_object<SEXPREC*>, Rcpp::traits::named_object<long int>, Rcpp::traits::named_object<double>, Rcpp::traits::named_object<bool>}; int RTYPE = 19; StoragePolicy = Rcpp::PreserveStorage]’ at /data/localhost/ripley/R/test-dev/Rcpp/include/Rcpp/vector/Vector.h:1185:29,
inlined from ‘static void Rcpp::Vector<RTYPE, StoragePolicy>::replace_element_impl(iterator&, Rcpp::Shield<SEXPREC*>&, int&, const T&, const TArgs& ...) [with T = Rcpp::traits::named_object<SEXPREC*>; TArgs = {Rcpp::traits::named_object<SEXPREC*>, Rcpp::traits::named_object<SEXPREC*>, Rcpp::traits::named_object<long int>, Rcpp::traits::named_object<double>, Rcpp::traits::named_object<bool>}; int RTYPE = 19; StoragePolicy = Rcpp::PreserveStorage]’ at /data/localhost/ripley/R/test-dev/Rcpp/include/Rcpp/vector/Vector.h:1185:29,
inlined from ‘static void Rcpp::Vector<RTYPE, StoragePolicy>::replace_element_impl(iterator&, Rcpp::Shield<SEXPREC*>&, int&, const T&, const TArgs& ...) [with T = Rcpp::traits::named_object<SEXPREC*>; TArgs = {Rcpp::traits::named_object<SEXPREC*>, Rcpp::traits::named_object<SEXPREC*>, Rcpp::traits::named_object<SEXPREC*>, Rcpp::traits::named_object<long int>, Rcpp::traits::named_object<double>, Rcpp::traits::named_object<bool>}; int RTYPE = 19; StoragePolicy = Rcpp::PreserveStorage]’ at /data/localhost/ripley/R/test-dev/Rcpp/include/Rcpp/vector/Vector.h:1185:29,
inlined from ‘static void Rcpp::Vector<RTYPE, StoragePolicy>::replace_element_impl(iterator&, Rcpp::Shield<SEXPREC*>&, int&, const T&, const TArgs& ...) [with T = Rcpp::traits::named_object<SEXPREC*>; TArgs = {Rcpp::traits::named_object<SEXPREC*>, Rcpp::traits::named_object<SEXPREC*>, Rcpp::traits::named_object<SEXPREC*>, Rcpp::traits::named_object<SEXPREC*>, Rcpp::traits::named_object<long int>, Rcpp::traits::named_object<double>, Rcpp::traits::named_object<bool>}; int RTYPE = 19; StoragePolicy = Rcpp::PreserveStorage]’ at /data/localhost/ripley/R/test-dev/Rcpp/include/Rcpp/vector/Vector.h:1185:29,
inlined from ‘static void Rcpp::Vector<RTYPE, StoragePolicy>::replace_element_impl(iterator&, Rcpp::Shield<SEXPREC*>&, int&, const T&, const TArgs& ...) [with T = Rcpp::traits::named_object<SEXPREC*>; TArgs = {Rcpp::traits::named_object<SEXPREC*>, Rcpp::traits::named_object<SEXPREC*>, Rcpp::traits::named_object<SEXPREC*>, Rcpp::traits::named_object<SEXPREC*>, Rcpp::traits::named_object<SEXPREC*>, Rcpp::traits::named_object<long int>, Rcpp::traits::named_object<double>, Rcpp::traits::named_object<bool>}; int RTYPE = 19; StoragePolicy = Rcpp::PreserveStorage]’ at /data/localhost/ripley/R/test-dev/Rcpp/include/Rcpp/vector/Vector.h:1185:29,
inlined from ‘static void Rcpp::Vector<RTYPE, StoragePolicy>::replace_element_impl(iterator&, Rcpp::Shield<SEXPREC*>&, int&, const T&, const TArgs& ...) [with T = Rcpp::traits::named_object<long int>; TArgs = {Rcpp::traits::named_object<SEXPREC*>, Rcpp::traits::named_object<SEXPREC*>, Rcpp::traits::named_object<SEXPREC*>, Rcpp::traits::named_object<SEXPREC*>, Rcpp::traits::named_object<SEXPREC*>, Rcpp::traits::named_object<SEXPREC*>, Rcpp::traits::named_object<long int>, Rcpp::traits::named_object<double>, Rcpp::traits::named_object<bool>}; int RTYPE = 19; StoragePolicy = Rcpp::PreserveStorage]’ at /data/localhost/ripley/R/test-dev/Rcpp/include/Rcpp/vector/Vector.h:1185:29,
inlined from ‘static void Rcpp::Vector<RTYPE, StoragePolicy>::replace_element_impl(iterator&, Rcpp::Shield<SEXPREC*>&, int&, const T&, const TArgs& ...) [with T = Rcpp::traits::named_object<long int>; TArgs = {Rcpp::traits::named_object<long int>, Rcpp::traits::named_object<SEXPREC*>, Rcpp::traits::named_object<SEXPREC*>, Rcpp::traits::named_object<SEXPREC*>, Rcpp::traits::named_object<SEXPREC*>, Rcpp::traits::named_object<SEXPREC*>, Rcpp::traits::named_object<SEXPREC*>, Rcpp::traits::named_object<long int>, Rcpp::traits::named_object<double>, Rcpp::traits::named_object<bool>}; int RTYPE = 19; StoragePolicy = Rcpp::PreserveStorage]’ at /data/localhost/ripley/R/test-dev/Rcpp/include/Rcpp/vector/Vector.h:1185:29,
inlined from ‘static void Rcpp::Vector<RTYPE, StoragePolicy>::replace_element_impl(iterator&, Rcpp::Shield<SEXPREC*>&, int&, const T&, const TArgs& ...) [with T = Rcpp::traits::named_object<long int>; TArgs = {Rcpp::traits::named_object<long int>, Rcpp::traits::named_object<long int>, Rcpp::traits::named_object<SEXPREC*>, Rcpp::traits::named_object<SEXPREC*>, Rcpp::traits::named_object<SEXPREC*>, Rcpp::traits::named_object<SEXPREC*>, Rcpp::traits::named_object<SEXPREC*>, Rcpp::traits::named_object<SEXPREC*>, Rcpp::traits::named_object<long int>, Rcpp::traits::named_object<double>, Rcpp::traits::named_object<bool>}; int RTYPE = 19; StoragePolicy = Rcpp::PreserveStorage]’ at /data/localhost/ripley/R/test-dev/Rcpp/include/Rcpp/vector/Vector.h:1185:29,
inlined from ‘static Rcpp::Vector<RTYPE, StoragePolicy> Rcpp::Vector<RTYPE, StoragePolicy>::create__dispatch(Rcpp::traits::true_type, const T& ...) [with T = {Rcpp::traits::named_object<long int>, Rcpp::traits::named_object<long int>, Rcpp::traits::named_object<long int>, Rcpp::traits::named_object<SEXPREC*>, Rcpp::traits::named_object<SEXPREC*>, Rcpp::traits::named_object<SEXPREC*>, Rcpp::traits::named_object<SEXPREC*>, Rcpp::traits::named_object<SEXPREC*>, Rcpp::traits::named_object<SEXPREC*>, Rcpp::traits::named_object<long int>, Rcpp::traits::named_object<double>, Rcpp::traits::named_object<bool>}; int RTYPE = 19; StoragePolicy = Rcpp::PreserveStorage]’ at /data/localhost/ripley/R/test-dev/Rcpp/include/Rcpp/vector/Vector.h:1161:29,
inlined from ‘static Rcpp::Vector<RTYPE, StoragePolicy> Rcpp::Vector<RTYPE, StoragePolicy>::create(const T& ...) [with T = {Rcpp::traits::named_object<long int>, Rcpp::traits::named_object<long int>, Rcpp::traits::named_object<long int>, Rcpp::traits::named_object<SEXPREC*>, Rcpp::traits::named_object<SEXPREC*>, Rcpp::traits::named_object<SEXPREC*>, Rcpp::traits::named_object<SEXPREC*>, Rcpp::traits::named_object<SEXPREC*>, Rcpp::traits::named_object<SEXPREC*>, Rcpp::traits::named_object<long int>, Rcpp::traits::named_object<double>, Rcpp::traits::named_object<bool>}; int RTYPE = 19; StoragePolicy = Rcpp::PreserveStorage]’ at /data/localhost/ripley/R/test-dev/Rcpp/include/Rcpp/vector/Vector.h:1143:50,
inlined from ‘Rcpp::List read_Newick_string_CPP(std::string, bool, bool, bool, bool)’ at phylogenetics_cpp_routines.cpp:19388:39:
/data/localhost/ripley/R/test-dev/Rcpp/include/Rcpp/internal/wrap.h:448:41: warning: ‘root_edge’ may be used uninitialized [-Wmaybe-uninitialized]
448 | r_vector_start<RTYPE>(x)[0] = object;
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘Rcpp::List read_Newick_string_CPP(std::string, bool, bool, bool, bool)’:
phylogenetics_cpp_routines.cpp:19304:29: note: ‘root_edge’ was declared here
19304 | double edge_length, root_edge;
| ^~~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘Rcpp::List HBD_PSR_loglikelihood_CPP(const std::vector<double>&, double, const std::vector<double>&, const std::vector<double>&, long int, const std::string&, double, double)’:
phylogenetics_cpp_routines.cpp:25688:51: warning: ‘W_degree’ may be used uninitialized [-Wmaybe-uninitialized]
25688 | const double origin_W = polynomial_value(W_degree,&refined_W_coeff[origin_rg*(W_degree+1)],oldest_age-age_offset);
| ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
phylogenetics_cpp_routines.cpp:25616:24: note: ‘W_degree’ was declared here
25616 | long I_degree, W_degree, NRG;
| ^~~~~~~~
phylogenetics_cpp_routines.cpp: In function ‘Rcpp::NumericMatrix get_distance_matrix_between_clades_CPP(long int, long int, long int, const std::vector<long int>&, const std::vector<double>&, const std::vector<long int>&, bool, const std::string&)’:
phylogenetics_cpp_routines.cpp:13395:155: warning: ‘mrca’ may be used uninitialized [-Wmaybe-uninitialized]
13395 | distances(i,j) = distance_from_root_per_clade[cladeA] + distance_from_root_per_clade[cladeB] - 2*distance_from_root_per_clade[mrca];
| ^
phylogenetics_cpp_routines.cpp:13368:30: note: ‘mrca’ was declared here
13368 | long cladeA, cladeB, mrca;
| ^~~~
g++ -std=gnu++20 -shared -L/usr/local/lib64 -o castor.so RcppExports.o STMathExpression.o phylogenetics_cpp_routines.o registerDynamicSymbol.o
make[1]: Leaving directory '/data/localhost/ripley/R/packages/tests-devel/castor/src'
make[1]: Entering directory '/data/localhost/ripley/R/packages/tests-devel/castor/src'
make[1]: Leaving directory '/data/localhost/ripley/R/packages/tests-devel/castor/src'
installing to /data/localhost/ripley/R/packages/tests-devel/castor.Rcheck/00LOCK-castor/00new/castor/libs
** R
** inst
** byte-compile and prepare package for lazy loading
** help
*** installing help indices
** building package indices
** 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 (castor)