Files
odfstudio/external/coinmp
Stephan Bergmann 6bc9e31108 external/coinmp: Various UBSan issues
...as seen during CppunitTest_sc_solverobj,

> CglPreProcess.cpp:6432:21: runtime error: null pointer passed as argument 2, which is declared to never be null
> /usr/include/string.h:48:28: note: nonnull attribute specified here
>  #0 in CglPreProcess::addCutGenerator(CglCutGenerator*) at <null> (engine/instdir/program/libCgl.so.1 +0x2e858a)
>  #1 in CbcMain1(int, char const**, CbcModel&, int (*)(CbcModel*, int), CbcSolverUsefulData&) at <null> (engine/instdir/program/libCbcSolver.so.3 +0x1dd308)
>  #2 in CbcSolveProblem(void*, PROBLEMINFO*, OPTIONINFO*, int) at <null> (engine/instdir/program/libCoinMP.so.1 +0x2c880)
>  #3 in CbcOptimizeProblem at <null> (engine/instdir/program/libCoinMP.so.1 +0x2fdeb)
>  #4 in (anonymous namespace)::CoinMPSolver::solve() at engine/sc/source/solver/CoinMPSolver.cxx:325:23
>  #5 in ScSolverSettings::solve() at engine/sc/source/ui/unoobj/solveruno.cxx:902:14
>  #6 in sc_apitest::ScSolverSettingsObj::testXSolverSettings() at engine/sc/qa/extras/scsolverobj.cxx:121:19

and

> CbcModel.cpp:11504:39: runtime error: null pointer passed as argument 2, which is declared to never be null
> /usr/include/string.h:48:28: note: nonnull attribute specified here
>  #0 in CbcModel::findIntegers(bool, int) at <null> (engine/instdir/program/libCbc.so.3 +0x2e0857)
>  #1 in CbcMain1(int, char const**, CbcModel&, int (*)(CbcModel*, int), CbcSolverUsefulData&) at <null> (engine/instdir/program/libCbcSolver.so.3 +0x1dd7f3)
>  #2 in CbcSolveProblem(void*, PROBLEMINFO*, OPTIONINFO*, int) at <null> (engine/instdir/program/libCoinMP.so.1 +0x2c880)
>  #3 in CbcOptimizeProblem at <null> (engine/instdir/program/libCoinMP.so.1 +0x2fdeb)
>  #4 in (anonymous namespace)::CoinMPSolver::solve() at engine/sc/source/solver/CoinMPSolver.cxx:325:23
>  #5 in ScSolverSettings::solve() at engine/sc/source/ui/unoobj/solveruno.cxx:902:14
>  #6 in sc_apitest::ScSolverSettingsObj::testXSolverSettings() at engine/sc/qa/extras/scsolverobj.cxx:121:19

and

> CglPreProcess.cpp:1721:36: runtime error: 1.79769e+308 is outside the range of representable values of type 'int'
>  #0 in CglPreProcess::preProcessNonDefault(OsiSolverInterface&, int, int, int) at <null> (engine/instdir/program/libCgl.so.1 +0x2f71a6)
>  #1 in CbcMain1(int, char const**, CbcModel&, int (*)(CbcModel*, int), CbcSolverUsefulData&) at <null> (engine/instdir/program/libCbcSolver.so.3 +0x1e4777)
>  #2 in CbcSolveProblem(void*, PROBLEMINFO*, OPTIONINFO*, int) at <null> (engine/instdir/program/libCoinMP.so.1 +0x2c880)
>  #3 in CbcOptimizeProblem at <null> (engine/instdir/program/libCoinMP.so.1 +0x2fdeb)
>  #4 in (anonymous namespace)::CoinMPSolver::solve() at engine/sc/source/solver/CoinMPSolver.cxx:325:23
>  #5 in ScSolverSettings::solve() at engine/sc/source/ui/unoobj/solveruno.cxx:902:14
>  #6 in sc_apitest::ScSolverSettingsObj::testXSolverSettings() at engine/sc/qa/extras/scsolverobj.cxx:121:19

and

