Using Microsoft Visual Studio .NET 2005, I get compile error with cryplib
5.1 and 5.2 when compiling Debug mode. Release mode works fine. Any ideas?
zinflate.cpp
C:\Program Files\Microsoft Visual Studio 8\VC\include\xutility(292) : error
C2664: 'bool CryptoPP::CodeLessThan::operator ()(const
CryptoPP::HuffmanDecoder::code_t,const CryptoPP::HuffmanDecoder::CodeInfo
&)' : cannot convert parameter 1 from 'const
CryptoPP::HuffmanDecoder::CodeInfo' to 'const
CryptoPP::HuffmanDecoder::code_t'
No user-defined-conversion operator available that can perform this
conversion, or the operator cannot be called
C:\Program Files\Microsoft Visual Studio
8\VC\include\algorithm(2099) : see reference to function template
instantiation 'bool std::_Debug_lt_pred<_Pr,_Ty,T>(_Pr,const _Ty1 &,const
_Ty2 &,const wchar_t *,unsigned int)' being compiled
with
[
_Pr=CryptoPP::CodeLessThan,
_Ty=CryptoPP::HuffmanDecoder::code_t,
T=CryptoPP::HuffmanDecoder::CodeInfo,
_Ty1=CryptoPP::HuffmanDecoder::code_t,
_Ty2=CryptoPP::HuffmanDecoder::CodeInfo
]
C:\Program Files\Microsoft Visual Studio
8\VC\include\algorithm(2113) : see reference to function template
instantiation '_FwdIt
std::_Upper_bound<std::_Vector_const_iterator<_Ty,_Alloc>,unsigned int,__w64
int,_Pr>(_FwdIt,_FwdIt,const unsigned int &,_Pr,_Diff *)' being compiled
with
[
_FwdIt=std::_Vector_const_iterator<CryptoPP::HuffmanDecoder::CodeInfo,Crypto
PP::AllocatorWithCleanup<CryptoPP::HuffmanDecoder::CodeInfo>>,
_Ty=CryptoPP::HuffmanDecoder::CodeInfo,
_Alloc=CryptoPP::AllocatorWithCleanup<CryptoPP::HuffmanDecoder::CodeInfo>,
_Pr=CryptoPP::CodeLessThan,
_Diff=__w64 int
]
.\zinflate.cpp(148) : see reference to function template
instantiation '_FwdIt
std::upper_bound<std::_Vector_const_iterator<_Ty,_Alloc>,CryptoPP::HuffmanDe
coder::code_t,CryptoPP::CodeLessThan>(_FwdIt,_FwdIt,const unsigned int
&,_Pr)' being compiled
with
[
_FwdIt=std::_Vector_const_iterator<CryptoPP::HuffmanDecoder::CodeInfo,Crypto
PP::AllocatorWithCleanup<CryptoPP::HuffmanDecoder::CodeInfo>>,
_Ty=CryptoPP::HuffmanDecoder::CodeInfo,
_Alloc=CryptoPP::AllocatorWithCleanup<CryptoPP::HuffmanDecoder::CodeInfo>,
_Pr=CryptoPP::CodeLessThan
]
zdeflate.cpp
C:\Program Files\Microsoft Visual Studio 8\VC\include\xutility(2519) :
warning C4996: 'std::_Mismatch' was declared deprecated
C:\Program Files\Microsoft Visual Studio 8\VC\include\xutility(2503)
: see declaration of 'std::_Mismatch'
Message: 'You have used a std:: construct that is not safe. See
documentation on how to use the Safe Standard C++ Library'
.\zdeflate.cpp(384) : see reference to function template
instantiation 'std::pair<_Ty1,_Ty2> std::mismatch<const byte*,const
byte*>(_InIt1,_InIt1,_InIt2)' being compiled
with
[
_Ty1=const byte *,
_Ty2=const byte *,
_InIt1=const byte *,
_InIt2=const byte *
]
C:\Program Files\Microsoft Visual Studio 8\VC\include\xutility(303) : error
C2664: 'bool CryptoPP::FreqLessThan::operator ()(const CryptoPP::HuffmanNode
&,const CryptoPP::HuffmanNode &) const' : cannot convert parameter 2 from
'const int' to 'const CryptoPP::HuffmanNode &'
Reason: cannot convert from 'const int' to 'const
CryptoPP::HuffmanNode'
No constructor could take the source type, or constructor overload
resolution was ambiguous
C:\Program Files\Microsoft Visual Studio
8\VC\include\algorithm(2099) : see reference to function template
instantiation 'bool std::_Debug_lt_pred<_Pr,_Ty,T>(_Pr,const _Ty1 &,_Ty2
&,const wchar_t *,unsigned int)' being compiled
with
[
_Pr=CryptoPP::FreqLessThan,
_Ty=int,
T=CryptoPP::HuffmanNode,
_Ty1=int,
_Ty2=CryptoPP::HuffmanNode
]
C:\Program Files\Microsoft Visual Studio
8\VC\include\algorithm(2113) : see reference to function template
instantiation '_FwdIt
std::_Upper_bound<CryptoPP::HuffmanNode*,_Ty,std::iterator_traits<_Iter>::di
fference_type,_Pr>(_FwdIt,_FwdIt,const _Ty &,_Pr,_Diff *)' being compiled
with
[
_FwdIt=CryptoPP::HuffmanNode *,
_Ty=int,
_Iter=CryptoPP::HuffmanNode *,
_Pr=CryptoPP::FreqLessThan,
_Diff=std::iterator_traits<CryptoPP::HuffmanNode
*>::difference_type
]
.\zdeflate.cpp(115) : see reference to function template
instantiation '_FwdIt
std::upper_bound<CryptoPP::HuffmanNode*,int,CryptoPP::FreqLessThan>(_FwdIt,_
FwdIt,const _Ty &,_Pr)' being compiled
with
[
_FwdIt=CryptoPP::HuffmanNode *,
_Ty=int,
_Pr=CryptoPP::FreqLessThan
]