-
-# define XBT_ATTRIB_NORETURN __attribute__((__noreturn__))
-# define XBT_ATTRIB_UNUSED __attribute__((__unused__))
-
-/* Constructor priorities exist since gcc 4.3. Apparently, they are however not
- * supported on Macs. */
-# if (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 3)) && !defined(__APPLE__)
-# define _XBT_GNUC_CONSTRUCTOR(prio) __attribute__((__constructor__ (prio)))
-# define _XBT_GNUC_DESTRUCTOR(prio) __attribute__((__destructor__ (prio)))
-# else
-# define _XBT_GNUC_CONSTRUCTOR(prio) __attribute__((__constructor__))
-# define _XBT_GNUC_DESTRUCTOR(prio) __attribute__((__destructor__))
-# endif
-# undef _XBT_NEED_INIT_PRAGMA
-
-#elif defined(_MSC_VER) /* Microsoft Visual Thing */
-# define XBT_ATTRIB_PRINTF( format_idx, arg_idx )
-# define XBT_ATTRIB_SCANF( format_idx, arg_idx )
-# define XBT_ATTRIB_NORETURN __declspec(noreturn)
-# define XBT_ATTRIB_UNUSED
-# define _XBT_GNUC_CONSTRUCTOR(prio)
-# define _XBT_GNUC_DESTRUCTOR(prio)
-# define _XBT_NEED_INIT_PRAGMA 1
-#else
-# define XBT_ATTRIB_PRINTF( format_idx, arg_idx )
-# define XBT_ATTRIB_SCANF( format_idx, arg_idx )
-# define XBT_ATTRIB_NORETURN
-# define XBT_ATTRIB_UNUSED
-# define _XBT_GNUC_CONSTRUCTOR(prio)
-# define _XBT_GNUC_DESTRUCTOR(prio)
-# define _XBT_NEED_INIT_PRAGMA 1
-
-#endif /* gcc or MSVC else */
-
-/* inline and __FUNCTION__ are only in GCC when -ansi is off */
-
-#if defined(__GNUC__) && ! defined(__STRICT_ANSI__)
-# define _XBT_FUNCTION __FUNCTION__
-#elif (defined(__STDC__) && defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L)
-# define _XBT_FUNCTION __func__ /* ISO-C99 compliant */
-#else
-# define _XBT_FUNCTION "function"