> CglPreProcess.cpp:1722:36: runtime error: -1.79769e+308 is outside the range of representable values of type 'int'
>  #0 in CglPreProcess::preProcessNonDefault(OsiSolverInterface&, int, int, int) at <null> (engine/instdir/program/libCgl.so.1 +0x2f71d1)
>  #1 in CbcMain1(int, char const**, CbcModel&, int (*)(CbcModel*, int), CbcSolverUsefulData&) at <null> (engine/instdir/program/libCbcSolver.so.3 +0x1e4777)
>  #2 in CbcSolveProblem(void*, PROBLEMINFO*, OPTIONINFO*, int) at <null> (engine/instdir/program/libCoinMP.so.1 +0x2c880)
>  #3 in CbcOptimizeProblem at <null> (engine/instdir/program/libCoinMP.so.1 +0x2fdeb)
>  #4 in (anonymous namespace)::CoinMPSolver::solve() at engine/sc/source/solver/CoinMPSolver.cxx:325:23
>  #5 in ScSolverSettings::solve() at engine/sc/source/ui/unoobj/solveruno.cxx:902:14
>  #6 in sc_apitest::ScSolverSettingsObj::testXSolverSettings() at engine/sc/qa/extras/scsolverobj.cxx:121:19

and

> CbcModel.cpp:7134:24: runtime error: null pointer passed as argument 2, which is declared to never be null
> /usr/include/string.h:48:28: note: nonnull attribute specified here
>  #0 in CbcModel::addHeuristic(CbcHeuristic*, char const*, int) at <null> (engine/instdir/program/libCbc.so.3 +0x3e315b)
>  #1 in doHeuristics(CbcModel*, int, CbcOrClpParam*, int, int, int) at <null> (engine/instdir/program/libCbcSolver.so.3 +0x2ac48e)
>  #2 in CbcMain1(int, char const**, CbcModel&, int (*)(CbcModel*, int), CbcSolverUsefulData&) at <null> (engine/instdir/program/libCbcSolver.so.3 +0x1d8334)
>  #3 in CbcSolveProblem(void*, PROBLEMINFO*, OPTIONINFO*, int) at <null> (engine/instdir/program/libCoinMP.so.1 +0x2c880)
>  #4 in CbcOptimizeProblem at <null> (engine/instdir/program/libCoinMP.so.1 +0x2fdeb)
>  #5 in (anonymous namespace)::CoinMPSolver::solve() at engine/sc/source/solver/CoinMPSolver.cxx:325:23
>  #6 in ScSolverSettings::solve() at engine/sc/source/ui/unoobj/solveruno.cxx:902:14
>  #7 in sc_apitest::ScSolverSettingsObj::testXSolverSettings() at engine/sc/qa/extras/scsolverobj.cxx:121:19

and

> CbcModel.cpp:7110:24: runtime error: null pointer passed as argument 2, which is declared to never be null
> /usr/include/string.h:48:28: note: nonnull attribute specified here
>  #0 in CbcModel::addCutGenerator(CglCutGenerator*, int, char const*, bool, bool, bool, int, int, int) at <null> (engine/instdir/program/libCbc.so.3 +0x349035)
>  #1 in CbcMain1(int, char const**, CbcModel&, int (*)(CbcModel*, int), CbcSolverUsefulData&) at <null> (engine/instdir/program/libCbcSolver.so.3 +0x1d8efb)
>  #2 in CbcSolveProblem(void*, PROBLEMINFO*, OPTIONINFO*, int) at <null> (engine/instdir/program/libCoinMP.so.1 +0x2c880)
>  #3 in CbcOptimizeProblem at <null> (engine/instdir/program/libCoinMP.so.1 +0x2fdeb)
>  #4 in (anonymous namespace)::CoinMPSolver::solve() at engine/sc/source/solver/CoinMPSolver.cxx:325:23
>  #5 in ScSolverSettings::solve() at engine/sc/source/ui/unoobj/solveruno.cxx:902:14
>  #6 in sc_apitest::ScSolverSettingsObj::testXSolverSettings() at engine/sc/qa/extras/scsolverobj.cxx:121:19

and

