ReactOS 0.4.16-dev-1040-g85afe48
corecrt_malloc.h
Go to the documentation of this file.
1//
2// corecrt_malloc.h
3//
4// Copyright (c) Microsoft Corporation. All rights reserved.
5//
6// The memory allocation library. These pieces of the allocation library are
7// shared by both <stdlib.h> and <malloc.h>.
8//
9#pragma once
10
11#include <corecrt.h>
12
13#pragma warning(push)
14#pragma warning(disable: _UCRT_DISABLED_WARNINGS)
16
18
19
20
21#if defined _DEBUG && defined _CRTDBG_MAP_ALLOC
22 #pragma push_macro("_aligned_free")
23 #pragma push_macro("_aligned_malloc")
24 #pragma push_macro("_aligned_msize")
25 #pragma push_macro("_aligned_offset_malloc")
26 #pragma push_macro("_aligned_offset_realloc")
27 #pragma push_macro("_aligned_offset_recalloc")
28 #pragma push_macro("_aligned_realloc")
29 #pragma push_macro("_aligned_recalloc")
30 #pragma push_macro("_expand")
31 #pragma push_macro("_freea")
32 #pragma push_macro("_msize")
33 #pragma push_macro("_recalloc")
34 #pragma push_macro("calloc")
35 #pragma push_macro("free")
36 #pragma push_macro("malloc")
37 #pragma push_macro("realloc")
38
39 #undef _aligned_free
40 #undef _aligned_malloc
41 #undef _aligned_msize
42 #undef _aligned_offset_malloc
43 #undef _aligned_offset_realloc
44 #undef _aligned_offset_recalloc
45 #undef _aligned_realloc
46 #undef _aligned_recalloc
47 #undef _expand
48 #undef _freea
49 #undef _msize
50 #undef _recalloc
51 #undef calloc
52 #undef free
53 #undef malloc
54 #undef realloc
55#endif
56
59void* __cdecl _calloc_base(
60 _In_ size_t _Count,
61 _In_ size_t _Size
62 );
63
66void* __cdecl calloc(
69 );
70
73 _In_ size_t _Size
74 );
75
78void* __cdecl _expand(
79 _Pre_notnull_ void* _Block,
81 );
82
86 );
87
91 );
92
95void* __cdecl _malloc_base(
96 _In_ size_t _Size
97 );
98
101void* __cdecl malloc(
103 );
104
108 _Pre_notnull_ void* _Block
110
114 _Pre_notnull_ void* _Block
115 );
116
119void* __cdecl _realloc_base(
120 _Pre_maybenull_ _Post_invalid_ void* _Block,
121 _In_ size_t _Size
122 );
123
126void* __cdecl realloc(
127 _Pre_maybenull_ _Post_invalid_ void* _Block,
129 );
130
133void* __cdecl _recalloc_base(
134 _Pre_maybenull_ _Post_invalid_ void* _Block,
135 _In_ size_t _Count,
136 _In_ size_t _Size
137 );
138
141void* __cdecl _recalloc(
142 _Pre_maybenull_ _Post_invalid_ void* _Block,
145 );
146
150 );
151
157 );
158
163 _In_ size_t _Alignment,
165 );
166
170 _Pre_notnull_ void* _Block,
171 _In_ size_t _Alignment,
172 _In_ size_t _Offset
173 );
174
178 _Pre_maybenull_ _Post_invalid_ void* _Block,
180 _In_ size_t _Alignment,
181 _In_ size_t _Offset
182 );
183
186void* __cdecl _aligned_offset_recalloc(
187 _Pre_maybenull_ _Post_invalid_ void* _Block,
190 _In_ size_t _Alignment,
191 _In_ size_t _Offset
192 );
193
197 _Pre_maybenull_ _Post_invalid_ void* _Block,
199 _In_ size_t _Alignment
200 );
201
204void* __cdecl _aligned_recalloc(
205 _Pre_maybenull_ _Post_invalid_ void* _Block,
208 _In_ size_t _Alignment
209 );
210
211#if defined _DEBUG && defined _CRTDBG_MAP_ALLOC
212 #pragma pop_macro("realloc")
213 #pragma pop_macro("malloc")
214 #pragma pop_macro("free")
215 #pragma pop_macro("calloc")
216 #pragma pop_macro("_recalloc")
217 #pragma pop_macro("_msize")
218 #pragma pop_macro("_freea")
219 #pragma pop_macro("_expand")
220 #pragma pop_macro("_aligned_recalloc")
221 #pragma pop_macro("_aligned_realloc")
222 #pragma pop_macro("_aligned_offset_recalloc")
223 #pragma pop_macro("_aligned_offset_realloc")
224 #pragma pop_macro("_aligned_offset_malloc")
225 #pragma pop_macro("_aligned_msize")
226 #pragma pop_macro("_aligned_malloc")
227 #pragma pop_macro("_aligned_free")
228#endif
229
230
231
234#pragma warning(pop) // _UCRT_DISABLED_WARNINGS
#define __cdecl
Definition: accygwin.h:79
return
Definition: dirsup.c:529
_Check_return_ _ACRTIMP size_t __cdecl _msize_base(_Pre_notnull_ void *_Block) _CRT_NOEXCEPT
_Check_return_ _Ret_maybenull_ _In_ size_t _Alignment
_Check_return_ _Ret_maybenull_ _In_ size_t _In_ size_t _Offset
_ACRTIMP void __cdecl _aligned_free(_Pre_maybenull_ _Post_invalid_ void *_Block)
_In_ size_t _Count
_Check_return_ _ACRTIMP size_t __cdecl _aligned_msize(_Pre_notnull_ void *_Block, _In_ size_t _Alignment, _In_ size_t _Offset)
_UCRT_DISABLE_CLANG_WARNINGS _CRT_BEGIN_C_HEADER _Check_return_ _Ret_maybenull_ _In_ size_t _Size
_Check_return_ _ACRTIMP _CRT_HYBRIDPATCHABLE size_t __cdecl _msize(_Pre_notnull_ void *_Block)
_ACRTIMP void __cdecl _free_base(_Pre_maybenull_ _Post_invalid_ void *_Block)
_Check_return_ _ACRTIMP int __cdecl _callnewh(_In_ size_t _Size)
#define _CRTRESTRICT
Definition: corecrt.h:17
#define realloc
Definition: debug_ros.c:6
#define free
Definition: debug_ros.c:5
#define malloc
Definition: debug_ros.c:4
void * _expand(void *_ptr, size_t _size)
Definition: malloc.c:100
#define _Ret_maybenull_
Definition: no_sal2.h:328
#define _Success_(c)
Definition: no_sal2.h:84
#define _Pre_maybenull_
Definition: no_sal2.h:514
#define _Check_return_
Definition: no_sal2.h:60
#define _Post_writable_byte_size_(s)
Definition: no_sal2.h:542
#define _Pre_notnull_
Definition: no_sal2.h:516
#define _Post_invalid_
Definition: no_sal2.h:524
#define _In_
Definition: no_sal2.h:158
#define calloc
Definition: rosglue.h:14
void *CDECL _aligned_offset_malloc(size_t size, size_t alignment, size_t offset)
Definition: heap.c:581
void *CDECL _aligned_offset_realloc(void *memblock, size_t size, size_t alignment, size_t offset)
Definition: heap.c:633
void *CDECL _aligned_malloc(size_t size, size_t alignment)
Definition: heap.c:624
void *CDECL _aligned_realloc(void *memblock, size_t size, size_t alignment)
Definition: heap.c:748
#define _CRT_NOEXCEPT
Definition: corecrt.h:243
#define _ACRTIMP
Definition: corecrt.h:138
#define _CRTALLOCATOR
Definition: corecrt.h:167
#define _UCRT_DISABLE_CLANG_WARNINGS
Definition: corecrt.h:109
#define _UCRT_RESTORE_CLANG_WARNINGS
Definition: corecrt.h:117
#define _CRT_JIT_INTRINSIC
Definition: corecrt.h:175
#define _CRT_HYBRIDPATCHABLE
Definition: corecrt.h:188
#define _CRT_GUARDOVERFLOW
Definition: corecrt.h:182
#define _CRT_END_C_HEADER
Definition: vcruntime.h:42
#define _CRT_BEGIN_C_HEADER
Definition: vcruntime.h:40