diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-27 18:24:20 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-27 18:24:20 +0000 |
commit | 483eb2f56657e8e7f419ab1a4fab8dce9ade8609 (patch) | |
tree | e5d88d25d870d5dedacb6bbdbe2a966086a0a5cf /src/boost/libs/winapi/test/run/dll_abi.cpp | |
parent | Initial commit. (diff) | |
download | ceph-upstream.tar.xz ceph-upstream.zip |
Adding upstream version 14.2.21.upstream/14.2.21upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'src/boost/libs/winapi/test/run/dll_abi.cpp')
-rw-r--r-- | src/boost/libs/winapi/test/run/dll_abi.cpp | 62 |
1 files changed, 62 insertions, 0 deletions
diff --git a/src/boost/libs/winapi/test/run/dll_abi.cpp b/src/boost/libs/winapi/test/run/dll_abi.cpp new file mode 100644 index 00000000..0ab7546e --- /dev/null +++ b/src/boost/libs/winapi/test/run/dll_abi.cpp @@ -0,0 +1,62 @@ +/* + * Copyright Andrey Semashev 2018. + * Distributed under the Boost Software License, Version 1.0. + * (See accompanying file LICENSE_1_0.txt or copy at + * http://www.boost.org/LICENSE_1_0.txt) + */ +/*! + * \file dll_abi.cpp + * \author Andrey Semashev + * \date 09.03.2018 + * + * \brief This file contains ABI test for dll.hpp + */ + +#include <boost/winapi/dll.hpp> +#include <windows.h> +#include "abi_test_tools.hpp" + +int main() +{ +#if BOOST_WINAPI_PARTITION_DESKTOP || BOOST_WINAPI_PARTITION_SYSTEM + + BOOST_WINAPI_TEST_TYPE_SAME(FARPROC); + BOOST_WINAPI_TEST_TYPE_SAME(NEARPROC); + BOOST_WINAPI_TEST_TYPE_SAME(PROC); + + BOOST_WINAPI_TEST_CONSTANT(DONT_RESOLVE_DLL_REFERENCES); + BOOST_WINAPI_TEST_CONSTANT(LOAD_WITH_ALTERED_SEARCH_PATH); + +#if defined(LOAD_IGNORE_CODE_AUTHZ_LEVEL) + // This one is not defined by MinGW + BOOST_WINAPI_TEST_CONSTANT(LOAD_IGNORE_CODE_AUTHZ_LEVEL); +#endif + +#if !defined(BOOST_NO_ANSI_APIS) + BOOST_WINAPI_TEST_FUNCTION_SIGNATURE(LoadLibraryA); + BOOST_WINAPI_TEST_FUNCTION_SIGNATURE(LoadLibraryExA); + BOOST_WINAPI_TEST_FUNCTION_SIGNATURE(GetModuleHandleA); + BOOST_WINAPI_TEST_FUNCTION_SIGNATURE(GetModuleFileNameA); +#endif // !defined(BOOST_NO_ANSI_APIS) + BOOST_WINAPI_TEST_FUNCTION_SIGNATURE(LoadLibraryW); + BOOST_WINAPI_TEST_FUNCTION_SIGNATURE(LoadLibraryExW); + BOOST_WINAPI_TEST_FUNCTION_SIGNATURE(GetModuleHandleW); + BOOST_WINAPI_TEST_FUNCTION_SIGNATURE(GetModuleFileNameW); + +#if BOOST_WINAPI_PARTITION_APP || BOOST_WINAPI_PARTITION_SYSTEM + BOOST_WINAPI_TEST_FUNCTION_SIGNATURE(FreeLibrary); +#endif + +#if !defined(UNDER_CE) + BOOST_WINAPI_TEST_FUNCTION_SIGNATURE(GetProcAddress); +#else + BOOST_WINAPI_TEST_FUNCTION_SIGNATURE(GetProcAddressA); + BOOST_WINAPI_TEST_FUNCTION_SIGNATURE(GetProcAddressW); +#endif + + BOOST_WINAPI_TEST_STRUCT(MEMORY_BASIC_INFORMATION, (BaseAddress)(AllocationBase)(AllocationProtect)(RegionSize)(State)(Protect)(Type)); + +#endif // BOOST_WINAPI_PARTITION_DESKTOP || BOOST_WINAPI_PARTITION_SYSTEM + + return boost::report_errors(); +} |