> CbcModel.cpp:7119:30: runtime error: null pointer passed as argument 2, which is declared to never be null
> /usr/include/string.h:48:28: note: nonnull attribute specified here
>  #0 in CbcModel::addCutGenerator(CglCutGenerator*, int, char const*, bool, bool, bool, int, int, int) at <null> (engine/instdir/program/libCbc.so.3 +0x34921e)
>  #1 in CbcMain1(int, char const**, CbcModel&, int (*)(CbcModel*, int), CbcSolverUsefulData&) at <null> (engine/instdir/program/libCbcSolver.so.3 +0x1d8efb)
>  #2 in CbcSolveProblem(void*, PROBLEMINFO*, OPTIONINFO*, int) at <null> (engine/instdir/program/libCoinMP.so.1 +0x2c880)
>  #3 in CbcOptimizeProblem at <null> (engine/instdir/program/libCoinMP.so.1 +0x2fdeb)
>  #4 in (anonymous namespace)::CoinMPSolver::solve() at engine/sc/source/solver/CoinMPSolver.cxx:325:23
>  #5 in ScSolverSettings::solve() at engine/sc/source/ui/unoobj/solveruno.cxx:902:14
>  #6 in sc_apitest::ScSolverSettingsObj::testXSolverSettings() at engine/sc/qa/extras/scsolverobj.cxx:121:19

and

> CglKnapsackCover.cpp:3908:36: runtime error: -1.79769e+308 is outside the range of representable values of type 'int'
>  #0 in CglKnapsackCover::createCliques(OsiSolverInterface&, int, int, bool) at <null> (engine/instdir/program/libCgl.so.1 +0x1af0ab)
>  #1 in CbcCutGenerator::CbcCutGenerator(CbcModel*, CglCutGenerator*, int, char const*, bool, bool, bool, int, int, int, int) at <null> (engine/instdir/program/libCbc.so.3 +0x7fb17)
>  #2 in CbcModel::addCutGenerator(CglCutGenerator*, int, char const*, bool, bool, bool, int, int, int) at <null> (engine/instdir/program/libCbc.so.3 +0x348ace)
>  #3 in CbcMain1(int, char const**, CbcModel&, int (*)(CbcModel*, int), CbcSolverUsefulData&) at <null> (engine/instdir/program/libCbcSolver.so.3 +0x1d9c2d)
>  #4 in CbcSolveProblem(void*, PROBLEMINFO*, OPTIONINFO*, int) at <null> (engine/instdir/program/libCoinMP.so.1 +0x2c880)
>  #5 in CbcOptimizeProblem at <null> (engine/instdir/program/libCoinMP.so.1 +0x2fdeb)
>  #6 in (anonymous namespace)::CoinMPSolver::solve() at engine/sc/source/solver/CoinMPSolver.cxx:325:23
>  #7 in ScSolverSettings::solve() at engine/sc/source/ui/unoobj/solveruno.cxx:902:14
>  #8 in sc_apitest::ScSolverSettingsObj::testXSolverSettings() at engine/sc/qa/extras/scsolverobj.cxx:121:19

and

> CbcModel.cpp:9355:93: runtime error: division by zero
>  #0 in CbcModel::solveWithCuts(OsiCuts&, int, CbcNode*) at <null> (engine/instdir/program/libCbc.so.3 +0x371e89)
>  #1 in CbcModel::branchAndBound(int) at <null> (engine/instdir/program/libCbc.so.3 +0x33f172)
>  #2 in CbcHeuristic::smallBranchAndBound(OsiSolverInterface*, int, double*, double&, double, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>) const at <null> (engine/instdir/program/libCbc.so.3 +0x10643e)
>  #3 in CbcHeuristicFPump::solution(double&, double*) at <null> (engine/instdir/program/libCbc.so.3 +0x1a25ed)
>  #4 in CbcModel::doHeuristicsAtRoot(int) at <null> (engine/instdir/program/libCbc.so.3 +0x34fd61)
>  #5 in CbcModel::branchAndBound(int) at <null> (engine/instdir/program/libCbc.so.3 +0x306fec)
>  #6 in CbcMain1(int, char const**, CbcModel&, int (*)(CbcModel*, int), CbcSolverUsefulData&) at <null> (engine/instdir/program/libCbcSolver.so.3 +0x215c37)
>  #7 in CbcSolveProblem(void*, PROBLEMINFO*, OPTIONINFO*, int) at <null> (engine/instdir/program/libCoinMP.so.1 +0x2c880)
>  #8 in CbcOptimizeProblem at <null> (engine/instdir/program/libCoinMP.so.1 +0x2fdeb)
>  #9 in (anonymous namespace)::CoinMPSolver::solve() at engine/sc/source/solver/CoinMPSolver.cxx:325:23
>  #10 in ScSolverSettings::solve() at engine/sc/source/ui/unoobj/solveruno.cxx:902:14
>  #11 in sc_apitest::ScSolverSettingsObj::testXSolverSettings() at engine/sc/qa/extras/scsolverobj.cxx:121:19

and

