# define _XBT_GNUC_FORMAT( arg_idx ) \
__attribute__((__format_arg__ (arg_idx)))
# define _XBT_GNUC_NORETURN __attribute__((__noreturn__))
-# define _XBT_GNUC_UNUSED __attribute__((unused))
+# define _XBT_GNUC_UNUSED __attribute__((__unused__))
# define _XBT_GNUC_CONSTRUCTOR __attribute__((__constructor__))
# define _XBT_GNUC_DESTRUCTOR __attribute__((__destructor__))
# undef _XBT_NEED_INIT_PRAGMA
-#else /* !__GNUC__ */
+#else /* !__GNUC__ */
# define _XBT_GNUC_PRINTF( format_idx, arg_idx )
# define _XBT_GNUC_SCANF( format_idx, arg_idx )
# define _XBT_GNUC_FORMAT( arg_idx )
# define _XBT_GNUC_DESTRUCTOR
# define _XBT_NEED_INIT_PRAGMA 1
-#endif /* !__GNUC__ */
+#endif /* !__GNUC__ */
/* 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_FUNC__ __func__ /* ISO-C99 compliant */
+# define _XBT_FUNCTION __func__ /* ISO-C99 compliant */
#else
# define _XBT_FUNCTION "function"
#endif
-#ifndef __cplusplus
+#ifdef DOXYGEN
+# define XBT_INLINE
+#else
+# ifndef __cplusplus
# if defined(__GNUC__) && ! defined(__STRICT_ANSI__)
# define XBT_INLINE inline
# elif (defined(__STDC__) && defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L)
# else
# define XBT_INLINE
# endif
-# else
-# define XBT_INLINE inline
+# else
+# if defined (__VISUALC__)
+# define XBT_INLINE __inline
+# else
+# define XBT_INLINE inline
+# endif
+# endif /* __cplusplus */
#endif
/* improvable on gcc (by evaluating arguments only once), but wouldn't be portable */
* Function calling convention (not used for now)
*/
-#ifdef _WIN32
+#ifdef _XBT_WIN32
# ifndef _XBT_CALL
# define _XBT_CALL __cdecl
# endif
# define XBT_IMPORT_NO_EXPORT(type) type
# define XBT_PUBLIC_DATA(type) extern type
-
/* Link against the DLL */
-#elif (defined(_WIN32) && !defined(DLL_EXPORT) && !defined(DLL_STATIC))
+#elif (defined(_XBT_WIN32) && !defined(DLL_EXPORT) && !defined(DLL_STATIC))
# define XBT_PUBLIC(type) __declspec(dllimport) type
# define XBT_EXPORT_NO_IMPORT(type) type
# define XBT_IMPORT_NO_EXPORT(type) __declspec(dllimport) type
#define XBT_BACKTRACE_SIZE 10 /* FIXME: better place? Do document */
SG_END_DECL()
-#endif /* XBT_MISC_H */
+#endif /* XBT_MISC_H */