mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-07-26 07:39:45 -06:00
update wil to 0b2d6c2d822bb301e7558a14ee66d567c14f5dc7
This commit is contained in:
39
Externals/WIL/include/wil/wistd_config.h
vendored
39
Externals/WIL/include/wil/wistd_config.h
vendored
@ -39,7 +39,7 @@
|
||||
#define _WISTD_CONFIG_H_
|
||||
|
||||
// DO NOT add *any* additional includes to this file -- there should be no dependencies from its usage
|
||||
#include <stddef.h> // For size_t and other necessary types
|
||||
#include <cstddef> // For size_t and other necessary types
|
||||
|
||||
/// @cond
|
||||
#if defined(_MSC_VER) && !defined(__clang__)
|
||||
@ -107,6 +107,29 @@
|
||||
# define __WI_LIBCPP_COMPILER_IBM
|
||||
#endif
|
||||
|
||||
#if defined(__WI_LIBCPP_COMPILER_MSVC)
|
||||
#define __WI_PUSH_WARNINGS __pragma(warning(push))
|
||||
#define __WI_POP_WARNINGS __pragma(warning(pop))
|
||||
#elif defined(__WI_LIBCPP_COMPILER_CLANG)
|
||||
#define __WI_PUSH_WARNINGS __pragma(clang diagnostic push)
|
||||
#define __WI_POP_WARNINGS __pragma(clang diagnostic pop)
|
||||
#else
|
||||
#define __WI_PUSH_WARNINGS
|
||||
#define __WI_POP_WARNINGS
|
||||
#endif
|
||||
|
||||
#ifdef __WI_LIBCPP_COMPILER_MSVC
|
||||
#define __WI_MSVC_DISABLE_WARNING(id) __pragma(warning(disable: id))
|
||||
#else
|
||||
#define __WI_MSVC_DISABLE_WARNING(id)
|
||||
#endif
|
||||
|
||||
#ifdef __WI_LIBCPP_COMPILER_CLANG
|
||||
#define __WI_CLANG_DISABLE_WARNING(warning) __pragma(clang diagnostic ignored #warning)
|
||||
#else
|
||||
#define __WI_CLANG_DISABLE_WARNING(warning)
|
||||
#endif
|
||||
|
||||
// NOTE: MSVC, which is what we primarily target, is severly underrepresented in libc++ and checks such as
|
||||
// __has_feature(...) are always false for MSVC, even when the feature being tested _is_ present in MSVC. Therefore, we
|
||||
// instead modify all checks to be __WI_HAS_FEATURE_IS_UNION, etc., which provides the correct value for MSVC and falls
|
||||
@ -448,7 +471,7 @@
|
||||
|
||||
namespace wistd // ("Windows Implementation" std)
|
||||
{
|
||||
typedef decltype(__nullptr) nullptr_t;
|
||||
using nullptr_t = decltype(__nullptr);
|
||||
|
||||
template <class _T1, class _T2 = _T1>
|
||||
struct __less
|
||||
@ -531,18 +554,18 @@ namespace wistd // ("Windows Implementation" std)
|
||||
template <class _Arg, class _Result>
|
||||
struct __WI_LIBCPP_TEMPLATE_VIS unary_function
|
||||
{
|
||||
typedef _Arg argument_type;
|
||||
typedef _Result result_type;
|
||||
using argument_type = _Arg;
|
||||
using result_type = _Result;
|
||||
};
|
||||
|
||||
template <class _Arg1, class _Arg2, class _Result>
|
||||
struct __WI_LIBCPP_TEMPLATE_VIS binary_function
|
||||
{
|
||||
typedef _Arg1 first_argument_type;
|
||||
typedef _Arg2 second_argument_type;
|
||||
typedef _Result result_type;
|
||||
using first_argument_type = _Arg1;
|
||||
using second_argument_type = _Arg2;
|
||||
using result_type = _Result;
|
||||
};
|
||||
}
|
||||
/// @endcond
|
||||
|
||||
#endif _WISTD_CONFIG_H_
|
||||
#endif // _WISTD_CONFIG_H_
|
||||
|
Reference in New Issue
Block a user