> CbcModel.cpp:9332:49: runtime error: division by zero
>  #0 in CbcModel::solveWithCuts(OsiCuts&, int, CbcNode*) at <null> (engine/instdir/program/libCbc.so.3 +0x3760c7)
>  #1 in CbcModel::branchAndBound(int) at <null> (engine/instdir/program/libCbc.so.3 +0x33f172)
>  #2 in CbcHeuristic::smallBranchAndBound(OsiSolverInterface*, int, double*, double&, double, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>) const at <null> (engine/instdir/program/libCbc.so.3 +0x10643e)
>  #3 in CbcHeuristicFPump::solution(double&, double*) at <null> (engine/instdir/program/libCbc.so.3 +0x1a25ed)
>  #4 in CbcModel::doHeuristicsAtRoot(int) at <null> (engine/instdir/program/libCbc.so.3 +0x34fd61)
>  #5 in CbcModel::branchAndBound(int) at <null> (engine/instdir/program/libCbc.so.3 +0x306fec)
>  #6 in CbcMain1(int, char const**, CbcModel&, int (*)(CbcModel*, int), CbcSolverUsefulData&) at <null> (engine/instdir/program/libCbcSolver.so.3 +0x215c37)
>  #7 in CbcSolveProblem(void*, PROBLEMINFO*, OPTIONINFO*, int) at <null> (engine/instdir/program/libCoinMP.so.1 +0x2c880)
>  #8 in CbcOptimizeProblem at <null> (engine/instdir/program/libCoinMP.so.1 +0x2fdeb)
>  #9 in (anonymous namespace)::CoinMPSolver::solve() at engine/sc/source/solver/CoinMPSolver.cxx:325:23
>  #10 in ScSolverSettings::solve() at engine/sc/source/ui/unoobj/solveruno.cxx:902:14
>  #11 in sc_apitest::ScSolverSettingsObj::testXSolverSettings() at engine/sc/qa/extras/scsolverobj.cxx:121:19

and

> ClpSimplex.cpp:2560:34: runtime error: applying non-zero offset 120 to null pointer
>  #0 in ClpSimplex::gutsOfCopy(ClpSimplex const&) at <null> (engine/instdir/program/libClp.so.1 +0x6ab776)
>  #1 in ClpSimplex::ClpSimplex(ClpSimplex const&, int) at <null> (engine/instdir/program/libClp.so.1 +0x6a912b)
>  #2 in ClpPresolve::gutsOfPresolvedModel(ClpSimplex*, double, bool, int, bool, bool, char const*, char const*) at <null> (engine/instdir/program/libClp.so.1 +0x59c16c)
>  #3 in OsiClpSolverInterface::initialSolve() at <null> (engine/instdir/program/libOsiClp.so.1 +0xa53f)
>  #4 in CglPreProcess::postProcess(OsiSolverInterface&, bool) at <null> (engine/instdir/program/libCgl.so.1 +0x3600f1)
>  #5 in CbcHeuristic::smallBranchAndBound(OsiSolverInterface*, int, double*, double&, double, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>) const at <null> (engine/instdir/program/libCbc.so.3 +0x107ac1)
>  #6 in CbcHeuristicFPump::solution(double&, double*) at <null> (engine/instdir/program/libCbc.so.3 +0x1a25ed)
>  #7 in CbcModel::doHeuristicsAtRoot(int) at <null> (engine/instdir/program/libCbc.so.3 +0x34fd61)
>  #8 in CbcModel::branchAndBound(int) at <null> (engine/instdir/program/libCbc.so.3 +0x306fec)
>  #9 in CbcMain1(int, char const**, CbcModel&, int (*)(CbcModel*, int), CbcSolverUsefulData&) at <null> (engine/instdir/program/libCbcSolver.so.3 +0x215c37)
>  #10 in CbcSolveProblem(void*, PROBLEMINFO*, OPTIONINFO*, int) at <null> (engine/instdir/program/libCoinMP.so.1 +0x2c880)
>  #11 in CbcOptimizeProblem at <null> (engine/instdir/program/libCoinMP.so.1 +0x2fdeb)
>  #12 in (anonymous namespace)::CoinMPSolver::solve() at engine/sc/source/solver/CoinMPSolver.cxx:325:23
>  #13 in ScSolverSettings::solve() at engine/sc/source/ui/unoobj/solveruno.cxx:902:14
>  #14 in sc_apitest::ScSolverSettingsObj::testXSolverSettings() at engine/sc/qa/extras/scsolverobj.cxx:121:19

