Crypto++
5.6.5
Free C++ class library of cryptographic schemes
stdcpp.h
1
#ifndef CRYPTOPP_STDCPP_H
2
#define CRYPTOPP_STDCPP_H
3
4
#if _MSC_VER >= 1500
5
#define _DO_NOT_DECLARE_INTERLOCKED_INTRINSICS_IN_MEMORY
6
#include <intrin.h>
7
#endif
8
9
#include <string>
10
#include <memory>
11
#include <exception>
12
#include <typeinfo>
13
#include <algorithm>
14
#include <functional>
15
#include <utility>
16
#include <vector>
17
#include <limits>
18
#include <deque>
19
#include <list>
20
#include <map>
21
#include <new>
22
23
// http://connect.microsoft.com/VisualStudio/feedback/details/1600701/type-info-does-not-compile-with-has-exceptions-0
24
#if defined(_MSC_VER) && (_MSC_VER < 1900) && defined(_HAS_EXCEPTIONS) && (_HAS_EXCEPTIONS == 0)
25
namespace
std
{
26
using ::type_info;
27
}
28
#endif
29
30
// make_unchecked_array_iterator
31
#if _MSC_VER >= 1600
32
#include <iterator>
33
#endif
34
35
#if defined(CRYPTOPP_CXX11_ATOMICS)
36
#include <atomic>
37
#endif
38
39
#if defined(CRYPTOPP_CXX11_SYNCHRONIZATION)
40
#include <mutex>
41
#endif
42
43
#if defined(CRYPTOPP_CXX11_RVALUES)
44
# include <utility>
45
#endif
46
47
#include <cstdlib>
48
#include <cstddef>
49
#include <cstring>
50
#include <climits>
51
52
// uintptr_t and ptrdiff_t
53
#if (__cplusplus < 201103L) && (!defined(_MSC_VER) || (_MSC_VER >= 1700))
54
# include <stdint.h>
55
#elif defined(_MSC_VER) && (_MSC_VER < 1700)
56
# include <stddef.h>
57
#endif
58
59
// workaround needed on Sun Studio 12u1 Sun C++ 5.10 SunOS_i386 128229-02 2009/09/21
60
#ifdef CRYPTOPP_INCLUDE_VECTOR_CC
61
# include <vector.cc>
62
#endif
63
64
// for alloca
65
#if defined(CRYPTOPP_BSD_AVAILABLE)
66
# include <stdlib.h>
67
#elif defined(CRYPTOPP_UNIX_AVAILABLE) || defined(__sun) || defined(QNX)
68
# include <alloca.h>
69
#elif defined(CRYPTOPP_WIN32_AVAILABLE) || defined(__MINGW32__) || defined(__BORLANDC__)
70
# include <malloc.h>
71
#endif
72
73
#ifdef _MSC_VER
74
# pragma warning(disable: 4231) // re-disable this
75
# ifdef _CRTAPI1
76
# define CRYPTOPP_MSVCRT6
77
# endif
78
#endif
79
80
#endif
std
STL namespace.
Generated on Tue Feb 20 2018 14:25:15 for Crypto++ by
1.8.13