#ifndef _MAGICKCORE_METHOD_ATTRIBUTE_H
#define _MAGICKCORE_METHOD_ATTRIBUTE_H
#if defined(__cplusplus) || defined(c_plusplus)
extern "C" {
#endif
#if defined(__BORLANDC__) && defined(_DLL)
# pragma message("BCBMagick lib DLL export interface")
# define _MAGICKDLL_
# define _MAGICKLIB_
# define MAGICKCORE_MODULES_SUPPORT
# undef MAGICKCORE_BUILD_MODULES
#endif
#if defined(MAGICKCORE_WINDOWS_SUPPORT) && !defined(__CYGWIN__)
# define MagickPrivate
# if defined(_MT) && defined(_DLL) && !defined(_MAGICKDLL_) && !defined(_LIB)
# define _MAGICKDLL_
# endif
# if defined(_MAGICKDLL_)
# if defined(_VISUALC_)
# pragma warning( disable: 4273 )
# endif
# if !defined(_MAGICKLIB_)
# if defined(__clang__) || defined(__GNUC__)
# define MagickExport __attribute__ ((dllimport))
# else
# define MagickExport __declspec(dllimport)
# endif
# if defined(_VISUALC_)
# pragma message( "MagickCore lib DLL import interface" )
# endif
# else
# if defined(__clang__) || defined(__GNUC__)
# define MagickExport __attribute__ ((dllexport))
# else
# define MagickExport __declspec(dllexport)
# endif
# if defined(_VISUALC_)
# pragma message( "MagickCore lib DLL export interface" )
# endif
# endif
# else
# define MagickExport
# if defined(_VISUALC_)
# pragma message( "MagickCore lib static interface" )
# endif
# endif
# if defined(_DLL) && !defined(_LIB)
# if defined(__clang__) || defined(__GNUC__)
# define ModuleExport __attribute__ ((dllexport))
# else
# define ModuleExport __declspec(dllexport)
# endif
# if defined(_VISUALC_)
# pragma message( "MagickCore module DLL export interface" )
# endif
# else
# define ModuleExport
# if defined(_VISUALC_)
# pragma message( "MagickCore module static interface" )
# endif
# endif
# if defined(_VISUALC_)
# pragma warning(disable : 4018)
# pragma warning(disable : 4068)
# pragma warning(disable : 4244)
# pragma warning(disable : 4142)
# pragma warning(disable : 4800)
# pragma warning(disable : 4786)
# pragma warning(disable : 4996)
# endif
#else
# if defined(__clang__) || (__GNUC__ >= 4)
# define MagickExport __attribute__ ((visibility ("default")))
# define MagickPrivate __attribute__ ((visibility ("hidden")))
# else
# define MagickExport
# define MagickPrivate
# endif
# define ModuleExport MagickExport
#endif
#define MagickSignature 0xabacadabUL
#if !defined(MaxTextExtent)
# define MaxTextExtent 4096
#endif
#if defined(MAGICKCORE_HAVE___ATTRIBUTE__)
# define magick_aligned(x,y) x __attribute__((aligned(y)))
# define magick_attribute __attribute__
# define magick_unused(x) magick_unused_ ## x __attribute__((unused))
# define magick_unreferenced(x)
#elif defined(MAGICKCORE_WINDOWS_SUPPORT) && !defined(__CYGWIN__)
# define magick_aligned(x,y) __declspec(align(y)) x
# define magick_attribute(x)
# define magick_unused(x) x
# define magick_unreferenced(x) (x)
#else
# define magick_aligned(x,y)
# define magick_attribute(x)
# define magick_unused(x) x
# define magick_unreferenced(x)
#endif
#if !defined(__clang__) && (((__GNUC__) > 4) || ((__GNUC__ == 4) && (__GNUC_MINOR__ >= 3)))
# define magick_alloc_size(x) __attribute__((__alloc_size__(x)))
# define magick_alloc_sizes(x,y) __attribute__((__alloc_size__(x,y)))
#else
# define magick_alloc_size(x)
# define magick_alloc_sizes(x,y)
#endif
#if defined(__clang__) || (((__GNUC__) > 4) || ((__GNUC__ == 4) && (__GNUC_MINOR__ >= 3)))
# define magick_cold_spot __attribute__((__cold__))
# define magick_hot_spot __attribute__((__hot__))
#else
# define magick_cold_spot
# define magick_hot_spot
#endif
#if defined(__cplusplus) || defined(c_plusplus)
}
#endif
#endif