STLdoc
STLdocumentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
corecrt.h
Go to the documentation of this file.
1 //
2 // corecrt.h
3 //
4 // Copyright (c) Microsoft Corporation. All rights reserved.
5 //
6 // Declarations used throughout the CoreCRT library.
7 //
8 #pragma once
9 
10 #include <vcruntime.h>
11 
13 
14 
15 
16 //-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
17 //
18 // Annotation Macros
19 //
20 //-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
21 #ifndef _ACRTIMP
22  #if defined _CRTIMP && !defined _VCRT_DEFINED_CRTIMP
23  #define _ACRTIMP _CRTIMP
24  #elif !defined _CORECRT_BUILD && defined _DLL
25  #define _ACRTIMP __declspec(dllimport)
26  #else
27  #define _ACRTIMP
28  #endif
29 #endif
30 
31 // If you need the ability to remove __declspec(import) from an API, to support static replacement,
32 // declare the API using _ACRTIMP_ALT instead of _ACRTIMP.
33 #ifndef _ACRTIMP_ALT
34  #define _ACRTIMP_ALT _ACRTIMP
35 #endif
36 
37 #ifndef _DCRTIMP
38  #if defined _CRTIMP && !defined _VCRT_DEFINED_CRTIMP
39  #define _DCRTIMP _CRTIMP
40  #elif !defined _CORECRT_BUILD && defined _DLL
41  #define _DCRTIMP __declspec(dllimport)
42  #else
43  #define _DCRTIMP
44  #endif
45 #endif
46 
47 #if defined _CRT_SUPPRESS_RESTRICT || defined _CORECRT_BUILD
48  #define _CRTRESTRICT
49 #else
50  #define _CRTRESTRICT __declspec(restrict)
51 #endif
52 
53 #if defined _MSC_VER && _MSC_VER >= 1900 && !defined _CORECRT_BUILD
54  #define _CRTALLOCATOR __declspec(allocator)
55 #else
56  #define _CRTALLOCATOR
57 #endif
58 
59 #if defined _M_CEE && defined _M_X64
60  // This is only needed when managed code is calling the native APIs,
61  // targeting the 64-bit runtime.
62  #define _CRT_JIT_INTRINSIC __declspec(jitintrinsic)
63 #else
64  #define _CRT_JIT_INTRINSIC
65 #endif
66 
67 // __declspec(guard(overflow)) enabled by /sdl compiler switch for CRT allocators
68 #ifdef _GUARDOVERFLOW_CRT_ALLOCATORS
69  #define _CRT_GUARDOVERFLOW __declspec(guard(overflow))
70 #else
71  #define _CRT_GUARDOVERFLOW
72 #endif
73 
74 #ifndef _CONST_RETURN
75  #ifdef __cplusplus
76  #define _CONST_RETURN const
77  #define _CRT_CONST_CORRECT_OVERLOADS
78  #else
79  #define _CONST_RETURN
80  #endif
81 #endif
82 
83 #define _WConst_return _CONST_RETURN // For backwards compatibility
84 
85 #ifndef _CRT_ALIGN
86  #ifdef __midl
87  #define _CRT_ALIGN(x)
88  #else
89  #define _CRT_ALIGN(x) __declspec(align(x))
90  #endif
91 #endif
92 
93 #if defined _PREFAST_ && defined _CA_SHOULD_CHECK_RETURN
94  #define _Check_return_opt_ _Check_return_
95 #else
96  #define _Check_return_opt_
97 #endif
98 
99 #if defined _PREFAST_ && defined _CA_SHOULD_CHECK_RETURN_WER
100  #define _Check_return_wat_ _Check_return_
101 #else
102  #define _Check_return_wat_
103 #endif
104 
105 #if !defined __midl && !defined MIDL_PASS && defined _PREFAST_
106  #define __crt_typefix(ctype) __declspec("SAL_typefix(" _CRT_STRINGIZE(ctype) ")")
107 #else
108  #define __crt_typefix(ctype)
109 #endif
110 
111 
112 
113 //-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
114 //
115 // Miscellaneous Stuff
116 //
117 //-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
118 #ifdef __cplusplus
119 extern "C++"
120 {
121  template<bool _Enable, typename _Ty>
122  struct _CrtEnableIf;
123 
124  template<typename _Ty>
125  struct _CrtEnableIf<true, _Ty>
126  {
127  typedef _Ty _Type;
128  };
129 }
130 #endif
131 
132 #if defined __cplusplus
133  typedef bool __crt_bool;
134 #elif defined __midl
135  // MIDL understands neither bool nor _Bool. Use char as a best-fit
136  // replacement (the differences won't matter in practice).
137  typedef char __crt_bool;
138 #else
139  typedef _Bool __crt_bool;
140 #endif
141 
142 #define _ARGMAX 100
143 #define _TRUNCATE ((size_t)-1)
144 #define _CRT_INT_MAX 2147483647
145 #define _CRT_SIZE_MAX ((size_t)-1)
146 
147 #define __FILEW__ _CRT_WIDE(__FILE__)
148 #define __FUNCTIONW__ _CRT_WIDE(__FUNCTION__)
149 
150 #ifndef _STATIC_ASSERT
151  #define _STATIC_ASSERT(expr) typedef char __static_assert_t[(expr) != 0]
152 #endif
153 
154 #ifndef NULL
155  #ifdef __cplusplus
156  #define NULL 0
157  #else
158  #define NULL ((void *)0)
159  #endif
160 #endif
161 
162 // CRT headers are included into some kinds of source files where only data type
163 // definitions and macro definitions are required but function declarations and
164 // inline function definitions are not. These files include assembly files, IDL
165 // files, and resource files. The tools that process these files often have a
166 // limited ability to process C and C++ code. The _CRT_FUNCTIONS_REQUIRED macro
167 // is defined to 1 when we are compiling a file that actually needs functions to
168 // be declared (and defined, where applicable), and to 0 when we are compiling a
169 // file that does not. This allows us to suppress declarations and definitions
170 // that are not compilable with the aforementioned tools.
171 #if !defined _CRT_FUNCTIONS_REQUIRED
172  #if defined __assembler || defined __midl || defined RC_INVOKED
173  #define _CRT_FUNCTIONS_REQUIRED 0
174  #else
175  #define _CRT_FUNCTIONS_REQUIRED 1
176  #endif
177 #endif
178 
179 #if !defined _NO_INLINING && !_CRT_FUNCTIONS_REQUIRED
180  #define _NO_INLINING // Suppress <tchar.h> inlines
181 #endif
182 
183 #ifndef _CRT_UNUSED
184  #define _CRT_UNUSED(x) (void)x
185 #endif
186 
187 
188 
189 //-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
190 //
191 // Windows API Partitioning and ARM Desktop Support
192 //
193 //-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
194 #ifndef _CRT_USE_WINAPI_FAMILY_DESKTOP_APP
195  #ifdef WINAPI_FAMILY
196  #include <winapifamily.h>
197  #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP | WINAPI_PARTITION_SYSTEM)
198  #define _CRT_USE_WINAPI_FAMILY_DESKTOP_APP
199  #else
200  #ifdef WINAPI_FAMILY_PHONE_APP
201  #if WINAPI_FAMILY == WINAPI_FAMILY_PHONE_APP
202  #define _CRT_USE_WINAPI_FAMILY_PHONE_APP
203  #endif
204  #endif
205  #endif
206  #else
207  #define _CRT_USE_WINAPI_FAMILY_DESKTOP_APP
208  #endif
209 #endif
210 
211 #ifndef _ARM_WINAPI_PARTITION_DESKTOP_SDK_AVAILABLE
212  #define _ARM_WINAPI_PARTITION_DESKTOP_SDK_AVAILABLE 0
213 #endif
214 
215 #ifndef _CRT_BUILD_DESKTOP_APP
216  #ifdef _CRT_USE_WINAPI_FAMILY_DESKTOP_APP
217  #define _CRT_BUILD_DESKTOP_APP 1
218  #else
219  #define _CRT_BUILD_DESKTOP_APP 0
220  #endif
221 #endif
222 
223 // Verify that the ARM Desktop SDK is available when building an ARM Desktop app
224 #ifdef _M_ARM
225  #if _CRT_BUILD_DESKTOP_APP && !_ARM_WINAPI_PARTITION_DESKTOP_SDK_AVAILABLE
226  #error Compiling Desktop applications for the ARM platform is not supported.
227  #endif
228 #endif
229 
230 
231 
232 //-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
233 //
234 // Invalid Parameter Handler
235 //
236 //-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
237 #ifdef _DEBUG
238  _ACRTIMP void __cdecl _invalid_parameter(
239  _In_opt_z_ wchar_t const*,
240  _In_opt_z_ wchar_t const*,
241  _In_opt_z_ wchar_t const*,
242  _In_ unsigned int,
244  );
245 #endif
246 
247 _ACRTIMP_ALT void __cdecl _invalid_parameter_noinfo(void);
248 _ACRTIMP __declspec(noreturn) void __cdecl _invalid_parameter_noinfo_noreturn(void);
249 
250 __declspec(noreturn)
251 _ACRTIMP void __cdecl _invoke_watson(
252  _In_opt_z_ wchar_t const* _Expression,
253  _In_opt_z_ wchar_t const* _FunctionName,
254  _In_opt_z_ wchar_t const* _FileName,
255  _In_ unsigned int _LineNo,
257 
258 #ifndef _CRT_SECURE_INVALID_PARAMETER
259  #ifdef _DEBUG
260  #define _CRT_SECURE_INVALID_PARAMETER(expr) \
261  ::_invalid_parameter(_CRT_WIDE(#expr), __FUNCTIONW__, __FILEW__, __LINE__, 0)
262  #else
263  // By default, _CRT_SECURE_INVALID_PARAMETER in retail invokes
264  // _invalid_parameter_noinfo_noreturn(), which is marked
265  // __declspec(noreturn) and does not return control to the application.
266  // Even if _set_invalid_parameter_handler() is used to set a new invalid
267  // parameter handler which does return control to the application,
268  // _invalid_parameter_noinfo_noreturn() will terminate the application
269  // and invoke Watson. You can overwrite the definition of
270  // _CRT_SECURE_INVALID_PARAMETER if you need.
271  //
272  // _CRT_SECURE_INVALID_PARAMETER is used in the Standard C++ Libraries
273  // and the SafeInt library.
274  #define _CRT_SECURE_INVALID_PARAMETER(expr) \
275  ::_invalid_parameter_noinfo_noreturn()
276  #endif
277 #endif
278 
279 
280 
281 //-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
282 //
283 // Deprecation
284 //
285 //-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
286 #define _CRT_INTERNAL_NONSTDC_NAMES \
287  ( \
288  ( defined _CRT_DECLARE_NONSTDC_NAMES && _CRT_DECLARE_NONSTDC_NAMES) || \
289  (!defined _CRT_DECLARE_NONSTDC_NAMES && !__STDC__ ) \
290  )
291 
292 #if defined _CRT_NONSTDC_NO_DEPRECATE && !defined _CRT_NONSTDC_NO_WARNINGS
293  #define _CRT_NONSTDC_NO_WARNINGS
294 #endif
295 
296 #ifndef _CRT_NONSTDC_DEPRECATE
297  #ifdef _CRT_NONSTDC_NO_WARNINGS
298  #define _CRT_NONSTDC_DEPRECATE(_NewName)
299  #else
300  #define _CRT_NONSTDC_DEPRECATE(_NewName) _CRT_DEPRECATE_TEXT( \
301  "The POSIX name for this item is deprecated. Instead, use the ISO C " \
302  "and C++ conformant name: " #_NewName ". See online help for details.")
303  #endif
304 #endif
305 
306 
307 
308 //-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
309 //
310 // Managed CRT Support
311 //
312 //-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
313 #ifndef _PGLOBAL
314  #ifdef _M_CEE
315  #ifdef __cplusplus_cli
316  #define _PGLOBAL __declspec(process)
317  #else
318  #define _PGLOBAL
319  #endif
320  #else
321  #define _PGLOBAL
322  #endif
323 #endif
324 
325 #ifndef _AGLOBAL
326  #ifdef _M_CEE
327  #define _AGLOBAL __declspec(appdomain)
328  #else
329  #define _AGLOBAL
330  #endif
331 #endif
332 
333 #if defined _M_CEE && !defined _M_CEE_PURE
334  #define _M_CEE_MIXED
335 #endif
336 
337 
338 
339 //-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
340 //
341 // SecureCRT Configuration
342 //
343 //-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
344 #if defined _CRTBLD || defined _CORECRT_BUILD || defined _VCRT_BUILD
345  // Disable C++ overloads internally:
346  #define _CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES 0
347  #define _CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_COUNT 0
348  #define _CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES 0
349 #endif
350 
351 #if !_CRT_FUNCTIONS_REQUIRED
352  // If we don't require function declarations at all, we need not define the
353  // overloads (MIDL and RC do not need the C++ overloads).
354  #undef _CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES
355  #undef _CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_COUNT
356  #undef _CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES
357  #undef _CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_MEMORY
358  #undef _CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES_MEMORY
359 
360  #define _CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES 0
361  #define _CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_COUNT 0
362  #define _CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES 0
363  #define _CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_MEMORY 0
364  #define _CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES_MEMORY 0
365 #endif
366 
367 #define __STDC_SECURE_LIB__ 200411L
368 #define __GOT_SECURE_LIB__ __STDC_SECURE_LIB__ // For backwards compatibility
369 
370 #ifndef __STDC_WANT_SECURE_LIB__
371  #define __STDC_WANT_SECURE_LIB__ 1
372 #endif
373 
374 #if !__STDC_WANT_SECURE_LIB__ && !defined _CRT_SECURE_NO_WARNINGS
375  #define _CRT_SECURE_NO_WARNINGS
376 #endif
377 
378 #ifndef RC_INVOKED
379  #if defined _CRT_SECURE_NO_DEPRECATE_GLOBALS && !defined _CRT_SECURE_NO_WARNINGS_GLOBALS
380  #define _CRT_SECURE_NO_WARNINGS_GLOBALS
381  #endif
382 #endif
383 
384 #ifndef _CRT_INSECURE_DEPRECATE_GLOBALS
385  #ifdef RC_INVOKED
386  #define _CRT_INSECURE_DEPRECATE_GLOBALS(replacement)
387  #else
388  #ifdef _CRT_SECURE_NO_WARNINGS_GLOBALS
389  #define _CRT_INSECURE_DEPRECATE_GLOBALS(replacement)
390  #else
391  #define _CRT_INSECURE_DEPRECATE_GLOBALS(replacement) _CRT_INSECURE_DEPRECATE(replacement)
392  #endif
393  #endif
394 #endif
395 
396 #if defined _CRT_MANAGED_HEAP_NO_DEPRECATE && !defined _CRT_MANAGED_HEAP_NO_WARNINGS
397  #define _CRT_MANAGED_HEAP_NO_WARNINGS
398 #endif
399 
400 #define _SECURECRT_FILL_BUFFER_PATTERN 0xFE
401 
402 #if defined _CRT_OBSOLETE_NO_DEPRECATE && !defined _CRT_OBSOLETE_NO_WARNINGS
403  #define _CRT_OBSOLETE_NO_WARNINGS
404 #endif
405 
406 #ifndef _CRT_OBSOLETE
407  #ifdef _CRT_OBSOLETE_NO_WARNINGS
408  #define _CRT_OBSOLETE(_NewItem)
409  #else
410  #define _CRT_OBSOLETE(_NewItem) _CRT_DEPRECATE_TEXT( \
411  "This function or variable has been superceded by newer library " \
412  "or operating system functionality. Consider using " #_NewItem " " \
413  "instead. See online help for details.")
414  #endif
415 #endif
416 
417 #ifndef RC_INVOKED
418  #ifndef _CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES
419  #define _CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES 0
420  #else
421  #if !__STDC_WANT_SECURE_LIB__ && _CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES
422  #error Cannot use Secure CRT C++ overloads when __STDC_WANT_SECURE_LIB__ is 0
423  #endif
424  #endif
425 
426  #ifndef _CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_COUNT
427  // _CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_COUNT is ignored if
428  // _CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES is set to 0
429  #define _CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_COUNT 0
430  #else
431  #if !__STDC_WANT_SECURE_LIB__ && _CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_COUNT
432  #error Cannot use Secure CRT C++ overloads when __STDC_WANT_SECURE_LIB__ is 0
433  #endif
434  #endif
435 
436  #ifndef _CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES
437  #if __STDC_WANT_SECURE_LIB__
438  #define _CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES 1
439  #else
440  #define _CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES 0
441  #endif
442  #else
443  #if !__STDC_WANT_SECURE_LIB__ && _CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES
444  #error Cannot use Secure CRT C++ overloads when __STDC_WANT_SECURE_LIB__ is 0
445  #endif
446  #endif
447 
448  #ifndef _CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_MEMORY
449  #define _CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_MEMORY 0
450  #else
451  #if !__STDC_WANT_SECURE_LIB__ && _CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_MEMORY
452  #error Cannot use Secure CRT C++ overloads when __STDC_WANT_SECURE_LIB__ is 0
453  #endif
454  #endif
455 
456  #ifndef _CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES_MEMORY
457  #define _CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES_MEMORY 0
458  #else
459  #if !__STDC_WANT_SECURE_LIB__ && _CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES_MEMORY
460  #error Cannot use Secure CRT C++ overloads when __STDC_WANT_SECURE_LIB__ is 0
461  #endif
462  #endif
463 #endif
464 
465 #ifndef _CRT_SECURE_CPP_NOTHROW
466  #define _CRT_SECURE_CPP_NOTHROW throw()
467 #endif
468 
469 
470 
471 //-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
472 //
473 // Basic Types
474 //
475 //-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
476 typedef int errno_t;
477 typedef unsigned short wint_t;
478 typedef unsigned short wctype_t;
479 typedef long __time32_t;
480 typedef __int64 __time64_t;
481 
483 {
484  unsigned short const* _locale_pctype;
485  _Field_range_(1, 2) int _locale_mb_cur_max;
486  unsigned int _locale_lc_codepage;
488 
489 typedef struct __crt_locale_pointers
490 {
491  struct __crt_locale_data* locinfo;
492  struct __crt_multibyte_data* mbcinfo;
494 
496 
497 typedef struct _Mbstatet
498 { // state of a multibyte translation
499  unsigned long _Wchar;
500  unsigned short _Byte, _State;
501 } _Mbstatet;
502 
504 
505 #if defined _USE_32BIT_TIME_T && defined _WIN64
506  #error You cannot use 32-bit time_t (_USE_32BIT_TIME_T) with _WIN64
507 #endif
508 
509 #if defined _VCRT_BUILD || defined _CORECRT_BUILD
510  #define _CRT_NO_TIME_T
511 #endif
512 
513 #ifndef _CRT_NO_TIME_T
514  #ifdef _USE_32BIT_TIME_T
515  typedef __time32_t time_t;
516  #else
517  typedef __time64_t time_t;
518  #endif
519 #endif
520 
521 // Indicate that these common types are defined
522 #ifndef _TIME_T_DEFINED
523  #define _TIME_T_DEFINED
524 #endif
525 
526 #if __STDC_WANT_SECURE_LIB__
527  typedef size_t rsize_t;
528 #endif
529 
530 
531 
532 
533 //-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
534 //
535 // C++ Secure Overload Generation Macros
536 //
537 //-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
538 #ifndef RC_INVOKED
539  #if defined __cplusplus && _CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES
540 
541  #define __DEFINE_CPP_OVERLOAD_SECURE_FUNC_0_0(_ReturnType, _FuncName, _DstType, _Dst) \
542  extern "C++" \
543  { \
544  template <size_t _Size> \
545  inline \
546  _ReturnType __CRTDECL _FuncName(_DstType (&_Dst)[_Size]) _CRT_SECURE_CPP_NOTHROW \
547  { \
548  return _FuncName(_Dst, _Size); \
549  } \
550  }
551 
552  #define __DEFINE_CPP_OVERLOAD_SECURE_FUNC_0_1(_ReturnType, _FuncName, _DstType, _Dst, _TType1, _TArg1) \
553  extern "C++" \
554  { \
555  template <size_t _Size> \
556  inline \
557  _ReturnType __CRTDECL _FuncName(_DstType (&_Dst)[_Size], _TType1 _TArg1) _CRT_SECURE_CPP_NOTHROW \
558  { \
559  return _FuncName(_Dst, _Size, _TArg1); \
560  } \
561  }
562 
563  #define __DEFINE_CPP_OVERLOAD_SECURE_FUNC_0_2(_ReturnType, _FuncName, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2) \
564  extern "C++" \
565  { \
566  template <size_t _Size> \
567  inline \
568  _ReturnType __CRTDECL _FuncName(_DstType (&_Dst)[_Size], _TType1 _TArg1, _TType2 _TArg2) _CRT_SECURE_CPP_NOTHROW \
569  { \
570  return _FuncName(_Dst, _Size, _TArg1, _TArg2); \
571  } \
572  }
573 
574  #define __DEFINE_CPP_OVERLOAD_SECURE_FUNC_0_3(_ReturnType, _FuncName, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2, _TType3, _TArg3) \
575  extern "C++" \
576  { \
577  template <size_t _Size> \
578  inline \
579  _ReturnType __CRTDECL _FuncName(_DstType (&_Dst)[_Size], _TType1 _TArg1, _TType2 _TArg2, _TType3 _TArg3) _CRT_SECURE_CPP_NOTHROW \
580  { \
581  return _FuncName(_Dst, _Size, _TArg1, _TArg2, _TArg3); \
582  } \
583  }
584 
585  #define __DEFINE_CPP_OVERLOAD_SECURE_FUNC_0_4(_ReturnType, _FuncName, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2, _TType3, _TArg3, _TType4, _TArg4) \
586  extern "C++" \
587  { \
588  template <size_t _Size> \
589  inline \
590  _ReturnType __CRTDECL _FuncName(_DstType (&_Dst)[_Size], _TType1 _TArg1, _TType2 _TArg2, _TType3 _TArg3, _TType4 _TArg4) _CRT_SECURE_CPP_NOTHROW \
591  { \
592  return _FuncName(_Dst, _Size, _TArg1, _TArg2, _TArg3, _TArg4); \
593  } \
594  }
595 
596  #define __DEFINE_CPP_OVERLOAD_SECURE_FUNC_1_1(_ReturnType, _FuncName, _HType1, _HArg1, _DstType, _Dst, _TType1, _TArg1) \
597  extern "C++" \
598  { \
599  template <size_t _Size> \
600  inline \
601  _ReturnType __CRTDECL _FuncName(_HType1 _HArg1, _DstType (&_Dst)[_Size], _TType1 _TArg1) _CRT_SECURE_CPP_NOTHROW \
602  { \
603  return _FuncName(_HArg1, _Dst, _Size, _TArg1); \
604  } \
605  }
606 
607  #define __DEFINE_CPP_OVERLOAD_SECURE_FUNC_1_2(_ReturnType, _FuncName, _HType1, _HArg1, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2) \
608  extern "C++" \
609  { \
610  template <size_t _Size> \
611  inline \
612  _ReturnType __CRTDECL _FuncName(_HType1 _HArg1, _DstType (&_Dst)[_Size], _TType1 _TArg1, _TType2 _TArg2) _CRT_SECURE_CPP_NOTHROW \
613  { \
614  return _FuncName(_HArg1, _Dst, _Size, _TArg1, _TArg2); \
615  } \
616  }
617 
618  #define __DEFINE_CPP_OVERLOAD_SECURE_FUNC_1_3(_ReturnType, _FuncName, _HType1, _HArg1, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2, _TType3, _TArg3) \
619  extern "C++" \
620  { \
621  template <size_t _Size> \
622  inline \
623  _ReturnType __CRTDECL _FuncName(_HType1 _HArg1, _DstType (&_Dst)[_Size], _TType1 _TArg1, _TType2 _TArg2, _TType3 _TArg3) _CRT_SECURE_CPP_NOTHROW \
624  { \
625  return _FuncName(_HArg1, _Dst, _Size, _TArg1, _TArg2, _TArg3); \
626  } \
627  }
628 
629  #define __DEFINE_CPP_OVERLOAD_SECURE_FUNC_2_0(_ReturnType, _FuncName, _HType1, _HArg1, _HType2, _HArg2, _DstType, _Dst) \
630  extern "C++" \
631  { \
632  template <size_t _Size> \
633  inline \
634  _ReturnType __CRTDECL _FuncName(_HType1 _HArg1, _HType2 _HArg2, _DstType (&_Dst)[_Size]) _CRT_SECURE_CPP_NOTHROW \
635  { \
636  return _FuncName(_HArg1, _HArg2, _Dst, _Size); \
637  } \
638  }
639 
640  #define __DEFINE_CPP_OVERLOAD_SECURE_FUNC_0_1_ARGLIST(_ReturnType, _FuncName, _VFuncName, _DstType, _Dst, _TType1, _TArg1) \
641  extern "C++" \
642  { \
643  __pragma(warning(push)); \
644  __pragma(warning(disable: 4793)); \
645  template <size_t _Size> \
646  inline \
647  _ReturnType __CRTDECL _FuncName(_DstType (&_Dst)[_Size], _TType1 _TArg1, ...) _CRT_SECURE_CPP_NOTHROW \
648  { \
649  va_list _ArgList; \
650  __crt_va_start(_ArgList, _TArg1); \
651  return _VFuncName(_Dst, _Size, _TArg1, _ArgList); \
652  } \
653  __pragma(warning(pop)); \
654  }
655 
656  #define __DEFINE_CPP_OVERLOAD_SECURE_FUNC_0_2_ARGLIST(_ReturnType, _FuncName, _VFuncName, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2) \
657  extern "C++" \
658  { \
659  __pragma(warning(push)); \
660  __pragma(warning(disable: 4793)); \
661  template <size_t _Size> \
662  inline \
663  _ReturnType __CRTDECL _FuncName(_DstType (&_Dst)[_Size], _TType1 _TArg1, _TType2 _TArg2, ...) _CRT_SECURE_CPP_NOTHROW \
664  { \
665  va_list _ArgList; \
666  __crt_va_start(_ArgList, _TArg2); \
667  return _VFuncName(_Dst, _Size, _TArg1, _TArg2, _ArgList); \
668  } \
669  __pragma(warning(pop)); \
670  }
671 
672  #define __DEFINE_CPP_OVERLOAD_SECURE_FUNC_SPLITPATH(_ReturnType, _FuncName, _DstType, _Src) \
673  extern "C++" \
674  { \
675  template <size_t _DriveSize, size_t _DirSize, size_t _NameSize, size_t _ExtSize> \
676  inline \
677  _ReturnType __CRTDECL _FuncName( \
678  _In_z_ _DstType const* _Src, \
679  _Post_z_ _DstType (&_Drive)[_DriveSize], \
680  _Post_z_ _DstType (&_Dir)[_DirSize], \
681  _Post_z_ _DstType (&_Name)[_NameSize], \
682  _Post_z_ _DstType (&_Ext)[_ExtSize] \
683  ) _CRT_SECURE_CPP_NOTHROW \
684  { \
685  return _FuncName(_Src, _Drive, _DriveSize, _Dir, _DirSize, _Name, _NameSize, _Ext, _ExtSize); \
686  } \
687  }
688 
689  #else // ^^^ _CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES ^^^ // vvv !_CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES vvv //
690 
691  #define __DEFINE_CPP_OVERLOAD_SECURE_FUNC_0_0(_ReturnType, _FuncName, _DstType, _Dst)
692  #define __DEFINE_CPP_OVERLOAD_SECURE_FUNC_0_1(_ReturnType, _FuncName, _DstType, _Dst, _TType1, _TArg1)
693  #define __DEFINE_CPP_OVERLOAD_SECURE_FUNC_0_2(_ReturnType, _FuncName, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2)
694  #define __DEFINE_CPP_OVERLOAD_SECURE_FUNC_0_3(_ReturnType, _FuncName, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2, _TType3, _TArg3)
695  #define __DEFINE_CPP_OVERLOAD_SECURE_FUNC_0_4(_ReturnType, _FuncName, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2, _TType3, _TArg3, _TType4, _TArg4)
696  #define __DEFINE_CPP_OVERLOAD_SECURE_FUNC_1_1(_ReturnType, _FuncName, _HType1, _HArg1, _DstType, _Dst, _TType1, _TArg1)
697  #define __DEFINE_CPP_OVERLOAD_SECURE_FUNC_1_2(_ReturnType, _FuncName, _HType1, _HArg1, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2)
698  #define __DEFINE_CPP_OVERLOAD_SECURE_FUNC_1_3(_ReturnType, _FuncName, _HType1, _HArg1, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2, _TType3, _TArg3)
699  #define __DEFINE_CPP_OVERLOAD_SECURE_FUNC_2_0(_ReturnType, _FuncName, _HType1, _HArg1, _HType2, _HArg2, _DstType, _Dst)
700  #define __DEFINE_CPP_OVERLOAD_SECURE_FUNC_0_1_ARGLIST(_ReturnType, _FuncName, _VFuncName, _DstType, _Dst, _TType1, _TArg1)
701  #define __DEFINE_CPP_OVERLOAD_SECURE_FUNC_0_2_ARGLIST(_ReturnType, _FuncName, _VFuncName, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2)
702  #define __DEFINE_CPP_OVERLOAD_SECURE_FUNC_SPLITPATH(_ReturnType, _FuncName, _DstType, _Src)
703 
704  #endif // !_CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES
705 #endif
706 
707 
708 
709 #define __DEFINE_CPP_OVERLOAD_STANDARD_FUNC_0_0(_ReturnType, _ReturnPolicy, _DeclSpec, _FuncName, _SalAttributeDst, _DstType, _Dst) \
710  __DEFINE_CPP_OVERLOAD_STANDARD_FUNC_0_0_EX(_ReturnType, _ReturnPolicy, _DeclSpec, _FuncName, _FuncName##_s, _SalAttributeDst, _DstType, _Dst)
711 
712 #define __DEFINE_CPP_OVERLOAD_STANDARD_FUNC_0_1(_ReturnType, _ReturnPolicy, _DeclSpec, _FuncName, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1) \
713  __DEFINE_CPP_OVERLOAD_STANDARD_FUNC_0_1_EX(_ReturnType, _ReturnPolicy, _DeclSpec, _FuncName, _FuncName##_s, _DstType, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1)
714 
715 #define __DEFINE_CPP_OVERLOAD_STANDARD_FUNC_0_2(_ReturnType, _ReturnPolicy, _DeclSpec, _FuncName, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2) \
716  __DEFINE_CPP_OVERLOAD_STANDARD_FUNC_0_2_EX(_ReturnType, _ReturnPolicy, _DeclSpec, _FuncName, _FuncName##_s, _DstType, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2)
717 
718 #define __DEFINE_CPP_OVERLOAD_STANDARD_FUNC_0_3(_ReturnType, _ReturnPolicy, _DeclSpec, _FuncName, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2, _TType3, _TArg3) \
719  __DEFINE_CPP_OVERLOAD_STANDARD_FUNC_0_3_EX(_ReturnType, _ReturnPolicy, _DeclSpec, _FuncName, _FuncName##_s, _DstType, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2, _TType3, _TArg3)
720 
721 #define __DEFINE_CPP_OVERLOAD_STANDARD_FUNC_0_4(_ReturnType, _ReturnPolicy, _DeclSpec, _FuncName, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2, _TType3, _TArg3, _TType4, _TArg4) \
722  __DEFINE_CPP_OVERLOAD_STANDARD_FUNC_0_4_EX(_ReturnType, _ReturnPolicy, _DeclSpec, _FuncName, _FuncName##_s, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2, _TType3, _TArg3, _TType4, _TArg4)
723 
724 #define __DEFINE_CPP_OVERLOAD_STANDARD_FUNC_1_1(_ReturnType, _ReturnPolicy, _DeclSpec, _FuncName, _HType1, _HArg1, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1) \
725  __DEFINE_CPP_OVERLOAD_STANDARD_FUNC_1_1_EX(_ReturnType, _ReturnPolicy, _DeclSpec, _FuncName, _FuncName##_s, _HType1, _HArg1, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1)
726 
727 #define __DEFINE_CPP_OVERLOAD_STANDARD_FUNC_2_0(_ReturnType, _ReturnPolicy, _DeclSpec, _FuncName, _HType1, _HArg1, _HType2, _HArg2, _SalAttributeDst, _DstType, _Dst) \
728  __DEFINE_CPP_OVERLOAD_STANDARD_FUNC_2_0_EX(_ReturnType, _ReturnPolicy, _DeclSpec, _FuncName, _FuncName##_s, _HType1, _HArg1, _HType2, _HArg2, _SalAttributeDst, _DstType, _Dst)
729 
730 #define __DEFINE_CPP_OVERLOAD_STANDARD_FUNC_0_1_ARGLIST(_ReturnType, _ReturnPolicy, _DeclSpec, _CC, _FuncName, _VFuncName, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1) \
731  __DEFINE_CPP_OVERLOAD_STANDARD_FUNC_0_1_ARGLIST_EX(_ReturnType, _ReturnPolicy, _DeclSpec, _CC, _FuncName, _FuncName##_s, _VFuncName, _VFuncName##_s, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1)
732 
733 #define __DEFINE_CPP_OVERLOAD_STANDARD_FUNC_0_2_ARGLIST(_ReturnType, _ReturnPolicy, _DeclSpec, _CC, _FuncName, _VFuncName, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2) \
734  __DEFINE_CPP_OVERLOAD_STANDARD_FUNC_0_2_ARGLIST_EX(_ReturnType, _ReturnPolicy, _DeclSpec, _CC, _FuncName, _VFuncName, _VFuncName##_s, _DstType, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2)
735 
736 #define __DEFINE_CPP_OVERLOAD_STANDARD_FUNC_0_2_SIZE(_DeclSpec, _FuncName, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2) \
737  __DEFINE_CPP_OVERLOAD_STANDARD_FUNC_0_2_SIZE_EX(_DeclSpec, _FuncName, _FuncName##_s, _DstType, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2)
738 
739 #define __DEFINE_CPP_OVERLOAD_STANDARD_FUNC_0_3_SIZE(_DeclSpec, _FuncName, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2, _TType3, _TArg3) \
740  __DEFINE_CPP_OVERLOAD_STANDARD_FUNC_0_3_SIZE_EX(_DeclSpec, _FuncName, _FuncName##_s, _DstType, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2, _TType3, _TArg3)
741 
742 
743 
744 #define __DEFINE_CPP_OVERLOAD_STANDARD_NFUNC_0_0(_ReturnType, _ReturnPolicy, _DeclSpec, _FuncName, _SalAttributeDst, _DstType, _Dst) \
745  __DEFINE_CPP_OVERLOAD_STANDARD_NFUNC_0_0_EX(_ReturnType, _ReturnPolicy, _DeclSpec, _FuncName, _FuncName##_s, _SalAttributeDst, _DstType, _Dst)
746 
747 #define __DEFINE_CPP_OVERLOAD_STANDARD_NFUNC_0_1(_ReturnType, _ReturnPolicy, _DeclSpec, _FuncName, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1) \
748  __DEFINE_CPP_OVERLOAD_STANDARD_NFUNC_0_1_EX(_ReturnType, _ReturnPolicy, _DeclSpec, _FuncName, _FuncName##_s, _SalAttributeDst, _DstType, _DstType, _Dst, _TType1, _TArg1)
749 
750 #define __DEFINE_CPP_OVERLOAD_STANDARD_NFUNC_0_2(_ReturnType, _ReturnPolicy, _DeclSpec, _FuncName, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2) \
751  __DEFINE_CPP_OVERLOAD_STANDARD_NFUNC_0_2_EX(_ReturnType, _ReturnPolicy, _DeclSpec, _FuncName, _FuncName##_s, _DstType, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2)
752 
753 #define __DEFINE_CPP_OVERLOAD_STANDARD_NFUNC_0_3(_ReturnType, _ReturnPolicy, _DeclSpec, _FuncName, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2, _TType3, _TArg3) \
754  __DEFINE_CPP_OVERLOAD_STANDARD_NFUNC_0_3_EX(_ReturnType, _ReturnPolicy, _DeclSpec, _FuncName, _FuncName##_s, _DstType, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2, _TType3, _TArg3)
755 
756 #define __DEFINE_CPP_OVERLOAD_STANDARD_NFUNC_0_4(_ReturnType, _ReturnPolicy, _DeclSpec, _FuncName, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2, _TType3, _TArg3, _TType4, _TArg4) \
757  __DEFINE_CPP_OVERLOAD_STANDARD_NFUNC_0_4_EX(_ReturnType, _ReturnPolicy, _DeclSpec, _FuncName, _FuncName##_s, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2, _TType3, _TArg3, _TType4, _TArg4)
758 
759 #define __DEFINE_CPP_OVERLOAD_STANDARD_NFUNC_1_1(_ReturnType, _ReturnPolicy, _DeclSpec, _FuncName, _HType1, _HArg1, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1) \
760  __DEFINE_CPP_OVERLOAD_STANDARD_NFUNC_1_1_EX(_ReturnType, _ReturnPolicy, _DeclSpec, _FuncName, _FuncName##_s, _HType1, _HArg1, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1)
761 
762 #define __DEFINE_CPP_OVERLOAD_STANDARD_NFUNC_2_0(_ReturnType, _ReturnPolicy, _DeclSpec, _FuncName, _HType1, _HArg1, _HType2, _HArg2, _SalAttributeDst, _DstType, _Dst) \
763  __DEFINE_CPP_OVERLOAD_STANDARD_NFUNC_2_0_EX(_ReturnType, _ReturnPolicy, _DeclSpec, _FuncName, _FuncName##_s, _HType1, _HArg1, _HType2, _HArg2, _SalAttributeDst, _DstType, _Dst)
764 
765 #define __DEFINE_CPP_OVERLOAD_STANDARD_NFUNC_0_1_ARGLIST(_ReturnType, _ReturnPolicy, _DeclSpec, _FuncName, _VFuncName, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1) \
766  __DEFINE_CPP_OVERLOAD_STANDARD_NFUNC_0_1_ARGLIST_EX(_ReturnType, _ReturnPolicy, _DeclSpec, __cdecl, _FuncName, _FuncName##_s, _VFuncName, _VFuncName##_s, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1)
767 
768 #define __DEFINE_CPP_OVERLOAD_STANDARD_NFUNC_0_2_SIZE(_DeclSpec, _FuncName, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2) \
769  __DEFINE_CPP_OVERLOAD_STANDARD_NFUNC_0_2_SIZE_EX(_DeclSpec, _FuncName, _FuncName##_s, _DstType, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2)
770 
771 #define __DEFINE_CPP_OVERLOAD_STANDARD_NFUNC_0_3_SIZE(_DeclSpec, _FuncName, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2, _TType3, _TArg3) \
772  __DEFINE_CPP_OVERLOAD_STANDARD_NFUNC_0_3_SIZE_EX(_DeclSpec, _FuncName, _FuncName##_s, _DstType, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2, _TType3, _TArg3)
773 
774 
775 
776 //-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
777 //
778 // C++ Standard Overload Generation Macros
779 //
780 //-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
781 #ifndef RC_INVOKED
782  #if defined __cplusplus && _CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES
783 
784  #define __RETURN_POLICY_SAME(_FunctionCall, _Dst) return (_FunctionCall)
785  #define __RETURN_POLICY_DST(_FunctionCall, _Dst) return ((_FunctionCall) == 0 ? _Dst : 0)
786  #define __RETURN_POLICY_VOID(_FunctionCall, _Dst) (_FunctionCall); return
787  #define __EMPTY_DECLSPEC
788 
789  #define __DEFINE_CPP_OVERLOAD_STANDARD_FUNC_0_0_EX(_ReturnType, _ReturnPolicy, _DeclSpec, _FuncName, _SecureFuncName, _SalAttributeDst, _DstType, _Dst) \
790  __inline \
791  _ReturnType __CRTDECL __insecure_##_FuncName(_SalAttributeDst _DstType *_Dst) \
792  { \
793  _DeclSpec _ReturnType __cdecl _FuncName(_SalAttributeDst _DstType *_Dst); \
794  return _FuncName(_Dst); \
795  } \
796  extern "C++" \
797  { \
798  template <typename _T> \
799  inline \
800  _CRT_INSECURE_DEPRECATE(_SecureFuncName) \
801  _ReturnType __CRTDECL _FuncName(_T &_Dst) _CRT_SECURE_CPP_NOTHROW \
802  { \
803  return __insecure_##_FuncName(static_cast<_DstType *>(_Dst)); \
804  } \
805  template <typename _T> \
806  inline \
807  _CRT_INSECURE_DEPRECATE(_SecureFuncName) \
808  _ReturnType __CRTDECL _FuncName(const _T &_Dst) _CRT_SECURE_CPP_NOTHROW \
809  { \
810  return __insecure_##_FuncName(static_cast<_DstType *>(_Dst)); \
811  } \
812  template <> \
813  inline \
814  _CRT_INSECURE_DEPRECATE(_SecureFuncName) \
815  _ReturnType __CRTDECL _FuncName(_SalAttributeDst _DstType * &_Dst) _CRT_SECURE_CPP_NOTHROW \
816  { \
817  return __insecure_##_FuncName(_Dst); \
818  } \
819  template <size_t _Size> \
820  inline \
821  _ReturnType __CRTDECL _FuncName(_DstType (&_Dst)[_Size]) _CRT_SECURE_CPP_NOTHROW \
822  { \
823  _ReturnPolicy(_SecureFuncName(_Dst, _Size), _Dst); \
824  } \
825  template <> \
826  inline \
827  _CRT_INSECURE_DEPRECATE(_SecureFuncName) \
828  _ReturnType __CRTDECL _FuncName<1>(_DstType (&_Dst)[1]) _CRT_SECURE_CPP_NOTHROW \
829  { \
830  _ReturnPolicy(_SecureFuncName(_Dst, 1), _Dst); \
831  } \
832  }
833 
834  #define __DEFINE_CPP_OVERLOAD_STANDARD_FUNC_0_0_CGETS(_ReturnType, _DeclSpec, _FuncName, _SalAttributeDst, _DstType, _Dst) \
835  __inline \
836  _ReturnType __CRTDECL __insecure_##_FuncName(_SalAttributeDst _DstType *_Dst) \
837  { \
838  _DeclSpec _ReturnType __cdecl _FuncName(_SalAttributeDst _DstType *_Dst); \
839  return _FuncName(_Dst); \
840  } \
841  extern "C++" \
842  { \
843  template <typename _T> \
844  inline \
845  _CRT_INSECURE_DEPRECATE(_FuncName##_s) \
846  _ReturnType __CRTDECL _FuncName(_T &_Dst) _CRT_SECURE_CPP_NOTHROW \
847  { \
848  return __insecure_##_FuncName(static_cast<_DstType *>(_Dst)); \
849  } \
850  template <typename _T> \
851  inline \
852  _CRT_INSECURE_DEPRECATE(_FuncName##_s) \
853  _ReturnType __CRTDECL _FuncName(const _T &_Dst) _CRT_SECURE_CPP_NOTHROW \
854  { \
855  return __insecure_##_FuncName(static_cast<_DstType *>(_Dst)); \
856  } \
857  template <> \
858  inline \
859  _CRT_INSECURE_DEPRECATE(_FuncName##_s) \
860  _ReturnType __CRTDECL _FuncName(_SalAttributeDst _DstType * &_Dst) _CRT_SECURE_CPP_NOTHROW \
861  { \
862  return __insecure_##_FuncName(_Dst); \
863  } \
864  template <size_t _Size> \
865  inline \
866  _ReturnType __CRTDECL _FuncName(_DstType (&_Dst)[_Size]) _CRT_SECURE_CPP_NOTHROW \
867  { \
868  size_t _SizeRead = 0; \
869  errno_t _Err = _FuncName##_s(_Dst + 2, (_Size - 2) < ((size_t)_Dst[0]) ? (_Size - 2) : ((size_t)_Dst[0]), &_SizeRead); \
870  _Dst[1] = (_DstType)(_SizeRead); \
871  return (_Err == 0 ? _Dst + 2 : 0); \
872  } \
873  template <> \
874  inline \
875  _CRT_INSECURE_DEPRECATE(_FuncName##_s) \
876  _ReturnType __CRTDECL _FuncName<1>(_DstType (&_Dst)[1]) _CRT_SECURE_CPP_NOTHROW \
877  { \
878  return __insecure_##_FuncName((_DstType *)_Dst); \
879  } \
880  template <> \
881  inline \
882  _CRT_INSECURE_DEPRECATE(_FuncName##_s) \
883  _ReturnType __CRTDECL _FuncName<2>(_DstType (&_Dst)[2]) _CRT_SECURE_CPP_NOTHROW \
884  { \
885  return __insecure_##_FuncName((_DstType *)_Dst); \
886  } \
887  }
888 
889  #define __DEFINE_CPP_OVERLOAD_STANDARD_FUNC_0_1_EX(_ReturnType, _ReturnPolicy, _DeclSpec, _FuncName, _SecureFuncName, _SecureDstType, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1) \
890  __inline \
891  _ReturnType __CRTDECL __insecure_##_FuncName(_SalAttributeDst _DstType *_Dst, _TType1 _TArg1) \
892  { \
893  _DeclSpec _ReturnType __cdecl _FuncName(_SalAttributeDst _DstType *_Dst, _TType1 _TArg1); \
894  return _FuncName(_Dst, _TArg1); \
895  } \
896  extern "C++" \
897  { \
898  template <typename _T> \
899  inline \
900  _CRT_INSECURE_DEPRECATE(_SecureFuncName) \
901  _ReturnType __CRTDECL _FuncName(_T &_Dst, _TType1 _TArg1) _CRT_SECURE_CPP_NOTHROW \
902  { \
903  return __insecure_##_FuncName(static_cast<_DstType *>(_Dst), _TArg1); \
904  } \
905  template <typename _T> \
906  inline \
907  _CRT_INSECURE_DEPRECATE(_SecureFuncName) \
908  _ReturnType __CRTDECL _FuncName(const _T &_Dst, _TType1 _TArg1) _CRT_SECURE_CPP_NOTHROW \
909  { \
910  return __insecure_##_FuncName(static_cast<_DstType *>(_Dst), _TArg1); \
911  } \
912  template <> \
913  inline \
914  _CRT_INSECURE_DEPRECATE(_SecureFuncName) \
915  _ReturnType __CRTDECL _FuncName(_SalAttributeDst _DstType * &_Dst, _TType1 _TArg1) _CRT_SECURE_CPP_NOTHROW \
916  { \
917  return __insecure_##_FuncName(_Dst, _TArg1); \
918  } \
919  template <size_t _Size> \
920  inline \
921  _ReturnType __CRTDECL _FuncName(_SecureDstType (&_Dst)[_Size], _TType1 _TArg1) _CRT_SECURE_CPP_NOTHROW \
922  { \
923  _ReturnPolicy(_SecureFuncName(_Dst, _Size, _TArg1), _Dst); \
924  } \
925  template <> \
926  inline \
927  _CRT_INSECURE_DEPRECATE(_SecureFuncName) \
928  _ReturnType __CRTDECL _FuncName<1>(_DstType (&_Dst)[1], _TType1 _TArg1) _CRT_SECURE_CPP_NOTHROW \
929  { \
930  _ReturnPolicy(_SecureFuncName(_Dst, 1, _TArg1), _Dst); \
931  } \
932  }
933 
934  #define __DEFINE_CPP_OVERLOAD_STANDARD_FUNC_0_2_EX(_ReturnType, _ReturnPolicy, _DeclSpec, _FuncName, _SecureFuncName, _SecureDstType, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2) \
935  __inline \
936  _ReturnType __CRTDECL __insecure_##_FuncName(_SalAttributeDst _DstType *_Dst, _TType1 _TArg1, _TType2 _TArg2) _CRT_SECURE_CPP_NOTHROW \
937  { \
938  _DeclSpec _ReturnType __cdecl _FuncName(_SalAttributeDst _DstType *_Dst, _TType1 _TArg1, _TType2 _TArg2); \
939  return _FuncName(_Dst, _TArg1, _TArg2); \
940  } \
941  extern "C++" \
942  { \
943  template <typename _T> \
944  inline \
945  _CRT_INSECURE_DEPRECATE(_SecureFuncName) \
946  _ReturnType __CRTDECL _FuncName(_T &_Dst, _TType1 _TArg1, _TType2 _TArg2) _CRT_SECURE_CPP_NOTHROW \
947  { \
948  return __insecure_##_FuncName(static_cast<_DstType *>(_Dst), _TArg1, _TArg2); \
949  } \
950  template <typename _T> \
951  inline \
952  _CRT_INSECURE_DEPRECATE(_SecureFuncName) \
953  _ReturnType __CRTDECL _FuncName(const _T &_Dst, _TType1 _TArg1, _TType2 _TArg2) _CRT_SECURE_CPP_NOTHROW \
954  { \
955  return __insecure_##_FuncName(static_cast<_DstType *>(_Dst), _TArg1, _TArg2); \
956  } \
957  template <> \
958  inline \
959  _CRT_INSECURE_DEPRECATE(_SecureFuncName) \
960  _ReturnType __CRTDECL _FuncName(_SalAttributeDst _DstType * &_Dst, _TType1 _TArg1, _TType2 _TArg2) _CRT_SECURE_CPP_NOTHROW \
961  { \
962  return __insecure_##_FuncName(_Dst, _TArg1, _TArg2); \
963  } \
964  template <size_t _Size> \
965  inline \
966  _ReturnType __CRTDECL _FuncName(_SecureDstType (&_Dst)[_Size], _TType1 _TArg1, _TType2 _TArg2) _CRT_SECURE_CPP_NOTHROW \
967  { \
968  _ReturnPolicy(_SecureFuncName(_Dst, _Size, _TArg1, _TArg2), _Dst); \
969  } \
970  template <> \
971  inline \
972  _CRT_INSECURE_DEPRECATE(_SecureFuncName) \
973  _ReturnType __CRTDECL _FuncName<1>(_DstType (&_Dst)[1], _TType1 _TArg1, _TType2 _TArg2) _CRT_SECURE_CPP_NOTHROW \
974  { \
975  _ReturnPolicy(_SecureFuncName(_Dst, 1, _TArg1, _TArg2), _Dst); \
976  } \
977  }
978 
979  #define __DEFINE_CPP_OVERLOAD_STANDARD_FUNC_0_3_EX(_ReturnType, _ReturnPolicy, _DeclSpec, _FuncName, _SecureFuncName, _SecureDstType, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2, _TType3, _TArg3) \
980  __inline \
981  _ReturnType __CRTDECL __insecure_##_FuncName(_SalAttributeDst _DstType *_Dst, _TType1 _TArg1, _TType2 _TArg2, _TType3 _TArg3) \
982  { \
983  _DeclSpec _ReturnType __cdecl _FuncName(_SalAttributeDst _DstType *_Dst, _TType1 _TArg1, _TType2 _TArg2, _TType3 _TArg3); \
984  return _FuncName(_Dst, _TArg1, _TArg2, _TArg3); \
985  } \
986  extern "C++" \
987  { \
988  template <typename _T> \
989  inline \
990  _CRT_INSECURE_DEPRECATE(_SecureFuncName) \
991  _ReturnType __CRTDECL _FuncName(_T &_Dst, _TType1 _TArg1, _TType2 _TArg2, _TType3 _TArg3) _CRT_SECURE_CPP_NOTHROW \
992  { \
993  return __insecure_##_FuncName(static_cast<_DstType *>(_Dst), _TArg1, _TArg2, _TArg3); \
994  } \
995  template <typename _T> \
996  inline \
997  _CRT_INSECURE_DEPRECATE(_SecureFuncName) \
998  _ReturnType __CRTDECL _FuncName(const _T &_Dst, _TType1 _TArg1, _TType2 _TArg2, _TType3 _TArg3) _CRT_SECURE_CPP_NOTHROW \
999  { \
1000  return __insecure_##_FuncName(static_cast<_DstType *>(_Dst), _TArg1, _TArg2, _TArg3); \
1001  } \
1002  template <> \
1003  inline \
1004  _CRT_INSECURE_DEPRECATE(_SecureFuncName) \
1005  _ReturnType __CRTDECL _FuncName(_SalAttributeDst _DstType * &_Dst, _TType1 _TArg1, _TType2 _TArg2, _TType3 _TArg3) _CRT_SECURE_CPP_NOTHROW \
1006  { \
1007  return __insecure_##_FuncName(_Dst, _TArg1, _TArg2, _TArg3); \
1008  } \
1009  template <size_t _Size> \
1010  inline \
1011  _ReturnType __CRTDECL _FuncName(_SecureDstType (&_Dst)[_Size], _TType1 _TArg1, _TType2 _TArg2, _TType3 _TArg3) _CRT_SECURE_CPP_NOTHROW \
1012  { \
1013  _ReturnPolicy(_SecureFuncName(_Dst, _Size, _TArg1, _TArg2, _TArg3), _Dst); \
1014  } \
1015  template <> \
1016  inline \
1017  _CRT_INSECURE_DEPRECATE(_SecureFuncName) \
1018  _ReturnType __CRTDECL _FuncName<1>(_DstType (&_Dst)[1], _TType1 _TArg1, _TType2 _TArg2, _TType3 _TArg3) _CRT_SECURE_CPP_NOTHROW \
1019  { \
1020  _ReturnPolicy(_SecureFuncName(_Dst, 1, _TArg1, _TArg2, _TArg3), _Dst); \
1021  } \
1022  }
1023 
1024  #define __DEFINE_CPP_OVERLOAD_STANDARD_FUNC_0_4_EX(_ReturnType, _ReturnPolicy, _DeclSpec, _FuncName, _SecureFuncName, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2, _TType3, _TArg3, _TType4, _TArg4) \
1025  __inline \
1026  _ReturnType __CRTDECL __insecure_##_FuncName(_SalAttributeDst _DstType *_Dst, _TType1 _TArg1, _TType2 _TArg2, _TType3 _TArg3, _TType4 _TArg4) \
1027  { \
1028  _DeclSpec _ReturnType __cdecl _FuncName(_SalAttributeDst _DstType *_Dst, _TType1 _TArg1, _TType2 _TArg2, _TType3 _TArg3, _TType4 _TArg4); \
1029  return _FuncName(_Dst, _TArg1, _TArg2, _TArg3, _TArg4); \
1030  } \
1031  extern "C++" \
1032  { \
1033  template <typename _T> \
1034  inline \
1035  _CRT_INSECURE_DEPRECATE(_SecureFuncName) \
1036  _ReturnType __CRTDECL _FuncName(_T &_Dst, _TType1 _TArg1, _TType2 _TArg2, _TType3 _TArg3, _TType4 _TArg4) _CRT_SECURE_CPP_NOTHROW \
1037  { \
1038  return __insecure_##_FuncName(static_cast<_DstType *>(_Dst), _TArg1, _TArg2, _TArg3, _TArg4); \
1039  } \
1040  template <typename _T> \
1041  inline \
1042  _CRT_INSECURE_DEPRECATE(_SecureFuncName) \
1043  _ReturnType __CRTDECL _FuncName(const _T &_Dst, _TType1 _TArg1, _TType2 _TArg2, _TType3 _TArg3, _TType4 _TArg4) _CRT_SECURE_CPP_NOTHROW \
1044  { \
1045  return __insecure_##_FuncName(static_cast<_DstType *>(_Dst), _TArg1, _TArg2, _TArg3, _TArg4); \
1046  } \
1047  template <> \
1048  inline \
1049  _CRT_INSECURE_DEPRECATE(_SecureFuncName) \
1050  _ReturnType __CRTDECL _FuncName(_SalAttributeDst _DstType * &_Dst, _TType1 _TArg1, _TType2 _TArg2, _TType3 _TArg3, _TType4 _TArg4) _CRT_SECURE_CPP_NOTHROW \
1051  { \
1052  return __insecure_##_FuncName(_Dst, _TArg1, _TArg2, _TArg3, _TArg4); \
1053  } \
1054  template <size_t _Size> \
1055  inline \
1056  _ReturnType __CRTDECL _FuncName(_DstType (&_Dst)[_Size], _TType1 _TArg1, _TType2 _TArg2, _TType3 _TArg3, _TType4 _TArg4) _CRT_SECURE_CPP_NOTHROW \
1057  { \
1058  _ReturnPolicy(_SecureFuncName(_Dst, _Size, _TArg1, _TArg2, _TArg3, _TArg4), _Dst); \
1059  } \
1060  template <> \
1061  inline \
1062  _CRT_INSECURE_DEPRECATE(_SecureFuncName) \
1063  _ReturnType __CRTDECL _FuncName<1>(_DstType (&_Dst)[1], _TType1 _TArg1, _TType2 _TArg2, _TType3 _TArg3, _TType4 _TArg4) _CRT_SECURE_CPP_NOTHROW \
1064  { \
1065  _ReturnPolicy(_SecureFuncName(_Dst, 1, _TArg1, _TArg2, _TArg3, _TArg4), _Dst); \
1066  } \
1067  }
1068 
1069  #define __DEFINE_CPP_OVERLOAD_STANDARD_FUNC_1_1_EX(_ReturnType, _ReturnPolicy, _DeclSpec, _FuncName, _SecureFuncName, _HType1, _HArg1, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1) \
1070  __inline \
1071  _ReturnType __CRTDECL __insecure_##_FuncName(_HType1 _HArg1, _SalAttributeDst _DstType *_Dst, _TType1 _TArg1) \
1072  { \
1073  _DeclSpec _ReturnType __cdecl _FuncName(_HType1 _HArg1, _SalAttributeDst _DstType *_Dst, _TType1 _TArg1); \
1074  return _FuncName(_HArg1, _Dst, _TArg1); \
1075  } \
1076  extern "C++" \
1077  { \
1078  template <typename _T> \
1079  inline \
1080  _CRT_INSECURE_DEPRECATE(_SecureFuncName) \
1081  _ReturnType __CRTDECL _FuncName(_HType1 _HArg1, _T &_Dst, _TType1 _TArg1) _CRT_SECURE_CPP_NOTHROW \
1082  { \
1083  return __insecure_##_FuncName(_HArg1, static_cast<_DstType *>(_Dst), _TArg1); \
1084  } \
1085  template <typename _T> \
1086  inline \
1087  _CRT_INSECURE_DEPRECATE(_SecureFuncName) \
1088  _ReturnType __CRTDECL _FuncName(_HType1 _HArg1, const _T &_Dst, _TType1 _TArg1) _CRT_SECURE_CPP_NOTHROW \
1089  { \
1090  return __insecure_##_FuncName(_HArg1, static_cast<_DstType *>(_Dst), _TArg1); \
1091  } \
1092  template <> \
1093  inline \
1094  _CRT_INSECURE_DEPRECATE(_SecureFuncName) \
1095  _ReturnType __CRTDECL _FuncName(_HType1 _HArg1, _SalAttributeDst _DstType * &_Dst, _TType1 _TArg1) _CRT_SECURE_CPP_NOTHROW \
1096  { \
1097  return __insecure_##_FuncName(_HArg1, _Dst, _TArg1); \
1098  } \
1099  template <size_t _Size> \
1100  inline \
1101  _ReturnType __CRTDECL _FuncName(_HType1 _HArg1, _DstType (&_Dst)[_Size], _TType1 _TArg1) _CRT_SECURE_CPP_NOTHROW \
1102  { \
1103  _ReturnPolicy(_SecureFuncName(_HArg1, _Dst, _Size, _TArg1), _Dst); \
1104  } \
1105  template <> \
1106  inline \
1107  _CRT_INSECURE_DEPRECATE(_SecureFuncName) \
1108  _ReturnType __CRTDECL _FuncName<1>(_HType1 _HArg1, _DstType (&_Dst)[1], _TType1 _TArg1) _CRT_SECURE_CPP_NOTHROW \
1109  { \
1110  _ReturnPolicy(_SecureFuncName(_HArg1, _Dst, 1, _TArg1), _Dst); \
1111  } \
1112  }
1113 
1114  #define __DEFINE_CPP_OVERLOAD_STANDARD_FUNC_2_0_EX(_ReturnType, _ReturnPolicy, _DeclSpec, _FuncName, _SecureFuncName, _HType1, _HArg1, _HType2, _HArg2, _SalAttributeDst, _DstType, _Dst) \
1115  __inline \
1116  _ReturnType __CRTDECL __insecure_##_FuncName(_HType1 _HArg1, _HType2 _HArg2, _SalAttributeDst _DstType *_Dst) \
1117  { \
1118  _DeclSpec _ReturnType __cdecl _FuncName(_HType1 _HArg1, _HType2 _HArg2, _SalAttributeDst _DstType *_Dst); \
1119  return _FuncName(_HArg1, _HArg2, _Dst); \
1120  } \
1121  extern "C++" \
1122  { \
1123  template <typename _T> \
1124  inline \
1125  _CRT_INSECURE_DEPRECATE(_SecureFuncName) \
1126  _ReturnType __CRTDECL _FuncName(_HType1 _HArg1, _HType2 _HArg2, _T &_Dst) _CRT_SECURE_CPP_NOTHROW \
1127  { \
1128  return __insecure_##_FuncName(_HArg1, _HArg2, static_cast<_DstType *>(_Dst)); \
1129  } \
1130  template <typename _T> \
1131  inline \
1132  _CRT_INSECURE_DEPRECATE(_SecureFuncName) \
1133  _ReturnType __CRTDECL _FuncName(_HType1 _HArg1, _HType2 _HArg2, const _T &_Dst) _CRT_SECURE_CPP_NOTHROW \
1134  { \
1135  return __insecure_##_FuncName(_HArg1, _HArg2, static_cast<_DstType *>(_Dst)); \
1136  } \
1137  template <> \
1138  inline \
1139  _CRT_INSECURE_DEPRECATE(_SecureFuncName) \
1140  _ReturnType __CRTDECL _FuncName(_HType1 _HArg1, _HType2 _HArg2, _SalAttributeDst _DstType * &_Dst) _CRT_SECURE_CPP_NOTHROW \
1141  { \
1142  return __insecure_##_FuncName(_HArg1, _HArg2, _Dst); \
1143  } \
1144  template <size_t _Size> \
1145  inline \
1146  _ReturnType __CRTDECL _FuncName(_HType1 _HArg1, _HType2 _HArg2, _DstType (&_Dst)[_Size]) _CRT_SECURE_CPP_NOTHROW \
1147  { \
1148  _ReturnPolicy(_SecureFuncName(_HArg1, _HArg2, _Dst, _Size), _Dst); \
1149  } \
1150  template <> \
1151  inline \
1152  _CRT_INSECURE_DEPRECATE(_SecureFuncName) \
1153  _ReturnType __CRTDECL _FuncName<1>(_HType1 _HArg1, _HType2 _HArg2, _DstType (&_Dst)[1]) _CRT_SECURE_CPP_NOTHROW \
1154  { \
1155  _ReturnPolicy(_SecureFuncName(_HArg1, _HArg2, _Dst, 1), _Dst); \
1156  } \
1157  }
1158 
1159  #define __DEFINE_CPP_OVERLOAD_STANDARD_FUNC_0_1_ARGLIST_EX(_ReturnType, _ReturnPolicy, _DeclSpec, _CC, _FuncName, _SecureFuncName, _VFuncName, _SecureVFuncName, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1) \
1160  __inline \
1161  _ReturnType __CRTDECL __insecure_##_VFuncName(_SalAttributeDst _DstType *_Dst, _TType1 _TArg1, va_list _ArgList) \
1162  { \
1163  _DeclSpec _ReturnType _CC _VFuncName(_SalAttributeDst _DstType *_Dst, _TType1 _TArg1, va_list _ArgList); \
1164  return _VFuncName(_Dst, _TArg1, _ArgList); \
1165  } \
1166  extern "C++" \
1167  { \
1168  __pragma(warning(push)); \
1169  __pragma(warning(disable: 4793)); \
1170  template <typename _T> \
1171  inline \
1172  _CRT_INSECURE_DEPRECATE(_SecureFuncName) \
1173  _ReturnType __CRTDECL _FuncName(_T &_Dst, _TType1 _TArg1, ...) _CRT_SECURE_CPP_NOTHROW \
1174  { \
1175  va_list _ArgList; \
1176  __crt_va_start(_ArgList, _TArg1); \
1177  return __insecure_##_VFuncName(static_cast<_DstType *>(_Dst), _TArg1, _ArgList); \
1178  } \
1179  template <typename _T> \
1180  inline \
1181  _CRT_INSECURE_DEPRECATE(_SecureFuncName) \
1182  _ReturnType __CRTDECL _FuncName(const _T &_Dst, _TType1 _TArg1, ...) _CRT_SECURE_CPP_NOTHROW \
1183  { \
1184  va_list _ArgList; \
1185  __crt_va_start(_ArgList, _TArg1); \
1186  return __insecure_##_VFuncName(static_cast<_DstType *>(_Dst), _TArg1, _ArgList); \
1187  } \
1188  __pragma(warning(pop)); \
1189  \
1190  __pragma(warning(push)); \
1191  __pragma(warning(disable: 4793)); \
1192  template <> \
1193  inline \
1194  _CRT_INSECURE_DEPRECATE(_SecureFuncName) \
1195  _ReturnType __CRTDECL _FuncName(_SalAttributeDst _DstType * &_Dst, _TType1 _TArg1, ...) _CRT_SECURE_CPP_NOTHROW \
1196  { \
1197  va_list _ArgList; \
1198  __crt_va_start(_ArgList, _TArg1); \
1199  return __insecure_##_VFuncName(_Dst, _TArg1, _ArgList); \
1200  } \
1201  __pragma(warning(pop)); \
1202  \
1203  __pragma(warning(push)); \
1204  __pragma(warning(disable: 4793)); \
1205  template <size_t _Size> \
1206  inline \
1207  _ReturnType __CRTDECL _FuncName(_DstType (&_Dst)[_Size], _TType1 _TArg1, ...) _CRT_SECURE_CPP_NOTHROW \
1208  { \
1209  va_list _ArgList; \
1210  __crt_va_start(_ArgList, _TArg1); \
1211  _ReturnPolicy(_SecureVFuncName(_Dst, _Size, _TArg1, _ArgList), _Dst); \
1212  } \
1213  __pragma(warning(pop)); \
1214  \
1215  __pragma(warning(push)); \
1216  __pragma(warning(disable: 4793)); \
1217  template <> \
1218  inline \
1219  _CRT_INSECURE_DEPRECATE(_SecureFuncName) \
1220  _ReturnType __CRTDECL _FuncName<1>(_DstType (&_Dst)[1], _TType1 _TArg1, ...) _CRT_SECURE_CPP_NOTHROW \
1221  { \
1222  va_list _ArgList; \
1223  __crt_va_start(_ArgList, _TArg1); \
1224  _ReturnPolicy(_SecureVFuncName(_Dst, 1, _TArg1, _ArgList), _Dst); \
1225  } \
1226  __pragma(warning(pop)); \
1227  \
1228  template <typename _T> \
1229  inline \
1230  _CRT_INSECURE_DEPRECATE(_SecureVFuncName) \
1231  _ReturnType __CRTDECL _VFuncName(_T &_Dst, _TType1 _TArg1, va_list _ArgList) _CRT_SECURE_CPP_NOTHROW \
1232  { \
1233  return __insecure_##_VFuncName(static_cast<_DstType *>(_Dst), _TArg1, _ArgList); \
1234  } \
1235  template <typename _T> \
1236  inline \
1237  _CRT_INSECURE_DEPRECATE(_SecureVFuncName) \
1238  _ReturnType __CRTDECL _VFuncName(const _T &_Dst, _TType1 _TArg1, va_list _ArgList) _CRT_SECURE_CPP_NOTHROW \
1239  { \
1240  return __insecure_##_VFuncName(static_cast<_DstType *>(_Dst), _TArg1, _ArgList); \
1241  } \
1242  template <> \
1243  inline \
1244  _CRT_INSECURE_DEPRECATE(_SecureVFuncName) \
1245  _ReturnType __CRTDECL _VFuncName(_SalAttributeDst _DstType *&_Dst, _TType1 _TArg1, va_list _ArgList) _CRT_SECURE_CPP_NOTHROW \
1246  { \
1247  return __insecure_##_VFuncName(_Dst, _TArg1, _ArgList); \
1248  } \
1249  template <size_t _Size> \
1250  inline \
1251  _ReturnType __CRTDECL _VFuncName(_DstType (&_Dst)[_Size], _TType1 _TArg1, va_list _ArgList) _CRT_SECURE_CPP_NOTHROW \
1252  { \
1253  _ReturnPolicy(_SecureVFuncName(_Dst, _Size, _TArg1, _ArgList), _Dst); \
1254  } \
1255  template <> \
1256  inline \
1257  _CRT_INSECURE_DEPRECATE(_SecureVFuncName) \
1258  _ReturnType __CRTDECL _VFuncName<1>(_DstType (&_Dst)[1], _TType1 _TArg1, va_list _ArgList) _CRT_SECURE_CPP_NOTHROW \
1259  { \
1260  _ReturnPolicy(_SecureVFuncName(_Dst, 1, _TArg1, _ArgList), _Dst); \
1261  } \
1262  }
1263 
1264  #define __DEFINE_CPP_OVERLOAD_STANDARD_FUNC_0_2_ARGLIST_EX(_ReturnType, _ReturnPolicy, _DeclSpec, _CC, _FuncName, _VFuncName, _SecureVFuncName, _SecureDstType, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2) \
1265  __inline \
1266  _ReturnType __CRTDECL __insecure_##_VFuncName(_SalAttributeDst _DstType *_Dst, _TType1 _TArg1, _TType2 _TArg2, va_list _ArgList) \
1267  { \
1268  _DeclSpec _ReturnType _CC _VFuncName(_SalAttributeDst _DstType *_Dst, _TType1 _TArg1, _TType2 _TArg2, va_list _ArgList); \
1269  return _VFuncName(_Dst, _TArg1, _TArg2, _ArgList); \
1270  } \
1271  extern "C++" \
1272  { \
1273  __pragma(warning(push)); \
1274  __pragma(warning(disable: 4793)); \
1275  template <typename _T> \
1276  inline \
1277  _CRT_INSECURE_DEPRECATE(_FuncName##_s) \
1278  _ReturnType __CRTDECL _FuncName(_T &_Dst, _TType1 _TArg1, _TType2 _TArg2, ...) _CRT_SECURE_CPP_NOTHROW \
1279  { \
1280  va_list _ArgList; \
1281  __crt_va_start(_ArgList, _TArg2); \
1282  return __insecure_##_VFuncName(static_cast<_DstType *>(_Dst), _TArg1, _TArg2, _ArgList); \
1283  } \
1284  template <typename _T> \
1285  inline \
1286  _CRT_INSECURE_DEPRECATE(_FuncName##_s) \
1287  _ReturnType __CRTDECL _FuncName(const _T &_Dst, _TType1 _TArg1, _TType2 _TArg2, ...) _CRT_SECURE_CPP_NOTHROW \
1288  { \
1289  va_list _ArgList; \
1290  __crt_va_start(_ArgList, _TArg2); \
1291  return __insecure_##_VFuncName(static_cast<_DstType *>(_Dst), _TArg1, _TArg2, _ArgList); \
1292  } \
1293  __pragma(warning(pop)); \
1294  \
1295  __pragma(warning(push)); \
1296  __pragma(warning(disable: 4793)); \
1297  template <> \
1298  inline \
1299  _CRT_INSECURE_DEPRECATE(_FuncName##_s) \
1300  _ReturnType __CRTDECL _FuncName(_SalAttributeDst _DstType * &_Dst, _TType1 _TArg1, _TType2 _TArg2, ...) _CRT_SECURE_CPP_NOTHROW \
1301  { \
1302  va_list _ArgList; \
1303  __crt_va_start(_ArgList, _TArg2); \
1304  return __insecure_##_VFuncName(_Dst, _TArg1, _TArg2, _ArgList); \
1305  } \
1306  __pragma(warning(pop)); \
1307  \
1308  __pragma(warning(push)); \
1309  __pragma(warning(disable: 4793)); \
1310  template <size_t _Size> \
1311  inline \
1312  _ReturnType __CRTDECL _FuncName(_SecureDstType (&_Dst)[_Size], _TType1 _TArg1, _TType2 _TArg2, ...) _CRT_SECURE_CPP_NOTHROW \
1313  { \
1314  va_list _ArgList; \
1315  __crt_va_start(_ArgList, _TArg2); \
1316  _ReturnPolicy(_SecureVFuncName(_Dst, _Size, _TArg1, _TArg2, _ArgList), _Dst); \
1317  } \
1318  __pragma(warning(pop)); \
1319  \
1320  __pragma(warning(push)); \
1321  __pragma(warning(disable: 4793)); \
1322  template <> \
1323  inline \
1324  _CRT_INSECURE_DEPRECATE(_FuncName##_s) \
1325  _ReturnType __CRTDECL _FuncName<1>(_DstType (&_Dst)[1], _TType1 _TArg1, _TType2 _TArg2, ...) _CRT_SECURE_CPP_NOTHROW \
1326  { \
1327  va_list _ArgList; \
1328  __crt_va_start(_ArgList, _TArg2); \
1329  _ReturnPolicy(_SecureVFuncName(_Dst, 1, _TArg1, _TArg2, _ArgList), _Dst); \
1330  } \
1331  __pragma(warning(pop)); \
1332  \
1333  template <typename _T> \
1334  inline \
1335  _CRT_INSECURE_DEPRECATE(_SecureVFuncName) \
1336  _ReturnType __CRTDECL _VFuncName(_T &_Dst, _TType1 _TArg1, _TType2 _TArg2, va_list _ArgList) _CRT_SECURE_CPP_NOTHROW \
1337  { \
1338  return __insecure_##_VFuncName(static_cast<_DstType *>(_Dst), _TArg1, _TArg2, _ArgList); \
1339  } \
1340  template <typename _T> \
1341  inline \
1342  _CRT_INSECURE_DEPRECATE(_SecureVFuncName) \
1343  _ReturnType __CRTDECL _VFuncName(const _T &_Dst, _TType1 _TArg1, _TType2 _TArg2, va_list _ArgList) _CRT_SECURE_CPP_NOTHROW \
1344  { \
1345  return __insecure_##_VFuncName(static_cast<_DstType *>(_Dst), _TArg1, _TArg2, _ArgList); \
1346  } \
1347  template <> \
1348  inline \
1349  _CRT_INSECURE_DEPRECATE(_SecureVFuncName) \
1350  _ReturnType __CRTDECL _VFuncName(_SalAttributeDst _DstType *&_Dst, _TType1 _TArg1, _TType2 _TArg2, va_list _ArgList) _CRT_SECURE_CPP_NOTHROW \
1351  { \
1352  return __insecure_##_VFuncName(_Dst, _TArg1, _TArg2, _ArgList); \
1353  } \
1354  template <size_t _Size> \
1355  inline \
1356  _ReturnType __CRTDECL _VFuncName(_SecureDstType (&_Dst)[_Size], _TType1 _TArg1, _TType2 _TArg2, va_list _ArgList) _CRT_SECURE_CPP_NOTHROW \
1357  { \
1358  _ReturnPolicy(_SecureVFuncName(_Dst, _Size, _TArg1, _TArg2, _ArgList), _Dst); \
1359  } \
1360  template <> \
1361  inline \
1362  _CRT_INSECURE_DEPRECATE(_SecureVFuncName) \
1363  _ReturnType __CRTDECL _VFuncName<1>(_DstType (&_Dst)[1], _TType1 _TArg1, _TType2 _TArg2, va_list _ArgList) _CRT_SECURE_CPP_NOTHROW \
1364  { \
1365  _ReturnPolicy(_SecureVFuncName(_Dst, 1, _TArg1, _TArg2, _ArgList), _Dst); \
1366  } \
1367  }
1368 
1369  #define __DEFINE_CPP_OVERLOAD_STANDARD_FUNC_0_2_SIZE_EX(_DeclSpec, _FuncName, _SecureFuncName, _SecureDstType, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2) \
1370  __inline \
1371  size_t __CRTDECL __insecure_##_FuncName(_SalAttributeDst _DstType *_Dst, _TType1 _TArg1, _TType2 _TArg2) \
1372  { \
1373  _DeclSpec size_t __cdecl _FuncName(_SalAttributeDst _DstType *_Dst, _TType1 _TArg1, _TType2 _TArg2); \
1374  return _FuncName(_Dst, _TArg1, _TArg2); \
1375  } \
1376  extern "C++" \
1377  { \
1378  template <typename _T> \
1379  inline \
1380  _CRT_INSECURE_DEPRECATE(_SecureFuncName) \
1381  size_t __CRTDECL _FuncName(_T &_Dst, _TType1 _TArg1, _TType2 _TArg2) _CRT_SECURE_CPP_NOTHROW \
1382  { \
1383  return __insecure_##_FuncName(static_cast<_DstType *>(_Dst), _TArg1, _TArg2); \
1384  } \
1385  template <typename _T> \
1386  inline \
1387  _CRT_INSECURE_DEPRECATE(_SecureFuncName) \
1388  size_t __CRTDECL _FuncName(const _T &_Dst, _TType1 _TArg1, _TType2 _TArg2) _CRT_SECURE_CPP_NOTHROW \
1389  { \
1390  return __insecure_##_FuncName(static_cast<_DstType *>(_Dst), _TArg1, _TArg2); \
1391  } \
1392  template <> \
1393  inline \
1394  _CRT_INSECURE_DEPRECATE(_SecureFuncName) \
1395  size_t __CRTDECL _FuncName(_SalAttributeDst _DstType * &_Dst, _TType1 _TArg1, _TType2 _TArg2) _CRT_SECURE_CPP_NOTHROW \
1396  { \
1397  return __insecure_##_FuncName(_Dst, _TArg1, _TArg2); \
1398  } \
1399  template <size_t _Size> \
1400  inline \
1401  size_t __CRTDECL _FuncName(_SecureDstType (&_Dst)[_Size], _TType1 _TArg1, _TType2 _TArg2) _CRT_SECURE_CPP_NOTHROW \
1402  { \
1403  size_t _Ret = 0; \
1404  _SecureFuncName(&_Ret, _Dst, _Size, _TArg1, _TArg2); \
1405  return (_Ret > 0 ? (_Ret - 1) : _Ret); \
1406  } \
1407  template <> \
1408  inline \
1409  _CRT_INSECURE_DEPRECATE(_SecureFuncName) \
1410  size_t __CRTDECL _FuncName<1>(_DstType (&_Dst)[1], _TType1 _TArg1, _TType2 _TArg2) _CRT_SECURE_CPP_NOTHROW \
1411  { \
1412  size_t _Ret = 0; \
1413  _SecureFuncName(&_Ret, _Dst, 1, _TArg1, _TArg2); \
1414  return (_Ret > 0 ? (_Ret - 1) : _Ret); \
1415  } \
1416  }
1417 
1418  #define __DEFINE_CPP_OVERLOAD_STANDARD_FUNC_0_3_SIZE_EX(_DeclSpec, _FuncName, _SecureFuncName, _SecureDstType, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2, _TType3, _TArg3) \
1419  __inline \
1420  size_t __CRTDECL __insecure_##_FuncName(_SalAttributeDst _DstType *_Dst, _TType1 _TArg1, _TType2 _TArg2, _TType3 _TArg3) \
1421  { \
1422  _DeclSpec size_t __cdecl _FuncName(_SalAttributeDst _DstType *_Dst, _TType1 _TArg1, _TType2 _TArg2, _TType3 _TArg3); \
1423  return _FuncName(_Dst, _TArg1, _TArg2, _TArg3); \
1424  } \
1425  extern "C++" \
1426  { \
1427  template <typename _T> \
1428  inline \
1429  _CRT_INSECURE_DEPRECATE(_SecureFuncName) \
1430  size_t __CRTDECL _FuncName(_T &_Dst, _TType1 _TArg1, _TType2 _TArg2, _TType3 _TArg3) _CRT_SECURE_CPP_NOTHROW \
1431  { \
1432  return __insecure_##_FuncName(static_cast<_DstType *>(_Dst), _TArg1, _TArg2, _TArg3); \
1433  } \
1434  template <typename _T> \
1435  inline \
1436  _CRT_INSECURE_DEPRECATE(_SecureFuncName) \
1437  size_t __CRTDECL _FuncName(const _T &_Dst, _TType1 _TArg1, _TType2 _TArg2, _TType3 _TArg3) _CRT_SECURE_CPP_NOTHROW \
1438  { \
1439  return __insecure_##_FuncName(static_cast<_DstType *>(_Dst), _TArg1, _TArg2, _TArg3); \
1440  } \
1441  template <> \
1442  inline \
1443  _CRT_INSECURE_DEPRECATE(_SecureFuncName) \
1444  size_t __CRTDECL _FuncName(_SalAttributeDst _DstType * &_Dst, _TType1 _TArg1, _TType2 _TArg2, _TType3 _TArg3) _CRT_SECURE_CPP_NOTHROW \
1445  { \
1446  return __insecure_##_FuncName(_Dst, _TArg1, _TArg2, _TArg3); \
1447  } \
1448  template <size_t _Size> \
1449  inline \
1450  size_t __CRTDECL _FuncName(_SecureDstType (&_Dst)[_Size], _TType1 _TArg1, _TType2 _TArg2, _TType3 _TArg3) _CRT_SECURE_CPP_NOTHROW \
1451  { \
1452  size_t _Ret = 0; \
1453  _SecureFuncName(&_Ret, _Dst, _Size, _TArg1, _TArg2, _TArg3); \
1454  return (_Ret > 0 ? (_Ret - 1) : _Ret); \
1455  } \
1456  template <> \
1457  inline \
1458  _CRT_INSECURE_DEPRECATE(_SecureFuncName) \
1459  size_t __CRTDECL _FuncName<1>(_DstType (&_Dst)[1], _TType1 _TArg1, _TType2 _TArg2, _TType3 _TArg3) _CRT_SECURE_CPP_NOTHROW \
1460  { \
1461  size_t _Ret = 0; \
1462  _SecureFuncName(&_Ret, _Dst, 1, _TArg1, _TArg2, _TArg3); \
1463  return (_Ret > 0 ? (_Ret - 1) : _Ret); \
1464  } \
1465  }
1466 
1467  #define __DECLARE_CPP_OVERLOAD_INLINE_FUNC_0_0_EX(_ReturnType, _ReturnPolicy, _FuncName, _SecureFuncName, _SecureDstType, _DstType, _Dst) \
1468  __inline \
1469  _ReturnType __CRTDECL __insecure_##_FuncName(_DstType *_Dst)
1470 
1471  #define __DEFINE_CPP_OVERLOAD_INLINE_FUNC_0_0_EX(_ReturnType, _ReturnPolicy, _FuncName, _SecureFuncName, _SecureDstType, _DstType, _Dst) \
1472  extern "C++" \
1473  { \
1474  template <typename _T> \
1475  inline \
1476  _CRT_INSECURE_DEPRECATE(_SecureFuncName) \
1477  _ReturnType __CRTDECL _FuncName(_T &_Dst) _CRT_SECURE_CPP_NOTHROW \
1478  { \
1479  return __insecure_##_FuncName(static_cast<_DstType *>(_Dst)); \
1480  } \
1481  template <typename _T> \
1482  inline \
1483  _CRT_INSECURE_DEPRECATE(_SecureFuncName) \
1484  _ReturnType __CRTDECL _FuncName(const _T &_Dst) _CRT_SECURE_CPP_NOTHROW \
1485  { \
1486  return __insecure_##_FuncName(static_cast<_DstType *>(_Dst)); \
1487  } \
1488  template <> \
1489  inline \
1490  _CRT_INSECURE_DEPRECATE(_SecureFuncName) \
1491  _ReturnType __CRTDECL _FuncName(_DstType * &_Dst) _CRT_SECURE_CPP_NOTHROW \
1492  { \
1493  return __insecure_##_FuncName(_Dst); \
1494  } \
1495  template <size_t _Size> \
1496  inline \
1497  _ReturnType __CRTDECL _FuncName(_SecureDstType (&_Dst)[_Size]) _CRT_SECURE_CPP_NOTHROW \
1498  { \
1499  _ReturnPolicy(_SecureFuncName(_Dst, _Size), _Dst); \
1500  } \
1501  template <> \
1502  inline \
1503  _CRT_INSECURE_DEPRECATE(_SecureFuncName) \
1504  _ReturnType __CRTDECL _FuncName<1>(_DstType (&_Dst)[1]) _CRT_SECURE_CPP_NOTHROW \
1505  { \
1506  _ReturnPolicy(_SecureFuncName(_Dst, 1), _Dst); \
1507  } \
1508  }
1509 
1510  #define __DECLARE_CPP_OVERLOAD_INLINE_FUNC_0_1_EX(_ReturnType, _ReturnPolicy, _FuncName, _SecureFuncName, _SecureDstType, _DstType, _Dst, _TType1, _TArg1) \
1511  __inline \
1512  _ReturnType __CRTDECL __insecure_##_FuncName(_DstType *_Dst, _TType1 _TArg1)
1513 
1514  #define __DEFINE_CPP_OVERLOAD_INLINE_FUNC_0_1_EX(_ReturnType, _ReturnPolicy, _FuncName, _SecureFuncName, _SecureDstType, _DstType, _Dst, _TType1, _TArg1) \
1515  extern "C++" \
1516  { \
1517  template <typename _T> \
1518  inline \
1519  _CRT_INSECURE_DEPRECATE(_SecureFuncName) \
1520  _ReturnType __CRTDECL _FuncName(_T &_Dst, _TType1 _TArg1) _CRT_SECURE_CPP_NOTHROW \
1521  { \
1522  return __insecure_##_FuncName(static_cast<_DstType *>(_Dst), _TArg1); \
1523  } \
1524  template <typename _T> \
1525  inline \
1526  _CRT_INSECURE_DEPRECATE(_SecureFuncName) \
1527  _ReturnType __CRTDECL _FuncName(const _T &_Dst, _TType1 _TArg1) _CRT_SECURE_CPP_NOTHROW \
1528  { \
1529  return __insecure_##_FuncName(static_cast<_DstType *>(_Dst), _TArg1); \
1530  } \
1531  template <> \
1532  inline \
1533  _CRT_INSECURE_DEPRECATE(_SecureFuncName) \
1534  _ReturnType __CRTDECL _FuncName(_DstType * &_Dst, _TType1 _TArg1) _CRT_SECURE_CPP_NOTHROW \
1535  { \
1536  return __insecure_##_FuncName(_Dst, _TArg1); \
1537  } \
1538  template <size_t _Size> \
1539  inline \
1540  _ReturnType __CRTDECL _FuncName(_SecureDstType (&_Dst)[_Size], _TType1 _TArg1) _CRT_SECURE_CPP_NOTHROW \
1541  { \
1542  _ReturnPolicy(_SecureFuncName(_Dst, _Size, _TArg1), _Dst); \
1543  } \
1544  template <> \
1545  inline \
1546  _CRT_INSECURE_DEPRECATE(_SecureFuncName) \
1547  _ReturnType __CRTDECL _FuncName<1>(_DstType (&_Dst)[1], _TType1 _TArg1) _CRT_SECURE_CPP_NOTHROW \
1548  { \
1549  _ReturnPolicy(_SecureFuncName(_Dst, 1, _TArg1), _Dst); \
1550  } \
1551  }
1552 
1553  #define __DECLARE_CPP_OVERLOAD_INLINE_FUNC_0_2_EX(_ReturnType, _ReturnPolicy, _FuncName, _SecureFuncName, _SecureDstType, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2) \
1554  __inline \
1555  _ReturnType __CRTDECL __insecure_##_FuncName(_DstType *_Dst, _TType1 _TArg1, _TType2 _TArg2)
1556 
1557  #define __DEFINE_CPP_OVERLOAD_INLINE_FUNC_0_2_EX(_ReturnType, _ReturnPolicy, _FuncName, _SecureFuncName, _SecureDstType, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2) \
1558  extern "C++" \
1559  { \
1560  template <typename _T> \
1561  inline \
1562  _CRT_INSECURE_DEPRECATE(_SecureFuncName) \
1563  _ReturnType __CRTDECL _FuncName(_T &_Dst, _TType1 _TArg1, _TType2 _TArg2) _CRT_SECURE_CPP_NOTHROW \
1564  { \
1565  return __insecure_##_FuncName(static_cast<_DstType *>(_Dst), _TArg1, _TArg2); \
1566  } \
1567  template <typename _T> \
1568  inline \
1569  _CRT_INSECURE_DEPRECATE(_SecureFuncName) \
1570  _ReturnType __CRTDECL _FuncName(const _T &_Dst, _TType1 _TArg1, _TType2 _TArg2) _CRT_SECURE_CPP_NOTHROW \
1571  { \
1572  return __insecure_##_FuncName(static_cast<_DstType *>(_Dst), _TArg1, _TArg2); \
1573  } \
1574  template <> \
1575  inline \
1576  _CRT_INSECURE_DEPRECATE(_SecureFuncName) \
1577  _ReturnType __CRTDECL _FuncName(_SalAttributeDst _DstType * &_Dst, _TType1 _TArg1, _TType2 _TArg2) _CRT_SECURE_CPP_NOTHROW \
1578  { \
1579  return __insecure_##_FuncName(_Dst, _TArg1, _TArg2); \
1580  } \
1581  template <size_t _Size> \
1582  inline \
1583  _ReturnType __CRTDECL _FuncName(_SecureDstType (&_Dst)[_Size], _TType1 _TArg1, _TType2 _TArg2) _CRT_SECURE_CPP_NOTHROW \
1584  { \
1585  _ReturnPolicy(_SecureFuncName(_Dst, _Size, _TArg1, _TArg2), _Dst); \
1586  } \
1587  template <> \
1588  inline \
1589  _CRT_INSECURE_DEPRECATE(_SecureFuncName) \
1590  _ReturnType __CRTDECL _FuncName<1>(_DstType (&_Dst)[1], _TType1 _TArg1, _TType2 _TArg2) _CRT_SECURE_CPP_NOTHROW \
1591  { \
1592  _ReturnPolicy(_SecureFuncName(_Dst, 1, _TArg1, _TArg2), _Dst); \
1593  } \
1594  }
1595 
1596  #define __DECLARE_CPP_OVERLOAD_INLINE_FUNC_0_3_EX(_ReturnType, _ReturnPolicy, _FuncName, _SecureFuncName, _SecureDstType, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2, _TType3, _TArg3) \
1597  __inline \
1598  _ReturnType __CRTDECL __insecure_##_FuncName(_DstType *_Dst, _TType1 _TArg1, _TType2 _TArg2, _TType3 _TArg3)
1599 
1600  #define __DEFINE_CPP_OVERLOAD_INLINE_FUNC_0_3_EX(_ReturnType, _ReturnPolicy, _FuncName, _SecureFuncName, _SecureDstType, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2, _TType3, _TArg3) \
1601  extern "C++" \
1602  { \
1603  template <typename _T> \
1604  inline \
1605  _CRT_INSECURE_DEPRECATE(_SecureFuncName) \
1606  _ReturnType __CRTDECL _FuncName(_T &_Dst, _TType1 _TArg1, _TType2 _TArg2, _TType3 _TArg3) _CRT_SECURE_CPP_NOTHROW \
1607  { \
1608  return __insecure_##_FuncName(static_cast<_DstType *>(_Dst), _TArg1, _TArg2, _TArg3); \
1609  } \
1610  template <typename _T> \
1611  inline \
1612  _CRT_INSECURE_DEPRECATE(_SecureFuncName) \
1613  _ReturnType __CRTDECL _FuncName(const _T &_Dst, _TType1 _TArg1, _TType2 _TArg2, _TType3 _TArg3) _CRT_SECURE_CPP_NOTHROW \
1614  { \
1615  return __insecure_##_FuncName(static_cast<_DstType *>(_Dst), _TArg1, _TArg2, _TArg3); \
1616  } \
1617  template <> \
1618  inline \
1619  _CRT_INSECURE_DEPRECATE(_SecureFuncName) \
1620  _ReturnType __CRTDECL _FuncName(_SalAttributeDst _DstType * &_Dst, _TType1 _TArg1, _TType2 _TArg2, _TType3 _TArg3) _CRT_SECURE_CPP_NOTHROW \
1621  { \
1622  return __insecure_##_FuncName(_Dst, _TArg1, _TArg2, _TArg3); \
1623  } \
1624  template <size_t _Size> \
1625  inline \
1626  _ReturnType __CRTDECL _FuncName(_SecureDstType (&_Dst)[_Size], _TType1 _TArg1, _TType2 _TArg2, _TType3 _TArg3) _CRT_SECURE_CPP_NOTHROW \
1627  { \
1628  _ReturnPolicy(_SecureFuncName(_Dst, _Size, _TArg1, _TArg2, _TArg3), _Dst); \
1629  } \
1630  template <> \
1631  inline \
1632  _CRT_INSECURE_DEPRECATE(_SecureFuncName) \
1633  _ReturnType __CRTDECL _FuncName<1>(_DstType (&_Dst)[1], _TType1 _TArg1, _TType2 _TArg2, _TType3 _TArg3) _CRT_SECURE_CPP_NOTHROW \
1634  { \
1635  _ReturnPolicy(_SecureFuncName(_Dst, 1, _TArg1, _TArg2, _TArg3), _Dst); \
1636  } \
1637  }
1638 
1639  #if _CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_COUNT
1640 
1641  #define __DEFINE_CPP_OVERLOAD_STANDARD_NFUNC_0_0_EX(_ReturnType, _ReturnPolicy, _DeclSpec, _FuncName, _SecureFuncName, _SalAttributeDst, _DstType, _Dst) \
1642  __DEFINE_CPP_OVERLOAD_STANDARD_FUNC_0_0_EX(_ReturnType, _ReturnPolicy, _DeclSpec, _FuncName, _SecureFuncName, _SalAttributeDst, _DstType, _Dst)
1643 
1644  #define __DEFINE_CPP_OVERLOAD_STANDARD_NFUNC_0_0_CGETS(_ReturnType, _DeclSpec, _FuncName, _SalAttributeDst, _DstType, _Dst) \
1645  __DEFINE_CPP_OVERLOAD_STANDARD_FUNC_0_0_CGETS(_ReturnType, _DeclSpec, _FuncName, _SalAttributeDst, _DstType, _Dst)
1646 
1647  #define __DEFINE_CPP_OVERLOAD_STANDARD_NFUNC_0_1_EX(_ReturnType, _ReturnPolicy, _DeclSpec, _FuncName, _SecureFuncName, _SecureDstType, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1) \
1648  __DEFINE_CPP_OVERLOAD_STANDARD_FUNC_0_1_EX(_ReturnType, _ReturnPolicy, _DeclSpec, _FuncName, _SecureFuncName, _SecureDstType, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1)
1649 
1650  #define __DEFINE_CPP_OVERLOAD_STANDARD_NFUNC_0_2_EX(_ReturnType, _ReturnPolicy, _DeclSpec, _FuncName, _SecureFuncName, _SecureDstType, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2) \
1651  __DEFINE_CPP_OVERLOAD_STANDARD_FUNC_0_2_EX(_ReturnType, _ReturnPolicy, _DeclSpec, _FuncName, _SecureFuncName, _SecureDstType, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2)
1652 
1653  #define __DEFINE_CPP_OVERLOAD_STANDARD_NFUNC_0_3_EX(_ReturnType, _ReturnPolicy, _DeclSpec, _FuncName, _SecureFuncName, _SecureDstType, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2, _TType3, _TArg3) \
1654  __DEFINE_CPP_OVERLOAD_STANDARD_FUNC_0_3_EX(_ReturnType, _ReturnPolicy, _DeclSpec, _FuncName, _SecureFuncName, _SecureDstType, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2, _TType3, _TArg3)
1655 
1656  #define __DEFINE_CPP_OVERLOAD_STANDARD_NFUNC_0_4_EX(_ReturnType, _ReturnPolicy, _DeclSpec, _FuncName, _SecureFuncName, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2, _TType3, _TArg3, _TType4) \
1657  __DEFINE_CPP_OVERLOAD_STANDARD_FUNC_0_4_EX(_ReturnType, _ReturnPolicy, _DeclSpec, _FuncName, _SecureFuncName, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2, _TType3, _TArg3, _TType4)
1658 
1659  #define __DEFINE_CPP_OVERLOAD_STANDARD_NFUNC_1_1_EX(_ReturnType, _ReturnPolicy, _DeclSpec, _FuncName, _SecureFuncName, _HType1, _HArg1, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1) \
1660  __DEFINE_CPP_OVERLOAD_STANDARD_FUNC_1_1_EX(_ReturnType, _ReturnPolicy, _DeclSpec, _FuncName, _SecureFuncName, _HType1, _HArg1, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1)
1661 
1662  #define __DEFINE_CPP_OVERLOAD_STANDARD_NFUNC_2_0_EX(_ReturnType, _ReturnPolicy, _DeclSpec, _FuncName, _SecureFuncName, _HType1, _HArg1, _HType2, _HArg2, _SalAttributeDst, _DstType, _Dst) \
1663  __DEFINE_CPP_OVERLOAD_STANDARD_FUNC_2_0_EX(_ReturnType, _ReturnPolicy, _DeclSpec, _FuncName, _SecureFuncName, _HType1, _HArg1, _HType2, _HArg2, _SalAttributeDst, _DstType, _Dst)
1664 
1665  #define __DEFINE_CPP_OVERLOAD_STANDARD_NFUNC_0_1_ARGLIST_EX(_ReturnType, _ReturnPolicy, _DeclSpec, _CC, _FuncName, _SecureFuncName, _VFuncName, _SecureVFuncName, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1) \
1666  __DEFINE_CPP_OVERLOAD_STANDARD_FUNC_0_1_ARGLIST_EX(_ReturnType, _ReturnPolicy, _DeclSpec, _CC, _FuncName, _SecureFuncName, _VFuncName, _SecureVFuncName, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1)
1667 
1668  #define __DEFINE_CPP_OVERLOAD_STANDARD_NFUNC_0_2_ARGLIST(_ReturnType, _ReturnPolicy, _DeclSpec, _FuncName, _VFuncName, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2) \
1669  __DEFINE_CPP_OVERLOAD_STANDARD_FUNC_0_2_ARGLIST(_ReturnType, _ReturnPolicy, _DeclSpec, __cdecl, _FuncName, _VFuncName, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2)
1670 
1671  #define __DEFINE_CPP_OVERLOAD_STANDARD_NFUNC_0_2_ARGLIST_EX(_ReturnType, _ReturnPolicy, _DeclSpec, _CC, _FuncName, _VFuncName, _SecureDstType, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2) \
1672  __DEFINE_CPP_OVERLOAD_STANDARD_FUNC_0_2_ARGLIST_EX(_ReturnType, _ReturnPolicy, _DeclSpec, _CC, _FuncName, _VFuncName, _VFuncName##_s, _SecureDstType, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2)
1673 
1674  #define __DEFINE_CPP_OVERLOAD_STANDARD_NFUNC_0_2_SIZE_EX(_DeclSpec, _FuncName, _SecureFuncName, _SecureDstType, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2) \
1675  __DEFINE_CPP_OVERLOAD_STANDARD_FUNC_0_2_SIZE_EX(_DeclSpec, _FuncName, _SecureFuncName, _SecureDstType, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2)
1676 
1677  #define __DEFINE_CPP_OVERLOAD_STANDARD_NFUNC_0_3_SIZE_EX(_DeclSpec, _FuncName, _SecureFuncName, _SecureDstType, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2, _TType3, _TArg3) \
1678  __DEFINE_CPP_OVERLOAD_STANDARD_FUNC_0_3_SIZE_EX(_DeclSpec, _FuncName, _SecureFuncName, _SecureDstType, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2, _TType3, _TArg3)
1679 
1680 
1681  #define __DECLARE_CPP_OVERLOAD_INLINE_NFUNC_0_0_EX(_ReturnType, _ReturnPolicy, _FuncName, _SecureFuncName, _SecureDstType, _DstType, _Dst) \
1682  __DECLARE_CPP_OVERLOAD_INLINE_FUNC_0_0_EX(_ReturnType, _ReturnPolicy, _FuncName, _SecureFuncName, _SecureDstType _DstType, _Dst)
1683 
1684  #define __DEFINE_CPP_OVERLOAD_INLINE_NFUNC_0_0_EX(_ReturnType, _ReturnPolicy, _FuncName, _SecureFuncName, _SecureDstType, _DstType, _Dst) \
1685  __DEFINE_CPP_OVERLOAD_INLINE_FUNC_0_0_EX(_ReturnType, _ReturnPolicy, _FuncName, _SecureFuncName, _SecureDstType, _DstType, _Dst)
1686 
1687  #define __DECLARE_CPP_OVERLOAD_INLINE_NFUNC_0_1_EX(_ReturnType, _ReturnPolicy, _FuncName, _SecureFuncName, _SecureDstType, _DstType, _Dst, _TType1, _TArg1) \
1688  __DECLARE_CPP_OVERLOAD_INLINE_FUNC_0_1_EX(_ReturnType, _ReturnPolicy, _FuncName, _SecureFuncName, _SecureDstType _DstType, _Dst, _TType1, _TArg1)
1689 
1690  #define __DEFINE_CPP_OVERLOAD_INLINE_NFUNC_0_1_EX(_ReturnType, _ReturnPolicy, _FuncName, _SecureFuncName, _SecureDstType, _DstType, _Dst, _TType1, _TArg1) \
1691  __DEFINE_CPP_OVERLOAD_INLINE_FUNC_0_1_EX(_ReturnType, _ReturnPolicy, _FuncName, _SecureFuncName, _SecureDstType, _DstType, _Dst, _TType1, _TArg1)
1692 
1693  #define __DECLARE_CPP_OVERLOAD_INLINE_NFUNC_0_2_EX(_ReturnType, _ReturnPolicy, _FuncName, _SecureFuncName, _SecureDstType, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2) \
1694  __DECLARE_CPP_OVERLOAD_INLINE_FUNC_0_2_EX(_ReturnType, _ReturnPolicy, _FuncName, _SecureFuncName, _SecureDstType, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2)
1695 
1696  #define __DEFINE_CPP_OVERLOAD_INLINE_NFUNC_0_2_EX(_ReturnType, _ReturnPolicy, _FuncName, _SecureFuncName, _SecureDstType, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2) \
1697  __DEFINE_CPP_OVERLOAD_INLINE_FUNC_0_2_EX(_ReturnType, _ReturnPolicy, _FuncName, _SecureFuncName, _SecureDstType, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2)
1698 
1699  #define __DECLARE_CPP_OVERLOAD_INLINE_NFUNC_0_3_EX(_ReturnType, _ReturnPolicy, _FuncName, _SecureFuncName, _SecureDstType, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2, _TType3, _TArg3) \
1700  __DECLARE_CPP_OVERLOAD_INLINE_FUNC_0_3_EX(_ReturnType, _ReturnPolicy, _FuncName, _SecureFuncName, _SecureDstType, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2, _TType3, _TArg3)
1701 
1702  #define __DEFINE_CPP_OVERLOAD_INLINE_NFUNC_0_3_EX(_ReturnType, _ReturnPolicy, _FuncName, _SecureFuncName, _SecureDstType, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2, _TType3, _TArg3) \
1703  __DEFINE_CPP_OVERLOAD_INLINE_FUNC_0_3_EX(_ReturnType, _ReturnPolicy, _FuncName, _SecureFuncName, _SecureDstType, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2, _TType3, _TArg3)
1704 
1705  #else // ^^^ _CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_COUNT ^^^ // vvv _CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_COUNT vvv //
1706 
1707  #define __DEFINE_CPP_OVERLOAD_STANDARD_NFUNC_0_0_EX(_ReturnType, _ReturnPolicy, _DeclSpec, _FuncName, _SecureFuncName, _SalAttributeDst, _DstType, _Dst) \
1708  _CRT_INSECURE_DEPRECATE(_SecureFuncName) _DeclSpec _ReturnType __cdecl _FuncName(_SalAttributeDst _DstType *_Dst);
1709 
1710  #define __DEFINE_CPP_OVERLOAD_STANDARD_NFUNC_0_0_GETS(_ReturnType, _ReturnPolicy, _DeclSpec, _FuncName, _DstType, _Dst) \
1711  _CRT_INSECURE_DEPRECATE(_FuncName##_s) _DeclSpec _ReturnType __cdecl _FuncName(_DstType *_Dst);
1712 
1713  #define __DEFINE_CPP_OVERLOAD_STANDARD_NFUNC_0_1_EX(_ReturnType, _ReturnPolicy, _DeclSpec, _FuncName, _SecureFuncName, _SecureDstType, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1) \
1714  _CRT_INSECURE_DEPRECATE(_SecureFuncName) _DeclSpec _ReturnType __cdecl _FuncName(_SalAttributeDst _DstType *_Dst, _TType1 _TArg1);
1715 
1716  #define __DEFINE_CPP_OVERLOAD_STANDARD_NFUNC_0_2_EX(_ReturnType, _ReturnPolicy, _DeclSpec, _FuncName, _SecureFuncName, _SecureDstType, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2) \
1717  _CRT_INSECURE_DEPRECATE(_SecureFuncName) _DeclSpec _ReturnType __cdecl _FuncName(_SalAttributeDst _DstType *_Dst, _TType1 _TArg1, _TType2 _TArg2);
1718 
1719  #define __DEFINE_CPP_OVERLOAD_STANDARD_NFUNC_0_3_EX(_ReturnType, _ReturnPolicy, _DeclSpec, _FuncName, _SecureFuncName, _SecureDstType, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2, _TType3, _TArg3) \
1720  _CRT_INSECURE_DEPRECATE(_SecureFuncName) _DeclSpec _ReturnType __cdecl _FuncName(_SalAttributeDst _DstType *_Dst, _TType1 _TArg1, _TType2 _TArg2, _TType3 _TArg3);
1721 
1722  #define __DEFINE_CPP_OVERLOAD_STANDARD_NFUNC_0_4_EX(_ReturnType, _ReturnPolicy, _DeclSpec, _FuncName, _SecureFuncName, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2, _TType3, _TArg3, _TType4, _TArg4) \
1723  _CRT_INSECURE_DEPRECATE(_SecureFuncName) _DeclSpec _ReturnType __cdecl _FuncName(_SalAttributeDst _DstType *_Dst, _TType1 _TArg1, _TType2 _TArg2, _TType3 _TArg3, _TType4 _TArg4);
1724 
1725  #define __DEFINE_CPP_OVERLOAD_STANDARD_NFUNC_1_1_EX(_ReturnType, _ReturnPolicy, _DeclSpec, _FuncName, _SecureFuncName, _HType1, _HArg1, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1) \
1726  _CRT_INSECURE_DEPRECATE(_SecureFuncName) _DeclSpec _ReturnType __cdecl _FuncName(_HType1 _HArg1, _SalAttributeDst _DstType *_Dst, _TType1 _TArg1);
1727 
1728  #define __DEFINE_CPP_OVERLOAD_STANDARD_NFUNC_2_0_EX(_ReturnType, _ReturnPolicy, _DeclSpec, _FuncName, _SecureFuncName, _HType1, _HArg1, _HType2, _HArg2, _SalAttributeDst, _DstType, _Dst) \
1729  _CRT_INSECURE_DEPRECATE(_SecureFuncName) _DeclSpec _ReturnType __cdecl _FuncName(_HType1 _HArg1, _HType2 _HArg2, _SalAttributeDst _DstType *_Dst);
1730 
1731  #define __DEFINE_CPP_OVERLOAD_STANDARD_NFUNC_0_1_ARGLIST_EX(_ReturnType, _ReturnPolicy, _DeclSpec, _CC, _FuncName, _SecureFuncName,_VFuncName, _SecureVFuncName, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1) \
1732  _CRT_INSECURE_DEPRECATE(_SecureFuncName) _DeclSpec _ReturnType _CC _FuncName(_SalAttributeDst _DstType *_Dst, _TType1 _TArg1, ...); \
1733  _CRT_INSECURE_DEPRECATE(_SecureVFuncName) _DeclSpec _ReturnType _CC _VFuncName(_SalAttributeDst _DstType *_Dst, _TType1 _TArg1, va_list _Args);
1734 
1735  #define __DEFINE_CPP_OVERLOAD_STANDARD_NFUNC_0_2_ARGLIST(_ReturnType, _ReturnPolicy, _DeclSpec, _FuncName, _VFuncName, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2) \
1736  _CRT_INSECURE_DEPRECATE(_FuncName##_s) _DeclSpec _ReturnType __cdecl _FuncName(_SalAttributeDst _DstType *_Dst, _TType1 _TArg1, _TType2 _TArg2, ...); \
1737  _CRT_INSECURE_DEPRECATE(_VFuncName##_s) _DeclSpec _ReturnType __cdecl _VFuncName(_SalAttributeDst _DstType *_Dst, _TType1 _TArg1, _TType2 _TArg2, va_list _Args);
1738 
1739  #define __DEFINE_CPP_OVERLOAD_STANDARD_NFUNC_0_2_ARGLIST_EX(_ReturnType, _ReturnPolicy, _DeclSpec, _CC, _FuncName, _VFuncName, _SecureDstType, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2) \
1740  _CRT_INSECURE_DEPRECATE(_FuncName##_s) _DeclSpec _ReturnType _CC _FuncName(_SalAttributeDst _DstType *_Dst, _TType1 _TArg1, _TType2 _TArg2, ...); \
1741  _CRT_INSECURE_DEPRECATE(_VFuncName##_s) _DeclSpec _ReturnType _CC _VFuncName(_SalAttributeDst _DstType *_Dst, _TType1 _TArg1, _TType2 _TArg2, va_list _Args);
1742 
1743  #define __DEFINE_CPP_OVERLOAD_STANDARD_NFUNC_0_2_SIZE_EX(_DeclSpec, _FuncName, _SecureFuncName, _SecureDstType, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2) \
1744  _CRT_INSECURE_DEPRECATE(_SecureFuncName) _DeclSpec size_t __cdecl _FuncName(_SalAttributeDst _DstType *_Dst, _TType1 _TArg1, _TType2 _TArg2);
1745 
1746  #define __DEFINE_CPP_OVERLOAD_STANDARD_NFUNC_0_3_SIZE_EX(_DeclSpec, _FuncName, _SecureFuncName, _SecureDstType, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2, _TType3, _TArg3) \
1747  _CRT_INSECURE_DEPRECATE(_SecureFuncName) _DeclSpec size_t __cdecl _FuncName(_SalAttributeDst _DstType *_Dst, _TType1 _TArg1, _TType2 _TArg2, _TType3 _TArg3);
1748 
1749 
1750  #define __DECLARE_CPP_OVERLOAD_INLINE_NFUNC_0_0_EX(_ReturnType, _ReturnPolicy, _FuncName, _SecureFuncName, _SecureDstType, _DstType, _Dst) \
1751  _CRT_INSECURE_DEPRECATE(_SecureFuncName) \
1752  __inline \
1753  _ReturnType __CRTDECL _FuncName(_DstType *_Dst)
1754 
1755  #define __DEFINE_CPP_OVERLOAD_INLINE_NFUNC_0_0_EX(_ReturnType, _ReturnPolicy, _FuncName, _SecureFuncName, _SecureDstType, _DstType, _Dst)
1756 
1757  #define __DECLARE_CPP_OVERLOAD_INLINE_NFUNC_0_1_EX(_ReturnType, _ReturnPolicy, _FuncName, _SecureFuncName, _SecureDstType, _DstType, _Dst, _TType1, _TArg1) \
1758  _CRT_INSECURE_DEPRECATE(_SecureFuncName) \
1759  __inline \
1760  _ReturnType __CRTDECL _FuncName(_DstType *_Dst, _TType1 _TArg1)
1761 
1762  #define __DEFINE_CPP_OVERLOAD_INLINE_NFUNC_0_1_EX(_ReturnType, _ReturnPolicy, _FuncName, _SecureFuncName, _SecureDstType, _DstType, _Dst, _TType1, _TArg1)
1763 
1764  #define __DECLARE_CPP_OVERLOAD_INLINE_NFUNC_0_2_EX(_ReturnType, _ReturnPolicy, _FuncName, _SecureFuncName, _SecureDstType, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2) \
1765  _CRT_INSECURE_DEPRECATE(_SecureFuncName) \
1766  __inline \
1767  _ReturnType __CRTDECL _FuncName(_DstType *_Dst, _TType1 _TArg1, _TType2 _TArg2)
1768 
1769  #define __DEFINE_CPP_OVERLOAD_INLINE_NFUNC_0_2_EX(_ReturnType, _ReturnPolicy, _FuncName, _SecureFuncName, _SecureDstType, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2)
1770 
1771  #define __DECLARE_CPP_OVERLOAD_INLINE_NFUNC_0_3_EX(_ReturnType, _ReturnPolicy, _FuncName, _SecureFuncName, _SecureDstType, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2, _TType3, _TArg3) \
1772  _CRT_INSECURE_DEPRECATE(_SecureFuncName) \
1773  __inline \
1774  _ReturnType __CRTDECL _FuncName(_DstType *_Dst, _TType1 _TArg1, _TType2 _TArg2, _TType3 _TArg3)
1775 
1776  #define __DEFINE_CPP_OVERLOAD_INLINE_NFUNC_0_3_EX(_ReturnType, _ReturnPolicy, _FuncName, _SecureFuncName, _SecureDstType, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2, _TType3, _TArg3)
1777 
1778  #endif // !_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_COUNT
1779 
1780  #else // ^^^ _CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES ^^^ // vvv !_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES vvv //
1781 
1782  #define __RETURN_POLICY_SAME(_FunctionCall)
1783  #define __RETURN_POLICY_DST(_FunctionCall)
1784  #define __RETURN_POLICY_VOID(_FunctionCall)
1785  #define __EMPTY_DECLSPEC
1786 
1787  #if _CRT_FUNCTIONS_REQUIRED
1788 
1789  #define __DEFINE_CPP_OVERLOAD_STANDARD_FUNC_0_0_EX(_ReturnType, _ReturnPolicy, _DeclSpec, _FuncName, _SecureFuncName, _SalAttributeDst, _DstType, _Dst) \
1790  _CRT_INSECURE_DEPRECATE(_SecureFuncName) _DeclSpec _ReturnType __cdecl _FuncName(_SalAttributeDst _DstType *_Dst);
1791 
1792  #define __DEFINE_CPP_OVERLOAD_STANDARD_FUNC_0_0_CGETS(_ReturnType, _DeclSpec, _FuncName, _SalAttributeDst, _DstType, _Dst) \
1793  _CRT_INSECURE_DEPRECATE(_FuncName##_s) _DeclSpec _ReturnType __cdecl _FuncName(_SalAttributeDst _DstType *_Dst);
1794 
1795  #define __DEFINE_CPP_OVERLOAD_STANDARD_FUNC_0_1_EX(_ReturnType, _ReturnPolicy, _DeclSpec, _FuncName, _SecureFuncName, _SecureDstType, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1) \
1796  _CRT_INSECURE_DEPRECATE(_SecureFuncName) _DeclSpec _ReturnType __cdecl _FuncName(_SalAttributeDst _DstType *_Dst, _TType1 _TArg1);
1797 
1798  #define __DEFINE_CPP_OVERLOAD_STANDARD_FUNC_0_2_EX(_ReturnType, _ReturnPolicy, _DeclSpec, _FuncName, _SecureFuncName, _SecureDstType, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2) \
1799  _CRT_INSECURE_DEPRECATE(_SecureFuncName) _DeclSpec _ReturnType __cdecl _FuncName(_SalAttributeDst _DstType *_Dst, _TType1 _TArg1, _TType2 _TArg2);
1800 
1801  #define __DEFINE_CPP_OVERLOAD_STANDARD_FUNC_0_3_EX(_ReturnType, _ReturnPolicy, _DeclSpec, _FuncName, _SecureFuncName, _SecureDstType, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2, _TType3, _TArg3) \
1802  _CRT_INSECURE_DEPRECATE(_SecureFuncName) _DeclSpec _ReturnType __cdecl _FuncName(_SalAttributeDst _DstType *_Dst, _TType1 _TArg1, _TType2 _TArg2, _TType3 _TArg3);
1803 
1804  #define __DEFINE_CPP_OVERLOAD_STANDARD_FUNC_0_4_EX(_ReturnType, _ReturnPolicy, _DeclSpec, _FuncName, _SecureFuncName, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2, _TType3, _TArg3, _TType4, _TArg4) \
1805  _CRT_INSECURE_DEPRECATE(_SecureFuncName) _DeclSpec _ReturnType __cdecl _FuncName(_SalAttributeDst _DstType *_Dst, _TType1 _TArg1, _TType2 _TArg2, _TType3 _TArg3, _TType4 _TArg4);
1806 
1807  #define __DEFINE_CPP_OVERLOAD_STANDARD_FUNC_1_1_EX(_ReturnType, _ReturnPolicy, _DeclSpec, _FuncName, _SecureFuncName, _HType1, _HArg1, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1) \
1808  _CRT_INSECURE_DEPRECATE(_SecureFuncName) _DeclSpec _ReturnType __cdecl _FuncName(_HType1 _HArg1, _SalAttributeDst _DstType *_Dst, _TType1 _TArg1);
1809 
1810  #define __DEFINE_CPP_OVERLOAD_STANDARD_FUNC_2_0_EX(_ReturnType, _ReturnPolicy, _DeclSpec, _FuncName, _SecureFuncName, _HType1, _HArg1, _HType2, _HArg2, _SalAttributeDst, _DstType, _Dst) \
1811  _CRT_INSECURE_DEPRECATE(_SecureFuncName) _DeclSpec _ReturnType __cdecl _FuncName(_HType1 _HArg1, _HType2 _HArg2, _SalAttributeDst _DstType *_Dst);
1812 
1813  #define __DEFINE_CPP_OVERLOAD_STANDARD_FUNC_0_1_ARGLIST_EX(_ReturnType, _ReturnPolicy, _DeclSpec, _CC, _FuncName, _SecureFuncName, _VFuncName, _SecureVFuncName, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1) \
1814  _CRT_INSECURE_DEPRECATE(_SecureFuncName) _DeclSpec _ReturnType _CC _FuncName(_SalAttributeDst _DstType *_Dst, _TType1 _TArg1, ...); \
1815  _CRT_INSECURE_DEPRECATE(_SecureVFuncName) _DeclSpec _ReturnType _CC _VFuncName(_SalAttributeDst _DstType *_Dst, _TType1 _TArg1, va_list _Args);
1816 
1817  #define __DEFINE_CPP_OVERLOAD_STANDARD_FUNC_0_2_ARGLIST_EX(_ReturnType, _ReturnPolicy, _DeclSpec, _CC, _FuncName, _VFuncName, _SecureVFuncName, _SecureDstType, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2) \
1818  _CRT_INSECURE_DEPRECATE(_FuncName##_s) _DeclSpec _ReturnType _CC _FuncName(_SalAttributeDst _DstType *_Dst, _TType1 _TArg1, _TType2 _TArg2, ...); \
1819  _CRT_INSECURE_DEPRECATE(_SecureVFuncName) _DeclSpec _ReturnType _CC _VFuncName(_SalAttributeDst _DstType *_Dst, _TType1 _TArg1, _TType2 _TArg2, va_list _Args);
1820 
1821  #define __DEFINE_CPP_OVERLOAD_STANDARD_FUNC_0_2_SIZE_EX(_DeclSpec, _FuncName, _SecureFuncName, _SecureDstType, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2) \
1822  _CRT_INSECURE_DEPRECATE(_SecureFuncName) _DeclSpec size_t __cdecl _FuncName(_SalAttributeDst _DstType *_Dst, _TType1 _TArg1, _TType2 _TArg2);
1823 
1824  #define __DEFINE_CPP_OVERLOAD_STANDARD_FUNC_0_3_SIZE_EX(_DeclSpec, _FuncName, _SecureFuncName, _SecureDstType, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2, _TType3, _TArg3) \
1825  _CRT_INSECURE_DEPRECATE(_SecureFuncName) _DeclSpec size_t __cdecl _FuncName(_SalAttributeDst _DstType *_Dst, _TType1 _TArg1, _TType2 _TArg2, _TType3 _TArg3);
1826 
1827  #define __DEFINE_CPP_OVERLOAD_STANDARD_NFUNC_0_0_EX(_ReturnType, _ReturnPolicy, _DeclSpec, _FuncName, _SecureFuncName, _SalAttributeDst, _DstType, _Dst) \
1828  _CRT_INSECURE_DEPRECATE(_SecureFuncName) _DeclSpec _ReturnType __cdecl _FuncName(_SalAttributeDst _DstType *_Dst);
1829 
1830  #define __DEFINE_CPP_OVERLOAD_STANDARD_NFUNC_0_0_GETS(_ReturnType, _ReturnPolicy, _DeclSpec, _FuncName, _DstType, _Dst) \
1831  _CRT_INSECURE_DEPRECATE(_FuncName##_s) _DeclSpec _ReturnType __cdecl _FuncName(_DstType *_Dst);
1832 
1833  #define __DEFINE_CPP_OVERLOAD_STANDARD_NFUNC_0_1_EX(_ReturnType, _ReturnPolicy, _DeclSpec, _FuncName, _SecureFuncName, _SecureDstType, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1) \
1834  _CRT_INSECURE_DEPRECATE(_SecureFuncName) _DeclSpec _ReturnType __cdecl _FuncName(_SalAttributeDst _DstType *_Dst, _TType1 _TArg1);
1835 
1836  #define __DEFINE_CPP_OVERLOAD_STANDARD_NFUNC_0_2_EX(_ReturnType, _ReturnPolicy, _DeclSpec, _FuncName, _SecureFuncName, _SecureDstType, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2) \
1837  _CRT_INSECURE_DEPRECATE(_SecureFuncName) _DeclSpec _ReturnType __cdecl _FuncName(_SalAttributeDst _DstType *_Dst, _TType1 _TArg1, _TType2 _TArg2);
1838 
1839  #define __DEFINE_CPP_OVERLOAD_STANDARD_NFUNC_0_3_EX(_ReturnType, _ReturnPolicy, _DeclSpec, _FuncName, _SecureFuncName, _SecureDstType, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2, _TType3, _TArg3) \
1840  _CRT_INSECURE_DEPRECATE(_SecureFuncName) _DeclSpec _ReturnType __cdecl _FuncName(_SalAttributeDst _DstType *_Dst, _TType1 _TArg1, _TType2 _TArg2, _TType3 _TArg3);
1841 
1842  #define __DEFINE_CPP_OVERLOAD_STANDARD_NFUNC_0_4_EX(_ReturnType, _ReturnPolicy, _DeclSpec, _FuncName, _SecureFuncName, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2, _TType3, _TArg3, _TType4, _TArg4) \
1843  _CRT_INSECURE_DEPRECATE(_SecureFuncName) _DeclSpec _ReturnType __cdecl _FuncName(_SalAttributeDst _DstType *_Dst, _TType1 _TArg1, _TType2 _TArg2, _TType3 _TArg3, _TType4 _TArg4);
1844 
1845  #define __DEFINE_CPP_OVERLOAD_STANDARD_NFUNC_1_1_EX(_ReturnType, _ReturnPolicy, _DeclSpec, _FuncName, _SecureFuncName, _HType1, _HArg1, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1) \
1846  _CRT_INSECURE_DEPRECATE(_SecureFuncName) _DeclSpec _ReturnType __cdecl _FuncName(_HType1 _HArg1, _SalAttributeDst _DstType *_Dst, _TType1 _TArg1);
1847 
1848  #define __DEFINE_CPP_OVERLOAD_STANDARD_NFUNC_2_0_EX(_ReturnType, _ReturnPolicy, _DeclSpec, _FuncName, _SecureFuncName, _HType1, _HArg1, _HType2, _HArg2, _SalAttributeDst, _DstType, _Dst) \
1849  _CRT_INSECURE_DEPRECATE(_SecureFuncName) _DeclSpec _ReturnType __cdecl _FuncName(_HType1 _HArg1, _HType2 _HArg2, _SalAttributeDst _DstType *_Dst);
1850 
1851  #define __DEFINE_CPP_OVERLOAD_STANDARD_NFUNC_0_1_ARGLIST_EX(_ReturnType, _ReturnPolicy, _DeclSpec, _CC, _FuncName, _SecureFuncName, _VFuncName, _SecureVFuncName, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1) \
1852  _CRT_INSECURE_DEPRECATE(_SecureFuncName) _DeclSpec _ReturnType _CC _FuncName(_SalAttributeDst _DstType *_Dst, _TType1 _TArg1, ...); \
1853  _CRT_INSECURE_DEPRECATE(_SecureVFuncName) _DeclSpec _ReturnType _CC _VFuncName(_SalAttributeDst _DstType *_Dst, _TType1 _TArg1, va_list _Args);
1854 
1855  #define __DEFINE_CPP_OVERLOAD_STANDARD_NFUNC_0_2_ARGLIST(_ReturnType, _ReturnPolicy, _DeclSpec, _FuncName, _VFuncName, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2) \
1856  _CRT_INSECURE_DEPRECATE(_FuncName##_s) _DeclSpec _ReturnType __cdecl _FuncName(_SalAttributeDst _DstType *_Dst, _TType1 _TArg1, _TType2 _TArg2, ...); \
1857  _CRT_INSECURE_DEPRECATE(_VFuncName##_s) _DeclSpec _ReturnType __cdecl _VFuncName(_SalAttributeDst _DstType *_Dst, _TType1 _TArg1, _TType2 _TArg2, va_list _Args);
1858 
1859  #define __DEFINE_CPP_OVERLOAD_STANDARD_NFUNC_0_2_ARGLIST_EX(_ReturnType, _ReturnPolicy, _DeclSpec, _CC, _FuncName, _VFuncName, _SecureDstType, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2) \
1860  _CRT_INSECURE_DEPRECATE(_FuncName##_s) _DeclSpec _ReturnType _CC _FuncName(_SalAttributeDst _DstType *_Dst, _TType1 _TArg1, _TType2 _TArg2, ...); \
1861  _CRT_INSECURE_DEPRECATE(_VFuncName##_s) _DeclSpec _ReturnType _CC _VFuncName(_SalAttributeDst _DstType *_Dst, _TType1 _TArg1, _TType2 _TArg2, va_list _Args);
1862 
1863  #define __DEFINE_CPP_OVERLOAD_STANDARD_NFUNC_0_2_SIZE_EX(_DeclSpec, _FuncName, _SecureFuncName, _SecureDstType, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2) \
1864  _CRT_INSECURE_DEPRECATE(_SecureFuncName) _DeclSpec size_t __cdecl _FuncName(_SalAttributeDst _DstType *_Dst, _TType1 _TArg1, _TType2 _TArg2);
1865 
1866  #define __DEFINE_CPP_OVERLOAD_STANDARD_NFUNC_0_3_SIZE_EX(_DeclSpec, _FuncName, _SecureFuncName, _SecureDstType, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2, _TType3, _TArg3) \
1867  _CRT_INSECURE_DEPRECATE(_SecureFuncName) _DeclSpec size_t __cdecl _FuncName(_SalAttributeDst _DstType *_Dst, _TType1 _TArg1, _TType2 _TArg2, _TType3 _TArg3);
1868 
1869 
1870  #define __DECLARE_CPP_OVERLOAD_INLINE_FUNC_0_0_EX(_ReturnType, _ReturnPolicy, _FuncName, _SecureFuncName, _SecureDstType, _DstType, _Dst) \
1871  _CRT_INSECURE_DEPRECATE(_SecureFuncName) \
1872  __inline \
1873  _ReturnType __CRTDECL _FuncName(_DstType *_Dst)
1874 
1875  #define __DEFINE_CPP_OVERLOAD_INLINE_FUNC_0_0_EX(_ReturnType, _ReturnPolicy, _FuncName, _SecureFuncName, _SecureDstType, _DstType, _Dst)
1876 
1877  #define __DECLARE_CPP_OVERLOAD_INLINE_FUNC_0_1_EX(_ReturnType, _ReturnPolicy, _FuncName, _SecureFuncName, _SecureDstType, _DstType, _Dst, _TType1, _TArg1) \
1878  _CRT_INSECURE_DEPRECATE(_SecureFuncName) \
1879  __inline \
1880  _ReturnType __CRTDECL _FuncName(_DstType *_Dst, _TType1 _TArg1)
1881 
1882  #define __DEFINE_CPP_OVERLOAD_INLINE_FUNC_0_1_EX(_ReturnType, _ReturnPolicy, _FuncName, _SecureFuncName, _SecureDstType, _DstType, _Dst, _TType1, _TArg1)
1883 
1884  #define __DECLARE_CPP_OVERLOAD_INLINE_FUNC_0_2_EX(_ReturnType, _ReturnPolicy, _FuncName, _SecureFuncName, _SecureDstType, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2) \
1885  _CRT_INSECURE_DEPRECATE(_SecureFuncName) \
1886  __inline \
1887  _ReturnType __CRTDECL _FuncName(_DstType *_Dst, _TType1 _TArg1, _TType2 _TArg2)
1888 
1889  #define __DEFINE_CPP_OVERLOAD_INLINE_FUNC_0_2_EX(_ReturnType, _ReturnPolicy, _FuncName, _SecureFuncName, _SecureDstType, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2)
1890 
1891  #define __DECLARE_CPP_OVERLOAD_INLINE_FUNC_0_3_EX(_ReturnType, _ReturnPolicy, _FuncName, _SecureFuncName, _SecureDstType, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2, _TType3, _TArg3) \
1892  _CRT_INSECURE_DEPRECATE(_SecureFuncName) \
1893  __inline \
1894  _ReturnType __CRTDECL _FuncName(_DstType *_Dst, _TType1 _TArg1, _TType2 _TArg2, _TType3 _TArg3)
1895 
1896  #define __DEFINE_CPP_OVERLOAD_INLINE_FUNC_0_3_EX(_ReturnType, _ReturnPolicy, _FuncName, _SecureFuncName, _SecureDstType, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2, _TType3, _TArg3)
1897 
1898  #define __DECLARE_CPP_OVERLOAD_INLINE_NFUNC_0_0_EX(_ReturnType, _ReturnPolicy, _FuncName, _SecureFuncName, _SecureDstType, _DstType, _Dst) \
1899  _CRT_INSECURE_DEPRECATE(_SecureFuncName) \
1900  __inline \
1901  _ReturnType __CRTDECL _FuncName(_DstType *_Dst)
1902 
1903  #define __DEFINE_CPP_OVERLOAD_INLINE_NFUNC_0_0_EX(_ReturnType, _ReturnPolicy, _FuncName, _SecureFuncName, _SecureDstType, _DstType, _Dst)
1904 
1905  #define __DECLARE_CPP_OVERLOAD_INLINE_NFUNC_0_1_EX(_ReturnType, _ReturnPolicy, _FuncName, _SecureFuncName, _SecureDstType, _DstType, _Dst, _TType1, _TArg1) \
1906  _CRT_INSECURE_DEPRECATE(_SecureFuncName) \
1907  __inline \
1908  _ReturnType __CRTDECL _FuncName(_DstType *_Dst, _TType1 _TArg1)
1909 
1910  #define __DEFINE_CPP_OVERLOAD_INLINE_NFUNC_0_1_EX(_ReturnType, _ReturnPolicy, _FuncName, _SecureFuncName, _SecureDstType, _DstType, _Dst, _TType1, _TArg1)
1911 
1912  #define __DECLARE_CPP_OVERLOAD_INLINE_NFUNC_0_2_EX(_ReturnType, _ReturnPolicy, _FuncName, _SecureFuncName, _SecureDstType, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2) \
1913  _CRT_INSECURE_DEPRECATE(_SecureFuncName) \
1914  __inline \
1915  _ReturnType __CRTDECL _FuncName(_DstType *_Dst, _TType1 _TArg1, _TType2 _TArg2)
1916 
1917  #define __DEFINE_CPP_OVERLOAD_INLINE_NFUNC_0_2_EX(_ReturnType, _ReturnPolicy, _FuncName, _SecureFuncName, _SecureDstType, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2)
1918 
1919  #define __DECLARE_CPP_OVERLOAD_INLINE_NFUNC_0_3_EX(_ReturnType, _ReturnPolicy, _FuncName, _SecureFuncName, _SecureDstType, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2, _TType3, _TArg3) \
1920  _CRT_INSECURE_DEPRECATE(_SecureFuncName) \
1921  __inline \
1922  _ReturnType __CRTDECL _FuncName(_DstType *_Dst, _TType1 _TArg1, _TType2 _TArg2, _TType3 _TArg3)
1923 
1924  #define __DEFINE_CPP_OVERLOAD_INLINE_NFUNC_0_3_EX(_ReturnType, _ReturnPolicy, _FuncName, _SecureFuncName, _SecureDstType, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2, _TType3, _TArg3)
1925 
1926  #else // ^^^ _CRT_FUNCTIONS_REQUIRED ^^^ // vvv !_CRT_FUNCTIONS_REQUIRED vvv //
1927 
1928  #define __DEFINE_CPP_OVERLOAD_STANDARD_FUNC_0_0_EX(...)
1929  #define __DEFINE_CPP_OVERLOAD_STANDARD_FUNC_0_0_CGETS(...)
1930  #define __DEFINE_CPP_OVERLOAD_STANDARD_FUNC_0_1_EX(...)
1931  #define __DEFINE_CPP_OVERLOAD_STANDARD_FUNC_0_2_EX(...)
1932  #define __DEFINE_CPP_OVERLOAD_STANDARD_FUNC_0_3_EX(...)
1933  #define __DEFINE_CPP_OVERLOAD_STANDARD_FUNC_0_4_EX(...)
1934  #define __DEFINE_CPP_OVERLOAD_STANDARD_FUNC_1_1_EX(...)
1935  #define __DEFINE_CPP_OVERLOAD_STANDARD_FUNC_2_0_EX(...)
1936  #define __DEFINE_CPP_OVERLOAD_STANDARD_FUNC_0_1_ARGLIST_EX(...)
1937  #define __DEFINE_CPP_OVERLOAD_STANDARD_FUNC_0_2_ARGLIST_EX(...)
1938  #define __DEFINE_CPP_OVERLOAD_STANDARD_FUNC_0_2_SIZE_EX(...)
1939  #define __DEFINE_CPP_OVERLOAD_STANDARD_FUNC_0_3_SIZE_EX(...)
1940  #define __DEFINE_CPP_OVERLOAD_STANDARD_NFUNC_0_0_EX(...)
1941  #define __DEFINE_CPP_OVERLOAD_STANDARD_NFUNC_0_0_GETS(...)
1942  #define __DEFINE_CPP_OVERLOAD_STANDARD_NFUNC_0_1_EX(...)
1943  #define __DEFINE_CPP_OVERLOAD_STANDARD_NFUNC_0_2_EX(...)
1944  #define __DEFINE_CPP_OVERLOAD_STANDARD_NFUNC_0_3_EX(...)
1945  #define __DEFINE_CPP_OVERLOAD_STANDARD_NFUNC_0_4_EX(...)
1946  #define __DEFINE_CPP_OVERLOAD_STANDARD_NFUNC_1_1_EX(...)
1947  #define __DEFINE_CPP_OVERLOAD_STANDARD_NFUNC_2_0_EX(...)
1948  #define __DEFINE_CPP_OVERLOAD_STANDARD_NFUNC_0_1_ARGLIST_EX(...)
1949  #define __DEFINE_CPP_OVERLOAD_STANDARD_NFUNC_0_2_ARGLIST(...)
1950  #define __DEFINE_CPP_OVERLOAD_STANDARD_NFUNC_0_2_ARGLIST_EX(...)
1951  #define __DEFINE_CPP_OVERLOAD_STANDARD_NFUNC_0_2_SIZE_EX(...)
1952  #define __DEFINE_CPP_OVERLOAD_STANDARD_NFUNC_0_3_SIZE_EX(...)
1953  #define __DECLARE_CPP_OVERLOAD_INLINE_FUNC_0_0_EX(...)
1954  #define __DEFINE_CPP_OVERLOAD_INLINE_FUNC_0_0_EX(...)
1955  #define __DECLARE_CPP_OVERLOAD_INLINE_FUNC_0_1_EX(...)
1956  #define __DEFINE_CPP_OVERLOAD_INLINE_FUNC_0_1_EX(...)
1957  #define __DECLARE_CPP_OVERLOAD_INLINE_FUNC_0_2_EX(...)
1958  #define __DEFINE_CPP_OVERLOAD_INLINE_FUNC_0_2_EX(...)
1959  #define __DECLARE_CPP_OVERLOAD_INLINE_FUNC_0_3_EX(...)
1960  #define __DEFINE_CPP_OVERLOAD_INLINE_FUNC_0_3_EX(...)
1961  #define __DECLARE_CPP_OVERLOAD_INLINE_NFUNC_0_0_EX(...)
1962  #define __DEFINE_CPP_OVERLOAD_INLINE_NFUNC_0_0_EX(...)
1963  #define __DECLARE_CPP_OVERLOAD_INLINE_NFUNC_0_1_EX(...)
1964  #define __DEFINE_CPP_OVERLOAD_INLINE_NFUNC_0_1_EX(...)
1965  #define __DECLARE_CPP_OVERLOAD_INLINE_NFUNC_0_2_EX(...)
1966  #define __DEFINE_CPP_OVERLOAD_INLINE_NFUNC_0_2_EX(...)
1967  #define __DECLARE_CPP_OVERLOAD_INLINE_NFUNC_0_3_EX(...)
1968  #define __DEFINE_CPP_OVERLOAD_INLINE_NFUNC_0_3_EX(...)
1969 
1970  #endif // !_CRT_FUNCTIONS_REQUIRED
1971  #endif // !_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES
1972 #endif
1973 
1974 
1975 
unsigned int _locale_lc_codepage
Definition: corecrt.h:486
Definition: corecrt.h:489
#define _ACRTIMP
Definition: corecrt.h:27
Definition: corecrt.h:482
_Mbstatet mbstate_t
Definition: corecrt.h:503
unsigned short wint_t
Definition: corecrt.h:477
unsigned short _State
Definition: corecrt.h:500
_Bool __crt_bool
Definition: corecrt.h:139
struct __crt_locale_data * locinfo
Definition: corecrt.h:491
int errno_t
Definition: corecrt.h:476
unsigned short wctype_t
Definition: corecrt.h:478
size_t rsize_t
Definition: corecrt.h:527
#define _CRT_BEGIN_C_HEADER
Definition: vcruntime.h:73
_ACRTIMP __declspec(noreturn) void __cdecl _invalid_parameter_noinfo_noreturn(void)
unsigned int uintptr_t
Definition: vadefs.h:30
_In_opt_z_ wchar_t const * _FunctionName
Definition: corecrt.h:253
#define _In_opt_z_
Definition: sal.h:311
__time64_t time_t
Definition: corecrt.h:517
unsigned long _Wchar
Definition: corecrt.h:499
#define _In_
Definition: sal.h:305
_In_ wctype_t _Type
Definition: corecrt_wctype.h:111
long __time32_t
Definition: corecrt.h:479
_In_opt_z_ wchar_t const _In_opt_z_ wchar_t const _In_ unsigned int _LineNo
Definition: corecrt.h:253
_CRT_BEGIN_C_HEADER typedef void(__CRTDECL *terminate_handler)()
struct __crt_locale_pointers __crt_locale_pointers
#define _ACRTIMP_ALT
Definition: corecrt.h:34
unsigned short const * _locale_pctype
Definition: corecrt.h:484
char int *typedef int(__CRTDECL *_CRT_REPORT_HOOKW)(int
Definition: crtdbg.h:45
_ACRTIMP_ALT void __cdecl _invalid_parameter_noinfo(void)
_In_opt_z_ wchar_t const _In_opt_z_ wchar_t const * _FileName
Definition: corecrt.h:253
#define _CRT_END_C_HEADER
Definition: vcruntime.h:76
__int64 __time64_t
Definition: corecrt.h:480
struct __crt_multibyte_data * mbcinfo
Definition: corecrt.h:492
struct _Mbstatet _Mbstatet
_Field_range_(1, 2) int _locale_mb_cur_max
Definition: corecrt.h:497
_In_opt_z_ wchar_t const _In_opt_z_ wchar_t const _In_ unsigned int _In_ uintptr_t _Reserved
Definition: corecrt.h:253
__crt_locale_pointers * _locale_t
Definition: corecrt.h:495