[Cbc] Compile Cbc with COIN_BIG_INDEX=2

ycollette.nospam at free.fr ycollette.nospam at free.fr
Mon Jan 23 04:38:01 EST 2017


Hello,

I tried to compile Cbc with COIN_BIG_INDEX=2 and I meet a lot of compilation errors.
It looks like CoinBigIndex is not correctly used everywhere ...
Here are some error messages (the first ones):

/home/artelys/repository/coin/Cbc/CoinUtils/src/CoinOslFactorization.cpp: Dans la fonction membre « virtual void CoinOslFactorization::getAreas(int, int, CoinBigIndex, CoinBigIndex) »:
/home/artelys/repository/coin/Cbc/CoinUtils/src/CoinOslFactorization.cpp:162:44: erreur : no matching function for call to « CoinMax(CoinBigIndex&, int&) »
   factInfo_.eta_size=CoinMax(size,oldnnetas);
                                            ^
In file included from /home/artelys/repository/coin/Cbc/CoinUtils/src/CoinIndexedVector.hpp:20:0,
                 from /home/artelys/repository/coin/Cbc/CoinUtils/src/CoinOslFactorization.hpp:18,
                 from /home/artelys/repository/coin/Cbc/CoinUtils/src/CoinOslFactorization.cpp:10:
/home/artelys/repository/coin/Cbc/CoinUtils/src/CoinHelperFunctions.hpp:548:1: note : candidate: template<class T> T CoinMax(T, T)
 CoinMax(register const T x1, register const T x2)
 ^~~~~~~
/home/artelys/repository/coin/Cbc/CoinUtils/src/CoinHelperFunctions.hpp:548:1: note :   template argument deduction/substitution failed:
/home/artelys/repository/coin/Cbc/CoinUtils/src/CoinOslFactorization.cpp:162:44: note :   deduced conflicting types for parameter « T » (« long long int » and « int »)
   factInfo_.eta_size=CoinMax(size,oldnnetas);
                                            ^
/home/artelys/repository/coin/Cbc/CoinUtils/src/CoinOslFactorization.cpp: Dans la fonction membre « virtual void CoinOslFactorization::preProcess() »:
/home/artelys/repository/coin/Cbc/CoinUtils/src/CoinOslFactorization.cpp:224:48: erreur : cannot convert « int* » to « CoinBigIndex* {aka long long int*} » in initialization
   CoinBigIndex * startColumnU=factInfo_.xcsadr+1;
                                                ^
/home/artelys/repository/coin/Cbc/CoinUtils/src/CoinOslFactorization.cpp: Dans la fonction membre « int CoinOslFactorization::factorize(const CoinPackedMatrix&, int*, int*, double) »:
/home/artelys/repository/coin/Cbc/CoinUtils/src/CoinOslFactorization.cpp:1434:29: erreur : cannot convert « CoinBigIndex* {aka long long int*} » to « int* » in initialization
   int * startColumnU=starts();


Best regards,

YC



More information about the Cbc mailing list