Go to the documentation of this file.
18 #ifndef _MAGICKWAND_METHOD_ATTRIBUTE_H
19 #define _MAGICKWAND_METHOD_ATTRIBUTE_H
21 #if defined(__cplusplus) || defined(c_plusplus)
25 #if defined(__BORLANDC__) && defined(_DLL)
26 # pragma message("BCBMagick lib DLL export interface")
29 # define MAGICKCORE_MODULES_SUPPORT
30 # undef MAGICKCORE_BUILD_MODULES
33 #if defined(MAGICKWAND_WINDOWS_SUPPORT) && !defined(__CYGWIN__)
35 # if defined(_MT) && defined(_DLL) && !defined(_MAGICKDLL_) && !defined(_LIB)
38 # if defined(_MAGICKDLL_)
39 # if defined(_VISUALC_)
40 # pragma warning( disable: 4273 )
42 # if !defined(_MAGICKLIB_)
43 # if defined(__clang__) || defined(__GNUC__)
44 # define WandExport __attribute__ ((dllimport))
46 # define WandExport __declspec(dllimport)
48 # if defined(_VISUALC_)
49 # pragma message( "MagickWand lib DLL import interface" )
52 # if defined(__clang__) || defined(__GNUC__)
53 # define WandExport __attribute__ ((dllexport))
55 # define WandExport __declspec(dllexport)
57 # if defined(_VISUALC_)
58 # pragma message( "MagickWand lib DLL export interface" )
63 # if defined(_VISUALC_)
64 # pragma message( "MagickWand lib static interface" )
68 # if defined(_DLL) && !defined(_LIB)
69 # if defined(_VISUALC_)
70 # pragma message( "MagickWand module DLL export interface" )
73 # if defined(_VISUALC_)
74 # pragma message( "MagickWand module static interface" )
78 # if defined(_VISUALC_)
79 # pragma warning(disable : 4018)
80 # pragma warning(disable : 4068)
81 # pragma warning(disable : 4244)
82 # pragma warning(disable : 4142)
83 # pragma warning(disable : 4800)
84 # pragma warning(disable : 4786)
85 # pragma warning(disable : 4996)
88 # if defined(__clang__) || (__GNUC__ >= 4)
89 # define WandExport __attribute__ ((visibility ("default")))
90 # define WandPrivate __attribute__ ((visibility ("hidden")))
97 #define WandSignature 0xabacadabUL
98 #if !defined(MaxTextExtent)
99 # define MaxTextExtent 4096
102 #if defined(MAGICKCORE_HAVE___ATTRIBUTE__)
103 # define wand_aligned(x) __attribute__((aligned(x)))
104 # define wand_attribute __attribute__
105 # define wand_unused(x) wand_unused_ ## x __attribute__((unused))
106 # define wand_unreferenced(x)
107 #elif defined(MAGICKWAND_WINDOWS_SUPPORT) && !defined(__CYGWIN__)
108 # define wand_aligned(x) __declspec(align(x))
109 # define wand_attribute(x)
110 # define wand_unused(x) x
111 # define wand_unreferenced(x) (x)
113 # define wand_aligned(x)
114 # define wand_attribute(x)
115 # define wand_unused(x) x
116 # define wand_unreferenced(x)
119 #if (defined(__clang__) || (((__GNUC__) > 4) || ((__GNUC__ == 4) && (__GNUC_MINOR__ >= 3)))) && !defined(__apple_build_version__)
120 # define wand_alloc_size(x) __attribute__((__alloc_size__(x)))
121 # define wand_alloc_sizes(x,y) __attribute__((__alloc_size__(x,y)))
122 # define wand_cold_spot __attribute__((__cold__))
123 # define wand_hot_spot __attribute__((__hot__))
125 # define wand_alloc_size(x)
126 # define wand_alloc_sizes(x,y)
127 # define wand_cold_spot
128 # define wand_hot_spot
131 #if defined(__cplusplus) || defined(c_plusplus)