jancarlsson / snarkfront

a C++ embedded domain specific language for zero knowledge proofs
MIT License
58 stars 12 forks source link

[make tests] compilation errors #7

Open illya13 opened 8 years ago

illya13 commented 8 years ago
g++ -c -O2 -g3 -std=c++11 -I. -I/usr/local/include -DUSE_ASM -DUSE_ADD_SPECIAL -DUSE_ASSERT test_proof.cpp -o test_proof.o
In file included from ./snarkfront/DSL_algo.hpp:10:0,
                 from snarkfront.hpp:18,
                 from test_proof.cpp:8:
/usr/local/include/cryptl/Digest.hpp: In instantiation of ‘typename T::DigType cryptl::digest(T, const std::vector<unsigned char>&) [with T = cryptl::SHA_256<unsigned int, unsigned int, unsigned char, cryptl::SHA_Functions<unsigned int, unsigned int, cryptl::BitwiseINT<unsigned int> > >; typename T::DigType = std::array<unsigned int, 8ul>]’:
test_proof.cpp:37:59:   required from here
/usr/local/include/cryptl/Digest.hpp:62:10: error: no matching function for call to ‘digest(cryptl::SHA_256<unsigned int, unsigned int, unsigned char, cryptl::SHA_Functions<unsigned int, unsigned int, cryptl::BitwiseINT<unsigned int> > >&, std::stringstream&, cryptl::digest(T, const std::vector<unsigned char>&) [with T = cryptl::SHA_256<unsigned int, unsigned int, unsigned char, cryptl::SHA_Functions<unsigned int, unsigned int, cryptl::BitwiseINT<unsigned int> > >; typename T::DigType = std::array<unsigned int, 8ul>]::__lambda59)’
         });
          ^
/usr/local/include/cryptl/Digest.hpp:62:10: note: candidates are:
/usr/local/include/cryptl/Digest.hpp:21:21: note: template<class T> typename T::DigType cryptl::digest(T, std::istream&, std::function<bool(typename T::WordType&, std::basic_istream<char>&)>)
 typename T::DigType digest(
                     ^
/usr/local/include/cryptl/Digest.hpp:21:21: note:   template argument deduction/substitution failed:
/usr/local/include/cryptl/Digest.hpp:62:10: note:   ‘cryptl::digest(T, const std::vector<unsigned char>&) [with T = cryptl::SHA_256<unsigned int, unsigned int, unsigned char, cryptl::SHA_Functions<unsigned int, unsigned int, cryptl::BitwiseINT<unsigned int> > >; typename T::DigType = std::array<unsigned int, 8ul>]::__lambda59’ is not derived from ‘std::function<bool(typename T::WordType&, std::basic_istream<char>&)>’
         });
          ^
/usr/local/include/cryptl/Digest.hpp:37:21: note: template<class T> typename T::DigType cryptl::digest(T, std::istream&)
 typename T::DigType digest(T hashAlgo, std::istream& is)
                     ^
/usr/local/include/cryptl/Digest.hpp:37:21: note:   template argument deduction/substitution failed:
/usr/local/include/cryptl/Digest.hpp:62:10: note:   candidate expects 2 arguments, 3 provided
         });
          ^
/usr/local/include/cryptl/Digest.hpp:49:21: note: template<class T> typename T::DigType cryptl::digest(T, const std::vector<unsigned char>&)
 typename T::DigType digest(T hashAlgo, const std::vector<std::uint8_t>& a)
                     ^
/usr/local/include/cryptl/Digest.hpp:49:21: note:   template argument deduction/substitution failed:
/usr/local/include/cryptl/Digest.hpp:62:10: note:   cannot convert ‘ss’ (type ‘std::stringstream {aka std::basic_stringstream<char>}’) to type ‘const std::vector<unsigned char>&’
         });
...