X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/f0d93b15ae2bf3f001c5f31c9ffad72b29ffcb70..27e8e9f73613b93381c59e87e4c68ec16933b2f0:/include/xbt/misc.h diff --git a/include/xbt/misc.h b/include/xbt/misc.h index 24ea9c680b..44a3b79ba1 100644 --- a/include/xbt/misc.h +++ b/include/xbt/misc.h @@ -56,6 +56,18 @@ # define XBT_INLINE inline #endif +/* improvable on gcc (by evaluating arguments only once), but wouldn't be portable */ +#ifdef MIN +# undef MIN +#endif +#define MIN(a,b) ((a)<(b)?(a):(b)) + +#ifdef MAX +# undef MAX +#endif +#define MAX(a,b) ((a)>(b)?(a):(b)) + + /* * Function calling convention (not used for now) */ @@ -115,14 +127,14 @@ # define XBT_PUBLIC(type) __declspec(dllexport) type # define XBT_EXPORT_NO_IMPORT(type) __declspec(dllexport) type # define XBT_IMPORT_NO_EXPORT(type) type -# define XBT_PUBLIC_DATA __declspec(dllexport) +# define XBT_PUBLIC_DATA(type) __declspec(dllexport) type /* Pack everything up statically */ #elif defined(DLL_STATIC) # define XBT_PUBLIC(type) type # define XBT_EXPORT_NO_IMPORT(type) type # define XBT_IMPORT_NO_EXPORT(type) type -# define XBT_PUBLIC_DATA +# define XBT_PUBLIC_DATA(type) type /* Link against the DLL */ @@ -130,14 +142,14 @@ # 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_PUBLIC_DATA __declspec(dllimport) +# define XBT_PUBLIC_DATA(type) __declspec(dllimport) type -/* Non-UNIX build. Let's keep sain here ;) */ +/* UNIX build. Let's keep sain here ;) */ #else # define XBT_PUBLIC(type) extern type # define XBT_EXPORT_NO_IMPORT(type) type # define XBT_IMPORT_NO_EXPORT(type) type -# define XBT_PUBLIC_DATA +# define XBT_PUBLIC_DATA(type) extern type #endif #if !defined (max) && !defined(__cplusplus)