xref: /llvm-project/llvm/unittests/Support/DynamicLibrary/PipSqueak.h (revision 390111511614aa7343397cc8a936ea810e3eba9e)
1 //===- llvm/unittest/Support/DynamicLibrary/PipSqueak.h -------------------===//
2 //
3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4 // See https://llvm.org/LICENSE.txt for license information.
5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6 //
7 //===----------------------------------------------------------------------===//
8 
9 #ifndef LLVM_PIPSQUEAK_H
10 #define LLVM_PIPSQUEAK_H
11 
12 #if defined(_WIN32) && !defined(__GNUC__)
13 // Disable warnings from inclusion of xlocale & exception
14 #pragma warning(push)
15 #pragma warning(disable: 4530)
16 #pragma warning(disable: 4577)
17 #include <string>
18 #include <vector>
19 #pragma warning(pop)
20 #else
21 #include <string>
22 #include <vector>
23 #endif
24 
25 #ifdef _WIN32
26 #define PIPSQUEAK_EXPORT __declspec(dllexport)
27 #elif defined(__MVS__)
28 #define PIPSQUEAK_EXPORT __attribute__((__visibility__("default")))
29 #else
30 #define PIPSQUEAK_EXPORT
31 #endif
32 
33 extern "C" PIPSQUEAK_EXPORT const char *TestA();
34 
35 #endif
36