X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/6591c9df82136dbb9cb6e5b09651b3441f02e3e8..c41f6db03c1da0871287a5b70f919ab44278d938:/include/xbt/misc.h diff --git a/include/xbt/misc.h b/include/xbt/misc.h index bdb27d2017..03257f5f88 100644 --- a/include/xbt/misc.h +++ b/include/xbt/misc.h @@ -33,11 +33,13 @@ /* inline and __FUNCTION__ are only in GCC when -ansi is off */ #if defined(__GNUC__) && ! defined(__STRICT_ANSI__) - -# define _XBT_GNUC_FUNCTION __FUNCTION__ +# define _XBT_FUNCTION __FUNCTION__ +# define _XBT_INLINE inline +#elif (defined(__STDC__) && defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L) +# define _XBT_FUNC__ __func__ /* ISO-C99 compliant */ # define _XBT_INLINE inline #else -# define _XBT_GNUC_FUNCTION "function" +# define _XBT_FUNCTION "function" # define _XBT_INLINE #endif @@ -55,31 +57,45 @@ #define XBT_MAX_CHANNEL 10 /* FIXME: killme */ /*! C++ users need love */ -#ifndef BEGIN_DECL +#ifndef SG_BEGIN_DECL # ifdef __cplusplus -# define BEGIN_DECL() extern "C" { +# define SG_BEGIN_DECL() extern "C" { # else -# define BEGIN_DECL() +# define SG_BEGIN_DECL() # endif #endif /*! C++ users need love */ -#ifndef END_DECL +#ifndef SG_END_DECL # ifdef __cplusplus -# define END_DECL() } +# define SG_END_DECL() } # else -# define END_DECL() +# define SG_END_DECL() # endif #endif /* End of cruft for C++ */ -BEGIN_DECL() +SG_BEGIN_DECL() /* Dunno where to place this: needed by config and amok */ typedef struct { char *name; int port; } xbt_host_t; -END_DECL() +const char *xbt_procname(void); + + +/* Generic function type */ + + typedef void (void_f_ppvoid_t)(void**); + typedef void (void_f_pvoid_t) (void*); + + typedef int (int_f_pvoid_pvoid_t) (void*,void*); + + typedef int (*int_f_void_t) (void); /* FIXME: rename it to int_pf_void_t */ + +#define XBT_BACKTRACE_SIZE 10 /* FIXME: better place? Do document */ + +SG_END_DECL() #endif /* XBT_MISC_H */