and

> ClpSimplex.cpp:2563:34: runtime error: applying non-zero offset 120 to null pointer
>  #0 in ClpSimplex::gutsOfCopy(ClpSimplex const&) at <null> (engine/instdir/program/libClp.so.1 +0x6ab771)
>  #1 in ClpSimplex::ClpSimplex(ClpSimplex const&, int) at <null> (engine/instdir/program/libClp.so.1 +0x6a912b)
>  #2 in ClpPresolve::gutsOfPresolvedModel(ClpSimplex*, double, bool, int, bool, bool, char const*, char const*) at <null> (engine/instdir/program/libClp.so.1 +0x59c16c)
>  #3 in OsiClpSolverInterface::initialSolve() at <null> (engine/instdir/program/libOsiClp.so.1 +0xa53f)
>  #4 in CglPreProcess::postProcess(OsiSolverInterface&, bool) at <null> (engine/instdir/program/libCgl.so.1 +0x3600f1)
>  #5 in CbcHeuristic::smallBranchAndBound(OsiSolverInterface*, int, double*, double&, double, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>) const at <null> (engine/instdir/program/libCbc.so.3 +0x107ac1)
>  #6 in CbcHeuristicFPump::solution(double&, double*) at <null> (engine/instdir/program/libCbc.so.3 +0x1a25ed)
>  #7 in CbcModel::doHeuristicsAtRoot(int) at <null> (engine/instdir/program/libCbc.so.3 +0x34fd61)
>  #8 in CbcModel::branchAndBound(int) at <null> (engine/instdir/program/libCbc.so.3 +0x306fec)
>  #9 in CbcMain1(int, char const**, CbcModel&, int (*)(CbcModel*, int), CbcSolverUsefulData&) at <null> (engine/instdir/program/libCbcSolver.so.3 +0x215c37)
>  #10 in CbcSolveProblem(void*, PROBLEMINFO*, OPTIONINFO*, int) at <null> (engine/instdir/program/libCoinMP.so.1 +0x2c880)
>  #11 in CbcOptimizeProblem at <null> (engine/instdir/program/libCoinMP.so.1 +0x2fdeb)
>  #12 in (anonymous namespace)::CoinMPSolver::solve() at engine/sc/source/solver/CoinMPSolver.cxx:325:23
>  #13 in ScSolverSettings::solve() at engine/sc/source/ui/unoobj/solveruno.cxx:902:14
>  #14 in sc_apitest::ScSolverSettingsObj::testXSolverSettings() at engine/sc/qa/extras/scsolverobj.cxx:121:19

and

> ClpSimplex.cpp:2567:37: runtime error: applying non-zero offset 120 to null pointer
>  #0 in ClpSimplex::gutsOfCopy(ClpSimplex const&) at <null> (engine/instdir/program/libClp.so.1 +0x6ab751)
>  #1 in ClpSimplex::ClpSimplex(ClpSimplex const&, int) at <null> (engine/instdir/program/libClp.so.1 +0x6a912b)
>  #2 in ClpPresolve::gutsOfPresolvedModel(ClpSimplex*, double, bool, int, bool, bool, char const*, char const*) at <null> (engine/instdir/program/libClp.so.1 +0x59c16c)
>  #3 in OsiClpSolverInterface::initialSolve() at <null> (engine/instdir/program/libOsiClp.so.1 +0xa53f)
>  #4 in CglPreProcess::postProcess(OsiSolverInterface&, bool) at <null> (engine/instdir/program/libCgl.so.1 +0x3600f1)
>  #5 in CbcHeuristic::smallBranchAndBound(OsiSolverInterface*, int, double*, double&, double, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>) const at <null> (engine/instdir/program/libCbc.so.3 +0x107ac1)
>  #6 in CbcHeuristicFPump::solution(double&, double*) at <null> (engine/instdir/program/libCbc.so.3 +0x1a25ed)
>  #7 in CbcModel::doHeuristicsAtRoot(int) at <null> (engine/instdir/program/libCbc.so.3 +0x34fd61)
>  #8 in CbcModel::branchAndBound(int) at <null> (engine/instdir/program/libCbc.so.3 +0x306fec)
>  #9 in CbcMain1(int, char const**, CbcModel&, int (*)(CbcModel*, int), CbcSolverUsefulData&) at <null> (engine/instdir/program/libCbcSolver.so.3 +0x215c37)
>  #10 in CbcSolveProblem(void*, PROBLEMINFO*, OPTIONINFO*, int) at <null> (engine/instdir/program/libCoinMP.so.1 +0x2c880)
>  #11 in CbcOptimizeProblem at <null> (engine/instdir/program/libCoinMP.so.1 +0x2fdeb)
>  #12 in (anonymous namespace)::CoinMPSolver::solve() at engine/sc/source/solver/CoinMPSolver.cxx:325:23
>  #13 in ScSolverSettings::solve() at engine/sc/source/ui/unoobj/solveruno.cxx:902:14
>  #14 in sc_apitest::ScSolverSettingsObj::testXSolverSettings() at engine/sc/qa/extras/scsolverobj.cxx:121:19

