Skip to content

CoinMP:CoinCbc.cpp:access private variable directly #22

@yingopq

Description

@yingopq

HI, when I 'make' reported error:

CoinCbc.cpp: In function 'int CbcSolveProblem(HCBC, PPROBLEM, POPTION, int)':
CoinCbc.cpp:936:39: error: 'bool CbcParameters::noPrinting_' is private within this context
  936 |                         parameterData.noPrinting_ = true;
      |                                       ^~~~~~~~~~~
/home/jenkins/Cbc/include/coin-or/CbcParameters.hpp:2054:8: note: declared private here
 2054 |   bool noPrinting_;
      |        ^~~~~~~~~~~
CoinCbc.cpp:936:39: note: field 'bool CbcParameters::noPrinting_' can be accessed via 'bool CbcParameters::noPrinting()'
  936 |                         parameterData.noPrinting_ = true;
      |                                       ^~~~~~~~~~~
      |                                       noPrinting()

Fix it with patch:

diff --git a/CoinMP/src/CoinCbc.cpp b/CoinMP/src/CoinCbc.cpp
index 48bf164..ec39822 100644
--- a/CoinMP/src/CoinCbc.cpp
+++ b/CoinMP/src/CoinCbc.cpp
@@ -933,7 +933,7 @@ int CbcSolveProblem(HCBC hCbc, PPROBLEM pProblem, POPTION pOption, int Method)
 #ifdef NEW_STYLE_CBCMAIN
                if (coinGetIntOption(pOption, COIN_INT_MIPUSECBCMAIN)) {
                        CbcSolverUsefulData parameterData;
-                       parameterData.noPrinting_ = true;
+                       parameterData.disablePrinting();
                        CbcMain0(*pCbc->cbc, parameterData);
                        CbcSetClpOptions(hCbc, pOption);
                        CbcSetCbcOptions(hCbc, pOption);

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions