24
24
* Put at the beginning and end of headerfiles.
27
#define BEGIN_DECLS extern "C" {
27
#define S_BEGIN_DECLS extern "C" {
32
32
#endif /*__cplusplus*/
34
34
#if defined(__GNUC__)
35
#define DEPRECATED __attribute__((deprecated))
36
#define UNUSED __attribute__((unused))
37
#define ALIGNED_8 __attribute__((aligned (8)))
38
#define ALIGNED_16 __attribute__((aligned (16)))
40
#define DEPRECATED __declspec(deprecated)
35
#define S_DEPRECATED __attribute__((deprecated))
36
#define S_UNUSED __attribute__((unused))
37
#define S_ALIGNED_8 __attribute__((aligned (8)))
38
#define S_ALIGNED_16 __attribute__((aligned (16)))
39
#elif defined(__MSC_VER)
40
#define S_DEPRECATED __declspec(deprecated)
41
41
// TODO, check if this rely works in MSVC.
42
#define UNUSED __pragma(warning(suppress:4100))
43
#define ALIGNED_8 __declspec(align(8))
44
#define ALIGNED_16 __declspec(align(16))
42
#define S_UNUSED __pragma(warning(suppress:4100))
43
#define S_ALIGNED_8 __declspec(align(8))
44
#define S_ALIGNED_16 __declspec(align(16))
52
#if defined(__STDC_NO_ATOMICS__)
52
#if __STDC_NO_ATOMICS__
53
#define __S_ATOMIC__ volatile
53
55
#define __S_ATOMIC__ __Atomic
58
#if defined(__GNUC__) && SSTS_BUILDING
59
#define S_EXPORTED __attribute__((__visibility__("default")))
60
#elif defined(__MSC_VER) && SSTS_BUILDING
61
#define S_EXPORTED __declspec(dllexport)
62
#elif defined(__MSC_VER)
63
#define S_EXPORTED __declspec(dllimport)
55
#define __S_ATOMIC__ volatile
62
71
#include <stdlib.h>