and

> CglCliqueHelper.cpp:296:53: runtime error: division by zero
>  #0 in CglClique::createFractionalGraph() at <null> (engine/instdir/program/libCgl.so.1 +0x81b36)
>  #1 in CglClique::generateCuts(OsiSolverInterface const&, OsiCuts&, CglTreeInfo) at <null> (engine/instdir/program/libCgl.so.1 +0x60a26)
>  #2 in CglFakeClique::generateCuts(OsiSolverInterface const&, OsiCuts&, CglTreeInfo) at <null> (engine/instdir/program/libCgl.so.1 +0x72e73)
>  #3 in CbcCutGenerator::generateCuts(OsiCuts&, int, OsiSolverInterface*, CbcNode*) at <null> (engine/instdir/program/libCbc.so.3 +0x8281c)
>  #4 in CbcModel::serialCuts(OsiCuts&, CbcNode*, OsiCuts&, int) at <null> (engine/instdir/program/libCbc.so.3 +0x3f37a6)
>  #5 in CbcModel::solveWithCuts(OsiCuts&, int, CbcNode*) at <null> (engine/instdir/program/libCbc.so.3 +0x35d618)
>  #6 in CbcModel::branchAndBound(int) at <null> (engine/instdir/program/libCbc.so.3 +0x33f172)
>  #7 in CbcMain1(int, char const**, CbcModel&, int (*)(CbcModel*, int), CbcSolverUsefulData&) at <null> (engine/instdir/program/libCbcSolver.so.3 +0x215c37)
>  #8 in CbcSolveProblem(void*, PROBLEMINFO*, OPTIONINFO*, int) at <null> (engine/instdir/program/libCoinMP.so.1 +0x2c880)
>  #9 in CbcOptimizeProblem at <null> (engine/instdir/program/libCoinMP.so.1 +0x2fdeb)
>  #10 in (anonymous namespace)::CoinMPSolver::solve() at engine/sc/source/solver/CoinMPSolver.cxx:325:23
>  #11 in ScSolverSettings::solve() at engine/sc/source/ui/unoobj/solveruno.cxx:902:14
>  #12 in sc_apitest::ScSolverSettingsObj::testXSolverSettings() at engine/sc/qa/extras/scsolverobj.cxx:121:19

and

> CglTwomir.cpp:1782:14: runtime error: division by zero
>  #0 in DGG_add2stepToList(DGG_constraint_t*, char*, double*, double*, DGG_list_t*, DGG_data_t*, DGG_constraint_t*) at <null> (engine/instdir/program/libCgl.so.1 +0x5c63ed)
>  #1 in DGG_generateCutsFromBase(DGG_constraint_t*, DGG_list_t*, DGG_data_t*, void const*) at <null> (engine/instdir/program/libCgl.so.1 +0x5c227e)
>  #2 in DGG_generateTabRowCuts(DGG_list_t*, DGG_data_t*, void const*) at <null> (engine/instdir/program/libCgl.so.1 +0x5aa163)
>  #3 in CglTwomir::generateCuts(OsiSolverInterface const&, OsiCuts&, CglTreeInfo) at <null> (engine/instdir/program/libCgl.so.1 +0x59c4bd)
>  #4 in CbcCutGenerator::generateCuts(OsiCuts&, int, OsiSolverInterface*, CbcNode*) at <null> (engine/instdir/program/libCbc.so.3 +0x8281c)
>  #5 in CbcModel::serialCuts(OsiCuts&, CbcNode*, OsiCuts&, int) at <null> (engine/instdir/program/libCbc.so.3 +0x3f3896)
>  #6 in CbcModel::solveWithCuts(OsiCuts&, int, CbcNode*) at <null> (engine/instdir/program/libCbc.so.3 +0x35d61b)
>  #7 in CbcModel::branchAndBound(int) at <null> (engine/instdir/program/libCbc.so.3 +0x33f172)
>  #8 in CbcMain1(int, char const**, CbcModel&, int (*)(CbcModel*, int), CbcSolverUsefulData&) at <null> (engine/instdir/program/libCbcSolver.so.3 +0x215c37)
>  #9 in CbcSolveProblem(void*, PROBLEMINFO*, OPTIONINFO*, int) at <null> (engine/instdir/program/libCoinMP.so.1 +0x2c880)
>  #10 in CbcOptimizeProblem at <null> (engine/instdir/program/libCoinMP.so.1 +0x2fdeb)
>  #11 in (anonymous namespace)::CoinMPSolver::solve() at engine/sc/source/solver/CoinMPSolver.cxx:325:23
>  #12 in ScSolverSettings::solve() at engine/sc/source/ui/unoobj/solveruno.cxx:902:14
>  #13 in sc_apitest::ScSolverSettingsObj::testXSolverSettings() at engine/sc/qa/extras/scsolverobj.cxx:121:19

