ericgjackson / slumbot2019

Implementations of CFR for solving a variety of Holdem-like poker games
MIT License
133 stars 31 forks source link

head_to_head and play compile error #4

Closed kli-casia closed 5 years ago

kli-casia commented 5 years ago
$ make bin/head_to_head
gcc -std=c++17 -Wall -O3 -march=native -ffast-math -flto -c -o obj/head_to_head.o src/head_to_head.cpp
src/head_to_head.cpp: In member function ‘void Player::Nonterminal(Node*, Node*, const string&, const ReachProbs&)’:
src/head_to_head.cpp:456:38: error: cannot convert ‘std::shared_ptr<CFRValues>’ to ‘const CFRValues*’ in assignment
       sumprobs = b_eg_cfr_->Sumprobs();
                                      ^
src/head_to_head.cpp:468:38: error: cannot convert ‘std::shared_ptr<CFRValues>’ to ‘const CFRValues*’ in assignment
       sumprobs = a_eg_cfr_->Sumprobs();
                                      ^
make: *** [obj/head_to_head.o] Error 1
make bin/play
gcc -std=c++17 -Wall -O3 -march=native -ffast-math -flto -c -o obj/play.o src/play.cpp
src/play.cpp: In constructor ‘Player::Player(const BettingAbstraction&, const BettingAbstraction&, const CardAbstraction&, const CardAbstraction&, const CFRConfig&, const CFRConfig&, int, int)’:
src/play.cpp:503:78: error: no matching function for call to ‘CFRValues::Read(char [500], int&, const BettingTree*, const char [2], int, bool)’
   a_probs_->Read(dir, a_it, a_betting_trees_->GetBettingTree(), "x", -1, true);
                                                                              ^
In file included from src/play.cpp:41:0:
src/cfr_values.h:30:8: note: candidate: void CFRValues::Read(const char*, int, const BettingTree*, const string&, int, bool, bool)
   void Read(const char *dir, int it, const BettingTree *betting_tree,
        ^~~~
src/cfr_values.h:30:8: note:   candidate expects 7 arguments, 6 provided
src/cfr_values.h:67:8: note: candidate: void CFRValues::Read(Node*, Reader***, void***, int)
   void Read(Node *node, Reader ***readers, void ***decompressors, int p);
        ^~~~
src/cfr_values.h:67:8: note:   candidate expects 4 arguments, 6 provided
src/play.cpp:510:78: error: no matching function for call to ‘CFRValues::Read(char [500], int&, const BettingTree*, const char [2], int, bool)’
   b_probs_->Read(dir, b_it, b_betting_trees_->GetBettingTree(), "x", -1, true);
                                                                              ^
In file included from src/play.cpp:41:0:
src/cfr_values.h:30:8: note: candidate: void CFRValues::Read(const char*, int, const BettingTree*, const string&, int, bool, bool)
   void Read(const char *dir, int it, const BettingTree *betting_tree,
        ^~~~
src/cfr_values.h:30:8: note:   candidate expects 7 arguments, 6 provided
src/cfr_values.h:67:8: note: candidate: void CFRValues::Read(Node*, Reader***, void***, int)
   void Read(Node *node, Reader ***readers, void ***decompressors, int p);
        ^~~~
src/cfr_values.h:67:8: note:   candidate expects 4 arguments, 6 provided
make: *** [obj/play.o] Error 1
ericgjackson commented 5 years ago

Fixed, sorry.

On Thu, Jun 20, 2019 at 3:16 AM Kai Li notifications@github.com wrote:

$ make bin/head_to_head

gcc -std=c++17 -Wall -O3 -march=native -ffast-math -flto -c -o obj/head_to_head.o src/head_to_head.cpp

src/head_to_head.cpp: In member function ‘void Player::Nonterminal(Node, Node, const string&, const ReachProbs&)’:

src/head_to_head.cpp:456:38: error: cannot convert ‘std::shared_ptr’ to ‘const CFRValues*’ in assignment

   sumprobs = b_eg_cfr_->Sumprobs();

                                  ^

src/head_to_head.cpp:468:38: error: cannot convert ‘std::shared_ptr’ to ‘const CFRValues*’ in assignment

   sumprobs = a_eg_cfr_->Sumprobs();

                                  ^

make: *** [obj/head_to_head.o] Error 1

make bin/play

gcc -std=c++17 -Wall -O3 -march=native -ffast-math -flto -c -o obj/play.o src/play.cpp src/play.cpp: In constructor ‘Player::Player(const BettingAbstraction&, const BettingAbstraction&, const CardAbstraction&, const CardAbstraction&, const CFRConfig&, const CFRConfig&, int, int)’: src/play.cpp:503:78: error: no matching function for call to ‘CFRValues::Read(char [500], int&, const BettingTree, const char [2], int, bool)’ aprobs->Read(dir, a_it, a_bettingtrees->GetBettingTree(), "x", -1, true); ^ In file included from src/play.cpp:41:0: src/cfr_values.h:30:8: note: candidate: void CFRValues::Read(const char, int, const BettingTree*, const string&, int, bool, bool) void Read(const char

*dir, int it, const BettingTree betting_tree, ^~~~ src/cfr_values.h:30:8: note: candidate expects 7 arguments, 6 provided src/cfr_values.h:67:8: note: candidate: void CFRValues::Read(Node, Reader, void, int) void Read(Node *node, Reader *readers, void

decompressors, int p); ^~~~ src/cfr_values.h:67:8: note: candidate expects 4 arguments, 6 provided src/play.cpp:510:78: error: no matching function for call to ‘CFRValues::Read(char [500], int&, const BettingTree, const char [2], int, bool)’ bprobs->Read(

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/ericgjackson/slumbot2019/issues/4?email_source=notifications&email_token=ABUMRNK6NLEEFB52KCH67WDP3NKJNA5CNFSM4HZROIZ2YY3PNVWWK3TUL52HS4DFUVEXG43VMWVGG33NNVSW45C7NFSM4G2VGR2A, or mute the thread https://github.com/notifications/unsubscribe-auth/ABUMRNMTNKYTAF4VGNNNIQDP3NKJNANCNFSM4HZROIZQ .

kli-casia commented 5 years ago

Thanks