* using log directory 'd:/Rcompile/CRANpkg/local/4.5/BCT.Rcheck' * using R Under development (unstable) (2024-12-21 r87453 ucrt) * using platform: x86_64-w64-mingw32 * R was compiled by gcc.exe (GCC) 13.3.0 GNU Fortran (GCC) 13.3.0 * running under: Windows Server 2022 x64 (build 20348) * using session charset: UTF-8 * checking for file 'BCT/DESCRIPTION' ... OK * checking extension type ... Package * this is package 'BCT' version '1.2' * package encoding: UTF-8 * checking package namespace information ... OK * checking package dependencies ... OK * checking if this is a source package ... OK * checking if there is a namespace ... OK * checking for hidden files and directories ... OK * checking for portable file names ... OK * checking whether package 'BCT' can be installed ... ERROR Installation failed. See 'd:/Rcompile/CRANpkg/local/4.5/BCT.Rcheck/00install.out' for details. * DONE The installation logfile: * installing *source* package 'BCT' ... ** package 'BCT' successfully unpacked and MD5 sums checked ** using staged installation ** libs using C++ compiler: 'g++.exe (GCC) 13.3.0' using C++11 make[1]: Entering directory '/d/temp/2024_12_22_01_50_00_26287/Rtmpe4BxHZ/R.INSTALL267f850933ee0/BCT/src' g++ -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I'D:/RCompile/CRANpkg/lib/4.5/Rcpp/include' -I"d:/rtools44/x86_64-w64-mingw32.static.posix/include" -O2 -Wall -mfpmath=sse -msse2 -mstackrealign -DR_NO_REMAP -c RcppExports.cpp -o RcppExports.o g++ -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I'D:/RCompile/CRANpkg/lib/4.5/Rcpp/include' -I"d:/rtools44/x86_64-w64-mingw32.static.posix/include" -O2 -Wall -mfpmath=sse -msse2 -mstackrealign -DR_NO_REMAP -c bct_rcpp.cpp -o bct_rcpp.o In file included from D:/RCompile/CRANpkg/lib/4.5/Rcpp/include/RcppCommon.h:76, from D:/RCompile/CRANpkg/lib/4.5/Rcpp/include/Rcpp.h:27, from bct_rcpp.cpp:1: D:/RCompile/recent/R/include/Rmath.h:211:25: error: 'long double Rf_beta' redeclared as different kind of entity 211 | #define beta Rf_beta | ^~~~~~~ utils.h:27:13: note: in expansion of macro 'beta' 27 | long double beta; // prior hyper-parameter | ^~~~ D:/RCompile/recent/R/include/Rmath.h:577:9: note: previous declaration 'double Rf_beta(double, double)' 577 | double Rf_beta(double, double); | ^~~~~~~ In file included from bct_rcpp.cpp:3: utils.h: In function 'long double ctw(tree&)': utils.h:268:53: error: no matching function for call to 'log2(double (&)(double, double))' 268 | long double delta = T[d][k]->le - sum + log2(beta) - log2(1.0 - beta); | ~~~~^~~~~~ In file included from D:/RCompile/CRANpkg/lib/4.5/Rcpp/include/Rcpp/platform/compiler.h:100, from D:/RCompile/CRANpkg/lib/4.5/Rcpp/include/Rcpp/r/headers.h:66, from D:/RCompile/CRANpkg/lib/4.5/Rcpp/include/RcppCommon.h:30: d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2338:5: note: candidate: 'template constexpr typename __gnu_cxx::__enable_if::__value, double>::__type std::log2(_Tp)' 2338 | log2(_Tp __x) | ^~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2338:5: note: template argument deduction/substitution failed: d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath: In substitution of 'template constexpr typename __gnu_cxx::__enable_if::__value, double>::__type std::log2(_Tp) [with _Tp = double (*)(double, double)]': utils.h:268:53: required from here d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2338:5: error: no type named '__type' in 'struct __gnu_cxx::__enable_if' In file included from d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:47: d:\rtools44\x86_64-w64-mingw32.static.posix\include\math.h:768:25: note: candidate: 'double log2(double)' 768 | extern double __cdecl log2 (double); | ^~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\include\math.h:768:31: note: no known conversion for argument 1 from 'double(double, double)' to 'double' 768 | extern double __cdecl log2 (double); | ^~~~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2330:3: note: candidate: 'constexpr long double std::log2(long double)' 2330 | log2(long double __x) | ^~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2330:20: note: no known conversion for argument 1 from 'double(double, double)' to 'long double' 2330 | log2(long double __x) | ~~~~~~~~~~~~^~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2326:3: note: candidate: 'constexpr float std::log2(float)' 2326 | log2(float __x) | ^~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2326:14: note: no known conversion for argument 1 from 'double(double, double)' to 'float' 2326 | log2(float __x) | ~~~~~~^~~ utils.h:268:71: error: invalid operands of types 'double' and 'double(double, double)' to binary 'operator-' 268 | long double delta = T[d][k]->le - sum + log2(beta) - log2(1.0 - beta); | ~~~ ^ | | | double utils.h:271:34: error: invalid operands of types 'double' and 'double(double, double)' to binary 'operator-' 271 | T[d][k]->lw = log2(1.0 - beta) + sum + log2(1.0 + pow(2.0, delta)); | ~~~ ^ | | | double utils.h:275:29: error: no matching function for call to 'log2(double (&)(double, double))' 275 | T[d][k]->lw = log2(beta) + T[d][k]->le + log2(exp(1))*(pow(2.0, -delta) - pow(2.0, -2.0*delta - 1)); | ~~~~^~~~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2338:5: note: candidate: 'template constexpr typename __gnu_cxx::__enable_if::__value, double>::__type std::log2(_Tp)' 2338 | log2(_Tp __x) | ^~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2338:5: note: template argument deduction/substitution failed: d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath: In substitution of 'template constexpr typename __gnu_cxx::__enable_if::__value, double>::__type std::log2(_Tp) [with _Tp = double (*)(double, double)]': utils.h:275:29: required from here d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2338:5: error: no type named '__type' in 'struct __gnu_cxx::__enable_if' d:\rtools44\x86_64-w64-mingw32.static.posix\include\math.h:768:25: note: candidate: 'double log2(double)' 768 | extern double __cdecl log2 (double); | ^~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\include\math.h:768:31: note: no known conversion for argument 1 from 'double(double, double)' to 'double' 768 | extern double __cdecl log2 (double); | ^~~~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2330:3: note: candidate: 'constexpr long double std::log2(long double)' 2330 | log2(long double __x) | ^~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2330:20: note: no known conversion for argument 1 from 'double(double, double)' to 'long double' 2330 | log2(long double __x) | ~~~~~~~~~~~~^~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2326:3: note: candidate: 'constexpr float std::log2(float)' 2326 | log2(float __x) | ^~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2326:14: note: no known conversion for argument 1 from 'double(double, double)' to 'float' 2326 | log2(float __x) | ~~~~~~^~~ utils.h: In function 'long double bct(tree&)': utils.h:316:31: error: no matching function for call to 'log2(double (&)(double, double))' 316 | sum = sum + log2(beta); | ~~~~^~~~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2338:5: note: candidate: 'template constexpr typename __gnu_cxx::__enable_if::__value, double>::__type std::log2(_Tp)' 2338 | log2(_Tp __x) | ^~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2338:5: note: template argument deduction/substitution failed: d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath: In substitution of 'template constexpr typename __gnu_cxx::__enable_if::__value, double>::__type std::log2(_Tp) [with _Tp = double (*)(double, double)]': utils.h:316:31: required from here d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2338:5: error: no type named '__type' in 'struct __gnu_cxx::__enable_if' d:\rtools44\x86_64-w64-mingw32.static.posix\include\math.h:768:25: note: candidate: 'double log2(double)' 768 | extern double __cdecl log2 (double); | ^~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\include\math.h:768:31: note: no known conversion for argument 1 from 'double(double, double)' to 'double' 768 | extern double __cdecl log2 (double); | ^~~~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2330:3: note: candidate: 'constexpr long double std::log2(long double)' 2330 | log2(long double __x) | ^~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2330:20: note: no known conversion for argument 1 from 'double(double, double)' to 'long double' 2330 | log2(long double __x) | ~~~~~~~~~~~~^~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2326:3: note: candidate: 'constexpr float std::log2(float)' 2326 | log2(float __x) | ^~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2326:14: note: no known conversion for argument 1 from 'double(double, double)' to 'float' 2326 | log2(float __x) | ~~~~~~^~~ utils.h:333:27: error: invalid operands of types 'double' and 'double(double, double)' to binary 'operator*' 333 | if (log2(1.0 - 1.0*beta) + sum > log2(beta) + T[d][k]->le) { // maximum achieved by children term | ~~~^ | | | double utils.h:333:46: error: no matching function for call to 'log2(double (&)(double, double))' 333 | if (log2(1.0 - 1.0*beta) + sum > log2(beta) + T[d][k]->le) { // maximum achieved by children term | ~~~~^~~~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2338:5: note: candidate: 'template constexpr typename __gnu_cxx::__enable_if::__value, double>::__type std::log2(_Tp)' 2338 | log2(_Tp __x) | ^~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2338:5: note: template argument deduction/substitution failed: d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath: In substitution of 'template constexpr typename __gnu_cxx::__enable_if::__value, double>::__type std::log2(_Tp) [with _Tp = double (*)(double, double)]': utils.h:333:46: required from here d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2338:5: error: no type named '__type' in 'struct __gnu_cxx::__enable_if' d:\rtools44\x86_64-w64-mingw32.static.posix\include\math.h:768:25: note: candidate: 'double log2(double)' 768 | extern double __cdecl log2 (double); | ^~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\include\math.h:768:31: note: no known conversion for argument 1 from 'double(double, double)' to 'double' 768 | extern double __cdecl log2 (double); | ^~~~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2330:3: note: candidate: 'constexpr long double std::log2(long double)' 2330 | log2(long double __x) | ^~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2330:20: note: no known conversion for argument 1 from 'double(double, double)' to 'long double' 2330 | log2(long double __x) | ~~~~~~~~~~~~^~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2326:3: note: candidate: 'constexpr float std::log2(float)' 2326 | log2(float __x) | ^~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2326:14: note: no known conversion for argument 1 from 'double(double, double)' to 'float' 2326 | log2(float __x) | ~~~~~~^~~ utils.h:335:39: error: invalid operands of types 'double' and 'double(double, double)' to binary 'operator*' 335 | T[d][k]->lw = log2(1.0 - 1.0*beta) + sum; // set max prob of node | ~~~^ | | | double utils.h:342:29: error: no matching function for call to 'log2(double (&)(double, double))' 342 | T[d][k]->lw = log2(beta) + T[d][k]->le; // set max prob of node and mark to be pruned | ~~~~^~~~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2338:5: note: candidate: 'template constexpr typename __gnu_cxx::__enable_if::__value, double>::__type std::log2(_Tp)' 2338 | log2(_Tp __x) | ^~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2338:5: note: template argument deduction/substitution failed: d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath: In substitution of 'template constexpr typename __gnu_cxx::__enable_if::__value, double>::__type std::log2(_Tp) [with _Tp = double (*)(double, double)]': utils.h:342:29: required from here d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2338:5: error: no type named '__type' in 'struct __gnu_cxx::__enable_if' d:\rtools44\x86_64-w64-mingw32.static.posix\include\math.h:768:25: note: candidate: 'double log2(double)' 768 | extern double __cdecl log2 (double); | ^~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\include\math.h:768:31: note: no known conversion for argument 1 from 'double(double, double)' to 'double' 768 | extern double __cdecl log2 (double); | ^~~~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2330:3: note: candidate: 'constexpr long double std::log2(long double)' 2330 | log2(long double __x) | ^~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2330:20: note: no known conversion for argument 1 from 'double(double, double)' to 'long double' 2330 | log2(long double __x) | ~~~~~~~~~~~~^~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2326:3: note: candidate: 'constexpr float std::log2(float)' 2326 | log2(float __x) | ^~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2326:14: note: no known conversion for argument 1 from 'double(double, double)' to 'float' 2326 | log2(float __x) | ~~~~~~^~~ utils.h:410:32: error: no matching function for call to 'log2(double (&)(double, double))' 410 | init->lw = log2(beta); // set maximal prob for leaf at depth < D, if leaf is at depth D then logP=0; | ~~~~^~~~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2338:5: note: candidate: 'template constexpr typename __gnu_cxx::__enable_if::__value, double>::__type std::log2(_Tp)' 2338 | log2(_Tp __x) | ^~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2338:5: note: template argument deduction/substitution failed: d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath: In substitution of 'template constexpr typename __gnu_cxx::__enable_if::__value, double>::__type std::log2(_Tp) [with _Tp = double (*)(double, double)]': utils.h:410:32: required from here d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2338:5: error: no type named '__type' in 'struct __gnu_cxx::__enable_if' d:\rtools44\x86_64-w64-mingw32.static.posix\include\math.h:768:25: note: candidate: 'double log2(double)' 768 | extern double __cdecl log2 (double); | ^~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\include\math.h:768:31: note: no known conversion for argument 1 from 'double(double, double)' to 'double' 768 | extern double __cdecl log2 (double); | ^~~~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2330:3: note: candidate: 'constexpr long double std::log2(long double)' 2330 | log2(long double __x) | ^~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2330:20: note: no known conversion for argument 1 from 'double(double, double)' to 'long double' 2330 | log2(long double __x) | ~~~~~~~~~~~~^~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2326:3: note: candidate: 'constexpr float std::log2(float)' 2326 | log2(float __x) | ^~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2326:14: note: no known conversion for argument 1 from 'double(double, double)' to 'float' 2326 | log2(float __x) | ~~~~~~^~~ utils.h: In function 'void preproc(std::vector)': utils.h:516:26: error: no matching function for call to 'log2(double (&)(double, double))' 516 | init[d]->lm[0] = log2(beta); // for smaller depth first add c=0 with p=logbeta | ~~~~^~~~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2338:5: note: candidate: 'template constexpr typename __gnu_cxx::__enable_if::__value, double>::__type std::log2(_Tp)' 2338 | log2(_Tp __x) | ^~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2338:5: note: template argument deduction/substitution failed: d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath: In substitution of 'template constexpr typename __gnu_cxx::__enable_if::__value, double>::__type std::log2(_Tp) [with _Tp = double (*)(double, double)]': utils.h:516:26: required from here d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2338:5: error: no type named '__type' in 'struct __gnu_cxx::__enable_if' d:\rtools44\x86_64-w64-mingw32.static.posix\include\math.h:768:25: note: candidate: 'double log2(double)' 768 | extern double __cdecl log2 (double); | ^~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\include\math.h:768:31: note: no known conversion for argument 1 from 'double(double, double)' to 'double' 768 | extern double __cdecl log2 (double); | ^~~~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2330:3: note: candidate: 'constexpr long double std::log2(long double)' 2330 | log2(long double __x) | ^~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2330:20: note: no known conversion for argument 1 from 'double(double, double)' to 'long double' 2330 | log2(long double __x) | ~~~~~~~~~~~~^~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2326:3: note: candidate: 'constexpr float std::log2(float)' 2326 | log2(float __x) | ^~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2326:14: note: no known conversion for argument 1 from 'double(double, double)' to 'float' 2326 | log2(float __x) | ~~~~~~^~~ utils.h: In function 'void comb(int, int, tree&, std::vector)': utils.h:597:27: error: invalid operands of types 'double' and 'double(double, double)' to binary 'operator-' 597 | double sum = log2(1.0 - beta); | ~~~ ^ | | | double utils.h: In function 'void kbct_forw(tree&, std::vector)': utils.h:713:30: error: no matching function for call to 'log2(double (&)(double, double))' 713 | T[d][k]->lm[0] = log2(beta) + T[d][k]->le; // for d constexpr typename __gnu_cxx::__enable_if::__value, double>::__type std::log2(_Tp)' 2338 | log2(_Tp __x) | ^~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2338:5: note: template argument deduction/substitution failed: d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath: In substitution of 'template constexpr typename __gnu_cxx::__enable_if::__value, double>::__type std::log2(_Tp) [with _Tp = double (*)(double, double)]': utils.h:713:30: required from here d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2338:5: error: no type named '__type' in 'struct __gnu_cxx::__enable_if' d:\rtools44\x86_64-w64-mingw32.static.posix\include\math.h:768:25: note: candidate: 'double log2(double)' 768 | extern double __cdecl log2 (double); | ^~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\include\math.h:768:31: note: no known conversion for argument 1 from 'double(double, double)' to 'double' 768 | extern double __cdecl log2 (double); | ^~~~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2330:3: note: candidate: 'constexpr long double std::log2(long double)' 2330 | log2(long double __x) | ^~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2330:20: note: no known conversion for argument 1 from 'double(double, double)' to 'long double' 2330 | log2(long double __x) | ~~~~~~~~~~~~^~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2326:3: note: candidate: 'constexpr float std::log2(float)' 2326 | log2(float __x) | ^~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2326:14: note: no known conversion for argument 1 from 'double(double, double)' to 'float' 2326 | log2(float __x) | ~~~~~~^~~ utils.h: In function 'void kbct(tree&, std::vector > >&, std::vector, std::vector&)': utils.h:841:65: error: no matching function for call to 'pow(double (&)(double, double), std::vector::size_type)' 841 | long double prior = log2(pow(alpha, (tp.n_leaves - 1.0))*pow(beta, (tp.n_leaves - trees[i][D].size())));// log-prior | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from D:/RCompile/CRANpkg/lib/4.5/Rcpp/include/RcppCommon.h:66: d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\complex:2477:5: note: candidate: 'template std::complex::__type> std::pow(const complex<_Tp>&, const complex<_Up>&)' 2477 | pow(const std::complex<_Tp>& __x, const std::complex<_Up>& __y) | ^~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\complex:2477:5: note: template argument deduction/substitution failed: utils.h:841:65: note: mismatched types 'const std::complex<_Tp>' and 'double(double, double)' 841 | long double prior = log2(pow(alpha, (tp.n_leaves - 1.0))*pow(beta, (tp.n_leaves - trees[i][D].size())));// log-prior | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\complex:2469:5: note: candidate: 'template std::complex::__type> std::pow(const _Tp&, const complex<_Up>&)' 2469 | pow(const _Tp& __x, const std::complex<_Up>& __y) | ^~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\complex:2469:5: note: template argument deduction/substitution failed: utils.h:841:65: note: mismatched types 'const std::complex<_Up>' and 'std::vector::size_type' {aka 'long long unsigned int'} 841 | long double prior = log2(pow(alpha, (tp.n_leaves - 1.0))*pow(beta, (tp.n_leaves - trees[i][D].size())));// log-prior | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\complex:2461:5: note: candidate: 'template std::complex::__type> std::pow(const complex<_Tp>&, const _Up&)' 2461 | pow(const std::complex<_Tp>& __x, const _Up& __y) | ^~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\complex:2461:5: note: template argument deduction/substitution failed: utils.h:841:65: note: mismatched types 'const std::complex<_Tp>' and 'double(double, double)' 841 | long double prior = log2(pow(alpha, (tp.n_leaves - 1.0))*pow(beta, (tp.n_leaves - trees[i][D].size())));// log-prior | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\complex:1334:5: note: candidate: 'template std::complex<_Tp> std::pow(const _Tp&, const complex<_Tp>&)' 1334 | pow(const _Tp& __x, const complex<_Tp>& __y) | ^~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\complex:1334:5: note: template argument deduction/substitution failed: utils.h:841:65: note: mismatched types 'const std::complex<_Tp>' and 'std::vector::size_type' {aka 'long long unsigned int'} 841 | long double prior = log2(pow(alpha, (tp.n_leaves - 1.0))*pow(beta, (tp.n_leaves - trees[i][D].size())));// log-prior | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\complex:1323:5: note: candidate: 'template std::complex<_Tp> std::pow(const complex<_Tp>&, const complex<_Tp>&)' 1323 | pow(const complex<_Tp>& __x, const complex<_Tp>& __y) | ^~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\complex:1323:5: note: template argument deduction/substitution failed: utils.h:841:65: note: mismatched types 'const std::complex<_Tp>' and 'double(double, double)' 841 | long double prior = log2(pow(alpha, (tp.n_leaves - 1.0))*pow(beta, (tp.n_leaves - trees[i][D].size())));// log-prior | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\complex:1289:5: note: candidate: 'template std::complex<_Tp> std::pow(const complex<_Tp>&, const _Tp&)' 1289 | pow(const complex<_Tp>& __x, const _Tp& __y) | ^~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\complex:1289:5: note: template argument deduction/substitution failed: utils.h:841:65: note: mismatched types 'const std::complex<_Tp>' and 'double(double, double)' 841 | long double prior = log2(pow(alpha, (tp.n_leaves - 1.0))*pow(beta, (tp.n_leaves - trees[i][D].size())));// log-prior | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\complex:1280:5: note: candidate: 'template std::complex<_Tp> std::pow(const complex<_Tp>&, int)' 1280 | pow(const complex<_Tp>& __z, int __n) | ^~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\complex:1280:5: note: template argument deduction/substitution failed: utils.h:841:65: note: mismatched types 'const std::complex<_Tp>' and 'double(double, double)' 841 | long double prior = log2(pow(alpha, (tp.n_leaves - 1.0))*pow(beta, (tp.n_leaves - trees[i][D].size())));// log-prior | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:1070:5: note: candidate: 'template constexpr typename __gnu_cxx::__promote_2<_Tp, _Up>::__type std::pow(_Tp, _Up)' 1070 | pow(_Tp __x, _Up __y) | ^~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:1070:5: note: template argument deduction/substitution failed: d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath: In substitution of 'template constexpr typename __gnu_cxx::__promote_2<_Tp, _Up>::__type std::pow(_Tp, _Up) [with _Tp = double (*)(double, double); _Up = long long unsigned int]': utils.h:841:65: required from here d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:1070:5: error: no type named '__type' in 'struct __gnu_cxx::__promote' d:\rtools44\x86_64-w64-mingw32.static.posix\include\math.h:191:18: note: candidate: 'double pow(double, double)' 191 | double __cdecl pow(double _X,double _Y); | ^~~ d:\rtools44\x86_64-w64-mingw32.static.posix\include\math.h:191:29: note: no known conversion for argument 1 from 'double(double, double)' to 'double' 191 | double __cdecl pow(double _X,double _Y); | ~~~~~~~^~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:376:3: note: candidate: 'constexpr long double std::pow(long double, long double)' 376 | pow(long double __x, long double __y) | ^~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:376:19: note: no known conversion for argument 1 from 'double(double, double)' to 'long double' 376 | pow(long double __x, long double __y) | ~~~~~~~~~~~~^~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:372:3: note: candidate: 'constexpr float std::pow(float, float)' 372 | pow(float __x, float __y) | ^~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:372:13: note: no known conversion for argument 1 from 'double(double, double)' to 'float' 372 | pow(float __x, float __y) | ~~~~~~^~~ utils.h: In function 'void comb_initial3(int, std::vector)': utils.h:896:27: error: invalid operands of types 'double' and 'double(double, double)' to binary 'operator-' 896 | double sum = log2(1.0 - beta); | ~~~ ^ | | | double utils.h: In function 'Rcpp::NumericVector compute_log_loss(std::vector, int)': utils.h:1064:57: error: no matching function for call to 'log2(double (&)(double, double))' 1064 | long double delta = nodes_ct[d]->le - sum + log2(beta) - log2(1.0 - beta); | ~~~~^~~~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2338:5: note: candidate: 'template constexpr typename __gnu_cxx::__enable_if::__value, double>::__type std::log2(_Tp)' 2338 | log2(_Tp __x) | ^~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2338:5: note: template argument deduction/substitution failed: d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath: In substitution of 'template constexpr typename __gnu_cxx::__enable_if::__value, double>::__type std::log2(_Tp) [with _Tp = double (*)(double, double)]': utils.h:1064:57: required from here d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2338:5: error: no type named '__type' in 'struct __gnu_cxx::__enable_if' d:\rtools44\x86_64-w64-mingw32.static.posix\include\math.h:768:25: note: candidate: 'double log2(double)' 768 | extern double __cdecl log2 (double); | ^~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\include\math.h:768:31: note: no known conversion for argument 1 from 'double(double, double)' to 'double' 768 | extern double __cdecl log2 (double); | ^~~~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2330:3: note: candidate: 'constexpr long double std::log2(long double)' 2330 | log2(long double __x) | ^~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2330:20: note: no known conversion for argument 1 from 'double(double, double)' to 'long double' 2330 | log2(long double __x) | ~~~~~~~~~~~~^~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2326:3: note: candidate: 'constexpr float std::log2(float)' 2326 | log2(float __x) | ^~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2326:14: note: no known conversion for argument 1 from 'double(double, double)' to 'float' 2326 | log2(float __x) | ~~~~~~^~~ utils.h:1064:75: error: invalid operands of types 'double' and 'double(double, double)' to binary 'operator-' 1064 | long double delta = nodes_ct[d]->le - sum + log2(beta) - log2(1.0 - beta); | ~~~ ^ | | | double utils.h:1067:38: error: invalid operands of types 'double' and 'double(double, double)' to binary 'operator-' 1067 | nodes_ct[d]->lw = log2(1.0 - beta) + sum + log2(1.0 + pow(2.0, delta)); | ~~~ ^ | | | double utils.h:1071:33: error: no matching function for call to 'log2(double (&)(double, double))' 1071 | nodes_ct[d]->lw = log2(beta) + nodes_ct[d]->le + log2(exp(1))*(pow(2.0, -delta) - pow(2.0, -2.0*delta - 1)); | ~~~~^~~~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2338:5: note: candidate: 'template constexpr typename __gnu_cxx::__enable_if::__value, double>::__type std::log2(_Tp)' 2338 | log2(_Tp __x) | ^~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2338:5: note: template argument deduction/substitution failed: d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath: In substitution of 'template constexpr typename __gnu_cxx::__enable_if::__value, double>::__type std::log2(_Tp) [with _Tp = double (*)(double, double)]': utils.h:1071:33: required from here d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2338:5: error: no type named '__type' in 'struct __gnu_cxx::__enable_if' d:\rtools44\x86_64-w64-mingw32.static.posix\include\math.h:768:25: note: candidate: 'double log2(double)' 768 | extern double __cdecl log2 (double); | ^~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\include\math.h:768:31: note: no known conversion for argument 1 from 'double(double, double)' to 'double' 768 | extern double __cdecl log2 (double); | ^~~~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2330:3: note: candidate: 'constexpr long double std::log2(long double)' 2330 | log2(long double __x) | ^~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2330:20: note: no known conversion for argument 1 from 'double(double, double)' to 'long double' 2330 | log2(long double __x) | ~~~~~~~~~~~~^~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2326:3: note: candidate: 'constexpr float std::log2(float)' 2326 | log2(float __x) | ^~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2326:14: note: no known conversion for argument 1 from 'double(double, double)' to 'float' 2326 | log2(float __x) | ~~~~~~^~~ utils.h: In function 'void set_global_parameters(std::string&, int, short int)': utils.h:1176:8: error: assignment of function 'double Rf_beta(double, double)' 1176 | beta = 1 - pow(2, -(m - 1)); // default value for the prior hyper-parameter utils.h:1177:20: error: invalid operands of types 'double' and 'double(double, double)' to binary 'operator-' 1177 | alpha = pow((1.0 - beta), (1.0 / (m - 1.0))); | ~~~ ^ | | | double utils.h: In function 'void set_global_parameters(std::string&, int, short int, double)': utils.h:1183:10: error: assignment of function 'double Rf_beta(double, double)' 1183 | beta = b; // for a custom beta. utils.h:1185:10: error: assignment of function 'double Rf_beta(double, double)' 1185 | beta = 1 - pow(2, -(m - 1)); utils.h:1186:20: error: invalid operands of types 'double' and 'double(double, double)' to binary 'operator-' 1186 | alpha = pow((1.0 - beta), (1.0 / (m - 1.0))); | ~~~ ^ | | | double utils.h: In function 'void set_global_parameters_with_alphabet(std::string&, int, short int, std::string&)': utils.h:1192:8: error: assignment of function 'double Rf_beta(double, double)' 1192 | beta = 1 - pow(2, -(m - 1)); // default value for the prior hyper-parameter utils.h:1193:20: error: invalid operands of types 'double' and 'double(double, double)' to binary 'operator-' 1193 | alpha = pow((1.0 - beta), (1.0 / (m - 1.0))); | ~~~ ^ | | | double utils.h: In function 'void set_global_parameters_with_alphabet(std::string&, int, short int, std::string&, double)': utils.h:1201:10: error: assignment of function 'double Rf_beta(double, double)' 1201 | beta = b; // for a custom beta. utils.h:1203:10: error: assignment of function 'double Rf_beta(double, double)' 1203 | beta = 1 - pow(2, -(m - 1)); utils.h:1204:20: error: invalid operands of types 'double' and 'double(double, double)' to binary 'operator-' 1204 | alpha = pow((1.0 - beta), (1.0 / (m - 1.0))); | ~~~ ^ | | | double utils.h: In function 'void ctw_bct(tree&, Tree_properties&)': utils.h:1398:65: error: no matching function for call to 'pow(double (&)(double, double), std::vector::size_type)' 1398 | long double prior = log2(pow(alpha, (tp.n_leaves - 1.0)) * pow(beta, (tp.n_leaves - T2[D].size()))); // log-prior | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\complex:2477:5: note: candidate: 'template std::complex::__type> std::pow(const complex<_Tp>&, const complex<_Up>&)' 2477 | pow(const std::complex<_Tp>& __x, const std::complex<_Up>& __y) | ^~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\complex:2477:5: note: template argument deduction/substitution failed: utils.h:1398:65: note: mismatched types 'const std::complex<_Tp>' and 'double(double, double)' 1398 | long double prior = log2(pow(alpha, (tp.n_leaves - 1.0)) * pow(beta, (tp.n_leaves - T2[D].size()))); // log-prior | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\complex:2469:5: note: candidate: 'template std::complex::__type> std::pow(const _Tp&, const complex<_Up>&)' 2469 | pow(const _Tp& __x, const std::complex<_Up>& __y) | ^~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\complex:2469:5: note: template argument deduction/substitution failed: utils.h:1398:65: note: mismatched types 'const std::complex<_Up>' and 'std::vector::size_type' {aka 'long long unsigned int'} 1398 | long double prior = log2(pow(alpha, (tp.n_leaves - 1.0)) * pow(beta, (tp.n_leaves - T2[D].size()))); // log-prior | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\complex:2461:5: note: candidate: 'template std::complex::__type> std::pow(const complex<_Tp>&, const _Up&)' 2461 | pow(const std::complex<_Tp>& __x, const _Up& __y) | ^~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\complex:2461:5: note: template argument deduction/substitution failed: utils.h:1398:65: note: mismatched types 'const std::complex<_Tp>' and 'double(double, double)' 1398 | long double prior = log2(pow(alpha, (tp.n_leaves - 1.0)) * pow(beta, (tp.n_leaves - T2[D].size()))); // log-prior | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\complex:1334:5: note: candidate: 'template std::complex<_Tp> std::pow(const _Tp&, const complex<_Tp>&)' 1334 | pow(const _Tp& __x, const complex<_Tp>& __y) | ^~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\complex:1334:5: note: template argument deduction/substitution failed: utils.h:1398:65: note: mismatched types 'const std::complex<_Tp>' and 'std::vector::size_type' {aka 'long long unsigned int'} 1398 | long double prior = log2(pow(alpha, (tp.n_leaves - 1.0)) * pow(beta, (tp.n_leaves - T2[D].size()))); // log-prior | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\complex:1323:5: note: candidate: 'template std::complex<_Tp> std::pow(const complex<_Tp>&, const complex<_Tp>&)' 1323 | pow(const complex<_Tp>& __x, const complex<_Tp>& __y) | ^~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\complex:1323:5: note: template argument deduction/substitution failed: utils.h:1398:65: note: mismatched types 'const std::complex<_Tp>' and 'double(double, double)' 1398 | long double prior = log2(pow(alpha, (tp.n_leaves - 1.0)) * pow(beta, (tp.n_leaves - T2[D].size()))); // log-prior | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\complex:1289:5: note: candidate: 'template std::complex<_Tp> std::pow(const complex<_Tp>&, const _Tp&)' 1289 | pow(const complex<_Tp>& __x, const _Tp& __y) | ^~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\complex:1289:5: note: template argument deduction/substitution failed: utils.h:1398:65: note: mismatched types 'const std::complex<_Tp>' and 'double(double, double)' 1398 | long double prior = log2(pow(alpha, (tp.n_leaves - 1.0)) * pow(beta, (tp.n_leaves - T2[D].size()))); // log-prior | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\complex:1280:5: note: candidate: 'template std::complex<_Tp> std::pow(const complex<_Tp>&, int)' 1280 | pow(const complex<_Tp>& __z, int __n) | ^~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\complex:1280:5: note: template argument deduction/substitution failed: utils.h:1398:65: note: mismatched types 'const std::complex<_Tp>' and 'double(double, double)' 1398 | long double prior = log2(pow(alpha, (tp.n_leaves - 1.0)) * pow(beta, (tp.n_leaves - T2[D].size()))); // log-prior | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:1070:5: note: candidate: 'template constexpr typename __gnu_cxx::__promote_2<_Tp, _Up>::__type std::pow(_Tp, _Up)' 1070 | pow(_Tp __x, _Up __y) | ^~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:1070:5: note: template argument deduction/substitution failed: d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath: In substitution of 'template constexpr typename __gnu_cxx::__promote_2<_Tp, _Up>::__type std::pow(_Tp, _Up) [with _Tp = double (*)(double, double); _Up = long long unsigned int]': utils.h:1398:65: required from here d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:1070:5: error: no type named '__type' in 'struct __gnu_cxx::__promote' d:\rtools44\x86_64-w64-mingw32.static.posix\include\math.h:191:18: note: candidate: 'double pow(double, double)' 191 | double __cdecl pow(double _X,double _Y); | ^~~ d:\rtools44\x86_64-w64-mingw32.static.posix\include\math.h:191:29: note: no known conversion for argument 1 from 'double(double, double)' to 'double' 191 | double __cdecl pow(double _X,double _Y); | ~~~~~~~^~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:376:3: note: candidate: 'constexpr long double std::pow(long double, long double)' 376 | pow(long double __x, long double __y) | ^~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:376:19: note: no known conversion for argument 1 from 'double(double, double)' to 'long double' 376 | pow(long double __x, long double __y) | ~~~~~~~~~~~~^~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:372:3: note: candidate: 'constexpr float std::pow(float, float)' 372 | pow(float __x, float __y) | ^~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:372:13: note: no known conversion for argument 1 from 'double(double, double)' to 'float' 372 | pow(float __x, float __y) | ~~~~~~^~~ utils.h: In function 'Rcpp::List online_predict(int)': utils.h:1593:59: error: no matching function for call to 'log2(double (&)(double, double))' 1593 | long double delta = nodes_ct[d]->le - sum + log2(beta) - log2(1.0 - beta); | ~~~~^~~~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2338:5: note: candidate: 'template constexpr typename __gnu_cxx::__enable_if::__value, double>::__type std::log2(_Tp)' 2338 | log2(_Tp __x) | ^~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2338:5: note: template argument deduction/substitution failed: d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath: In substitution of 'template constexpr typename __gnu_cxx::__enable_if::__value, double>::__type std::log2(_Tp) [with _Tp = double (*)(double, double)]': utils.h:1593:59: required from here d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2338:5: error: no type named '__type' in 'struct __gnu_cxx::__enable_if' d:\rtools44\x86_64-w64-mingw32.static.posix\include\math.h:768:25: note: candidate: 'double log2(double)' 768 | extern double __cdecl log2 (double); | ^~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\include\math.h:768:31: note: no known conversion for argument 1 from 'double(double, double)' to 'double' 768 | extern double __cdecl log2 (double); | ^~~~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2330:3: note: candidate: 'constexpr long double std::log2(long double)' 2330 | log2(long double __x) | ^~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2330:20: note: no known conversion for argument 1 from 'double(double, double)' to 'long double' 2330 | log2(long double __x) | ~~~~~~~~~~~~^~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2326:3: note: candidate: 'constexpr float std::log2(float)' 2326 | log2(float __x) | ^~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2326:14: note: no known conversion for argument 1 from 'double(double, double)' to 'float' 2326 | log2(float __x) | ~~~~~~^~~ utils.h:1593:77: error: invalid operands of types 'double' and 'double(double, double)' to binary 'operator-' 1593 | long double delta = nodes_ct[d]->le - sum + log2(beta) - log2(1.0 - beta); | ~~~ ^ | | | double utils.h:1596:40: error: invalid operands of types 'double' and 'double(double, double)' to binary 'operator-' 1596 | nodes_ct[d]->lw = log2(1.0 - beta) + sum + log2(1.0 + pow(2.0, delta)); | ~~~ ^ | | | double utils.h:1600:35: error: no matching function for call to 'log2(double (&)(double, double))' 1600 | nodes_ct[d]->lw = log2(beta) + nodes_ct[d]->le + log2(exp(1))*(pow(2.0, -delta) - pow(2.0, -2.0*delta - 1)); | ~~~~^~~~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2338:5: note: candidate: 'template constexpr typename __gnu_cxx::__enable_if::__value, double>::__type std::log2(_Tp)' 2338 | log2(_Tp __x) | ^~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2338:5: note: template argument deduction/substitution failed: d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath: In substitution of 'template constexpr typename __gnu_cxx::__enable_if::__value, double>::__type std::log2(_Tp) [with _Tp = double (*)(double, double)]': utils.h:1600:35: required from here d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2338:5: error: no type named '__type' in 'struct __gnu_cxx::__enable_if' d:\rtools44\x86_64-w64-mingw32.static.posix\include\math.h:768:25: note: candidate: 'double log2(double)' 768 | extern double __cdecl log2 (double); | ^~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\include\math.h:768:31: note: no known conversion for argument 1 from 'double(double, double)' to 'double' 768 | extern double __cdecl log2 (double); | ^~~~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2330:3: note: candidate: 'constexpr long double std::log2(long double)' 2330 | log2(long double __x) | ^~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2330:20: note: no known conversion for argument 1 from 'double(double, double)' to 'long double' 2330 | log2(long double __x) | ~~~~~~~~~~~~^~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2326:3: note: candidate: 'constexpr float std::log2(float)' 2326 | log2(float __x) | ^~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2326:14: note: no known conversion for argument 1 from 'double(double, double)' to 'float' 2326 | log2(float __x) | ~~~~~~^~~ utils.h:1673:57: error: no matching function for call to 'log2(double (&)(double, double))' 1673 | long double delta = nodes_ct[d]->le - sum + log2(beta) - log2(1.0 - beta); | ~~~~^~~~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2338:5: note: candidate: 'template constexpr typename __gnu_cxx::__enable_if::__value, double>::__type std::log2(_Tp)' 2338 | log2(_Tp __x) | ^~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2338:5: note: template argument deduction/substitution failed: d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath: In substitution of 'template constexpr typename __gnu_cxx::__enable_if::__value, double>::__type std::log2(_Tp) [with _Tp = double (*)(double, double)]': utils.h:1673:57: required from here d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2338:5: error: no type named '__type' in 'struct __gnu_cxx::__enable_if' d:\rtools44\x86_64-w64-mingw32.static.posix\include\math.h:768:25: note: candidate: 'double log2(double)' 768 | extern double __cdecl log2 (double); | ^~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\include\math.h:768:31: note: no known conversion for argument 1 from 'double(double, double)' to 'double' 768 | extern double __cdecl log2 (double); | ^~~~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2330:3: note: candidate: 'constexpr long double std::log2(long double)' 2330 | log2(long double __x) | ^~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2330:20: note: no known conversion for argument 1 from 'double(double, double)' to 'long double' 2330 | log2(long double __x) | ~~~~~~~~~~~~^~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2326:3: note: candidate: 'constexpr float std::log2(float)' 2326 | log2(float __x) | ^~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2326:14: note: no known conversion for argument 1 from 'double(double, double)' to 'float' 2326 | log2(float __x) | ~~~~~~^~~ utils.h:1673:75: error: invalid operands of types 'double' and 'double(double, double)' to binary 'operator-' 1673 | long double delta = nodes_ct[d]->le - sum + log2(beta) - log2(1.0 - beta); | ~~~ ^ | | | double utils.h:1676:38: error: invalid operands of types 'double' and 'double(double, double)' to binary 'operator-' 1676 | nodes_ct[d]->lw = log2(1.0 - beta) + sum + log2(1.0 + pow(2.0, delta)); | ~~~ ^ | | | double utils.h:1680:33: error: no matching function for call to 'log2(double (&)(double, double))' 1680 | nodes_ct[d]->lw = log2(beta) + nodes_ct[d]->le + log2(exp(1))*(pow(2.0, -delta) - pow(2.0, -2.0*delta - 1)); | ~~~~^~~~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2338:5: note: candidate: 'template constexpr typename __gnu_cxx::__enable_if::__value, double>::__type std::log2(_Tp)' 2338 | log2(_Tp __x) | ^~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2338:5: note: template argument deduction/substitution failed: d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath: In substitution of 'template constexpr typename __gnu_cxx::__enable_if::__value, double>::__type std::log2(_Tp) [with _Tp = double (*)(double, double)]': utils.h:1680:33: required from here d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2338:5: error: no type named '__type' in 'struct __gnu_cxx::__enable_if' d:\rtools44\x86_64-w64-mingw32.static.posix\include\math.h:768:25: note: candidate: 'double log2(double)' 768 | extern double __cdecl log2 (double); | ^~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\include\math.h:768:31: note: no known conversion for argument 1 from 'double(double, double)' to 'double' 768 | extern double __cdecl log2 (double); | ^~~~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2330:3: note: candidate: 'constexpr long double std::log2(long double)' 2330 | log2(long double __x) | ^~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2330:20: note: no known conversion for argument 1 from 'double(double, double)' to 'long double' 2330 | log2(long double __x) | ~~~~~~~~~~~~^~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2326:3: note: candidate: 'constexpr float std::log2(float)' 2326 | log2(float __x) | ^~~~ d:\rtools44\x86_64-w64-mingw32.static.posix\lib\gcc\x86_64-w64-mingw32.static.posix\13.3.0\include\c++\cmath:2326:14: note: no known conversion for argument 1 from 'double(double, double)' to 'float' 2326 | log2(float __x) | ~~~~~~^~~ make[1]: *** [D:/RCompile/recent/R/etc/x64/Makeconf:297: bct_rcpp.o] Error 1 make[1]: Leaving directory '/d/temp/2024_12_22_01_50_00_26287/Rtmpe4BxHZ/R.INSTALL267f850933ee0/BCT/src' ERROR: compilation failed for package 'BCT' * removing 'd:/Rcompile/CRANpkg/lib/4.5/BCT' * restoring previous 'd:/Rcompile/CRANpkg/lib/4.5/BCT'