and

> CglGomory.cpp:1317:30: runtime error: 3.84447e+09 is outside the range of representable values of type 'int'
>  #0 in CglGomory::generateCuts(OsiRowCutDebugger const*, OsiCuts&, CoinPackedMatrix const&, CoinPackedMatrix const&, double const*, double const*, double const*, double const*, double const*, char const*, CoinWarmStartBasis const*, CglTreeInfo) at <null> (engine/instdir/program/libCgl.so.1 +0x142933)
>  #1 in CglGomory::generateCuts(OsiSolverInterface const&, OsiCuts&, CglTreeInfo) at <null> (engine/instdir/program/libCgl.so.1 +0x1342e8)
>  #2 in CbcCutGenerator::generateCuts(OsiCuts&, int, OsiSolverInterface*, CbcNode*) at <null> (engine/instdir/program/libCbc.so.3 +0x8281c)
>  #3 in CbcModel::serialCuts(OsiCuts&, CbcNode*, OsiCuts&, int) at <null> (engine/instdir/program/libCbc.so.3 +0x3f3896)
>  #4 in CbcModel::solveWithCuts(OsiCuts&, int, CbcNode*) at <null> (engine/instdir/program/libCbc.so.3 +0x35d61b)
>  #5 in CbcModel::branchAndBound(int) at <null> (engine/instdir/program/libCbc.so.3 +0x33f172)
>  #6 in CbcMain1(int, char const**, CbcModel&, int (*)(CbcModel*, int), CbcSolverUsefulData&) at <null> (engine/instdir/program/libCbcSolver.so.3 +0x215c37)
>  #7 in CbcSolveProblem(void*, PROBLEMINFO*, OPTIONINFO*, int) at <null> (engine/instdir/program/libCoinMP.so.1 +0x2c880)
>  #8 in CbcOptimizeProblem at <null> (engine/instdir/program/libCoinMP.so.1 +0x2fdeb)
>  #9 in (anonymous namespace)::CoinMPSolver::solve() at engine/sc/source/solver/CoinMPSolver.cxx:325:23
>  #10 in ScSolverSettings::solve() at engine/sc/source/ui/unoobj/solveruno.cxx:902:14
>  #11 in sc_apitest::ScSolverSettingsObj::testXSolverSettings() at engine/sc/qa/extras/scsolverobj.cxx:121:19

Signed-off-by: Stephan Bergmann <stephan.bergmann@collabora.com>
Change-Id: I8baaad0d3214da27cc85f76e267d4783dfae81e5
Reviewed-on: https://gerrit.collaboraoffice.com/c/online/+/4150
Tested-by: Jenkins CPCI <releng@collaboraoffice.com>
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
(cherry picked from commit 85b26ba51a219795938c82288e38518d7f9aec5e)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/206638
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2026-06-16 09:13:29 +02:00
..
2025-07-28 20:28:54 +02:00
…
…
…

CoinMP is a C-API library that supports most of the functionality of CLP (Coin LP),
CBC (Coin Branch-and-Cut), and CGL (Cut Generation Library) projects.

Info [https://projects.coin-or.org/CoinMP].
From [http://www.coin-or.org/download/source/CoinMP/].