#ifndef CRYPTOPP_STDCPP_H #define CRYPTOPP_STDCPP_H #if _MSC_VER >= 1500 #define _DO_NOT_DECLARE_INTERLOCKED_INTRINSICS_IN_MEMORY #include #endif #include #include #include #include #include // http://marshall.calepin.co/c-and-xcode-46.html. Apple does some wonky stuff with // , auto_ptr and unique_ptr. Apple's built-in Clang behaves // differently than a LLVM downloaded and compiled CLang. So we fall back to Clang's // __has_include (http://clang.llvm.org/docs/LanguageExtensions.html#id3). #if (__cplusplus >= 201103L) && !defined(__clang__) # include #elif defined(__clang__) # if (__has_include()) # include # endif #elif (__cplusplus < 201103L) # include #else # include #endif #include #include #include #include #include #include #include #ifdef CRYPTOPP_INCLUDE_VECTOR_CC // workaround needed on Sun Studio 12u1 Sun C++ 5.10 SunOS_i386 128229-02 2009/09/21 #include #endif // for alloca // #ifdef __sun // #include // #elif defined(__MINGW32__) || defined(__BORLANDC__) // #include // #endif // Nearly everyone gets alloca from . #ifndef CRYPTOPP_UNIX_AVAILABLE # include #endif // Windows includes alloca in . #if defined(CRYPTOPP_UNIX_AVAILABLE) || defined(__MINGW32__) || defined(__BORLANDC__) # include #endif #ifdef _MSC_VER #pragma warning(disable: 4231) // re-disable this #ifdef _CRTAPI1 #define CRYPTOPP_MSVCRT6 #endif #endif #endif