COIN-OR::LEMON - Graph Library

Ticket #209: ticket209_67d4e07336d7.patch

File ticket209_67d4e07336d7.patch, 3.4 KB (added by Tapolcai János, 15 years ago)
  • lemon/lp_base.h

    # HG changeset patch
    # User "Janos Tapolcai <tapolcai@tmit.bme.hu>"
    # Date 1232732441 -3600
    # Node ID 67d4e07336d77842843bdbed2a3d2f7c534c2610
    # Parent  939d0f436ebe9e8c5f1d5468b004b6f1ab34c1f7
    bugfix on ticket 209
    
    diff --git a/lemon/lp_base.h b/lemon/lp_base.h
    a b  
    13911391    template<class T>
    13921392    void colUpperBound(T &t, Value value) { return 0;}
    13931393#else
    1394     template<class T>
    1395     typename enable_if<typename T::value_type::LpCol,void>::type
    1396     colUpperBound(T &t, Value value,dummy<0> = 0) {
    1397       for(typename T::iterator i=t.begin();i!=t.end();++i) {
     1394    template<class T1>
     1395    typename enable_if<typename T1::value_type::LpCol,void>::type
     1396    colUpperBound(T1 &t, Value value,dummy<0> = 0) {
     1397      for(typename T1::iterator i=t.begin();i!=t.end();++i) {
    13981398        colUpperBound(*i, value);
    13991399      }
    14001400    }
    1401     template<class T>
    1402     typename enable_if<typename T::value_type::second_type::LpCol,
     1401    template<class T1>
     1402    typename enable_if<typename T1::value_type::second_type::LpCol,
    14031403                       void>::type
    1404     colUpperBound(T &t, Value value,dummy<1> = 1) {
    1405       for(typename T::iterator i=t.begin();i!=t.end();++i) {
     1404    colUpperBound(T1 &t, Value value,dummy<1> = 1) {
     1405      for(typename T1::iterator i=t.begin();i!=t.end();++i) {
    14061406        colUpperBound(i->second, value);
    14071407      }
    14081408    }
    1409     template<class T>
    1410     typename enable_if<typename T::MapIt::Value::LpCol,
     1409    template<class T1>
     1410    typename enable_if<typename T1::MapIt::Value::LpCol,
    14111411                       void>::type
    1412     colUpperBound(T &t, Value value,dummy<2> = 2) {
    1413       for(typename T::MapIt i(t); i!=INVALID; ++i){
     1412    colUpperBound(T1 &t, Value value,dummy<2> = 2) {
     1413      for(typename T1::MapIt i(t); i!=INVALID; ++i){
    14141414        colUpperBound(*i, value);
    14151415      }
    14161416    }
     
    14401440    template<class T>
    14411441    void colBounds(T &t, Value lower, Value upper) { return 0;}
    14421442#else
    1443     template<class T>
    1444     typename enable_if<typename T::value_type::LpCol,void>::type
    1445     colBounds(T &t, Value lower, Value upper,dummy<0> = 0) {
    1446       for(typename T::iterator i=t.begin();i!=t.end();++i) {
     1443    template<class T2>
     1444    typename enable_if<typename T2::value_type::LpCol,void>::type
     1445    colBounds(T2 &t, Value lower, Value upper,dummy<0> = 0) {
     1446      for(typename T2::iterator i=t.begin();i!=t.end();++i) {
    14471447        colBounds(*i, lower, upper);
    14481448      }
    14491449    }
    1450     template<class T>
    1451     typename enable_if<typename T::value_type::second_type::LpCol, void>::type
    1452     colBounds(T &t, Value lower, Value upper,dummy<1> = 1) {
    1453       for(typename T::iterator i=t.begin();i!=t.end();++i) {
     1450    template<class T2>
     1451    typename enable_if<typename T2::value_type::second_type::LpCol, void>::type
     1452    colBounds(T2 &t, Value lower, Value upper,dummy<1> = 1) {
     1453      for(typename T2::iterator i=t.begin();i!=t.end();++i) {
    14541454        colBounds(i->second, lower, upper);
    14551455      }
    14561456    }
    1457     template<class T>
    1458     typename enable_if<typename T::MapIt::Value::LpCol, void>::type
    1459     colBounds(T &t, Value lower, Value upper,dummy<2> = 2) {
    1460       for(typename T::MapIt i(t); i!=INVALID; ++i){
     1457    template<class T2>
     1458    typename enable_if<typename T2::MapIt::Value::LpCol, void>::type
     1459    colBounds(T2 &t, Value lower, Value upper,dummy<2> = 2) {
     1460      for(typename T2::MapIt i(t); i!=INVALID; ++i){
    14611461        colBounds(*i, lower, upper);
    14621462      }
    14631463    }