2003-07-04 00:17:37 +00:00
|
|
|
#ifndef CRYPTOPP_STDCPP_H
|
|
|
|
#define CRYPTOPP_STDCPP_H
|
|
|
|
|
2010-07-24 05:35:54 +00:00
|
|
|
#if _MSC_VER >= 1500
|
|
|
|
#define _DO_NOT_DECLARE_INTERLOCKED_INTRINSICS_IN_MEMORY
|
|
|
|
#include <intrin.h>
|
|
|
|
#endif
|
|
|
|
|
2003-07-04 00:17:37 +00:00
|
|
|
#include <stddef.h>
|
|
|
|
#include <limits.h>
|
2010-06-18 07:06:59 +00:00
|
|
|
#include <stdlib.h>
|
|
|
|
#include <string.h>
|
2015-07-27 20:01:55 +00:00
|
|
|
|
2015-07-29 17:37:52 +00:00
|
|
|
// http://marshall.calepin.co/c-and-xcode-46.html.
|
|
|
|
// This include is needed so we can pickup _LIBCPP_VERSION, if needed.
|
|
|
|
#if defined(__APPLE__)
|
|
|
|
# include <ciso646>
|
2015-07-27 20:01:55 +00:00
|
|
|
#endif
|
|
|
|
|
|
|
|
#include <map>
|
|
|
|
#include <vector>
|
2003-07-04 00:17:37 +00:00
|
|
|
#include <string>
|
2015-07-27 20:18:43 +00:00
|
|
|
#include <limits>
|
2015-07-29 17:37:52 +00:00
|
|
|
#include <memory>
|
2003-07-04 00:17:37 +00:00
|
|
|
#include <exception>
|
|
|
|
#include <typeinfo>
|
|
|
|
#include <algorithm>
|
2015-07-27 20:01:55 +00:00
|
|
|
#include <functional>
|
2015-07-14 02:53:16 +00:00
|
|
|
|
2015-07-31 05:14:31 +00:00
|
|
|
// Rvalue references and std::move
|
|
|
|
#if (__cplusplus >= 201103L) || (_MSC_VER >= 1600)
|
2015-07-31 04:31:16 +00:00
|
|
|
# include <utility>
|
|
|
|
#endif
|
|
|
|
|
2010-08-08 08:13:09 +00:00
|
|
|
#ifdef CRYPTOPP_INCLUDE_VECTOR_CC
|
2010-07-05 01:15:14 +00:00
|
|
|
// workaround needed on Sun Studio 12u1 Sun C++ 5.10 SunOS_i386 128229-02 2009/09/21
|
|
|
|
#include <vector.cc>
|
|
|
|
#endif
|
|
|
|
|
2015-07-27 23:43:43 +00:00
|
|
|
// Handle alloca...
|
2015-07-27 20:15:46 +00:00
|
|
|
#if defined(CRYPTOPP_WIN32_AVAILABLE) || defined(__MINGW32__) || defined(__BORLANDC__)
|
2015-07-27 23:43:43 +00:00
|
|
|
# include <malloc.h>
|
2015-07-28 22:18:56 +00:00
|
|
|
#elif defined(CRYPTOPP_BSD_AVAILABLE)
|
|
|
|
# include <stdlib.h>
|
|
|
|
#else // CRYPTOPP_UNIX_AVAILABLE
|
|
|
|
# include <alloca.h>
|
2003-07-04 00:17:37 +00:00
|
|
|
#endif
|
|
|
|
|
2010-06-18 07:06:59 +00:00
|
|
|
#ifdef _MSC_VER
|
|
|
|
#pragma warning(disable: 4231) // re-disable this
|
|
|
|
#ifdef _CRTAPI1
|
2003-07-04 00:17:37 +00:00
|
|
|
#define CRYPTOPP_MSVCRT6
|
|
|
|
#endif
|
2010-06-18 07:06:59 +00:00
|
|
|
#endif
|
2003-07-04 00:17:37 +00:00
|
|
|
|
|
|
|
#endif
|