git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@1918
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
int line;
char *func; /**< to be freed only for remote exceptions */
/* Backtrace */
int line;
char *func; /**< to be freed only for remote exceptions */
/* Backtrace */
+ void *bt[XBT_BACKTRACE_SIZE];
__xbt_ex_ctx()->ctx_ex.file = (char*)__FILE__; \
__xbt_ex_ctx()->ctx_ex.line = __LINE__; \
__xbt_ex_ctx()->ctx_ex.func = (char*)_XBT_FUNCTION; \
__xbt_ex_ctx()->ctx_ex.file = (char*)__FILE__; \
__xbt_ex_ctx()->ctx_ex.line = __LINE__; \
__xbt_ex_ctx()->ctx_ex.func = (char*)_XBT_FUNCTION; \
- __xbt_ex_ctx()->ctx_ex.used = backtrace((void**)__xbt_ex_ctx()->ctx_ex.bt,10);\
+ __xbt_ex_ctx()->ctx_ex.used = backtrace((void**)__xbt_ex_ctx()->ctx_ex.bt,XBT_BACKTRACE_SIZE);\
/* deal with the exception */ \
if (__xbt_ex_ctx()->ctx_mctx == NULL) \
__xbt_ex_terminate((xbt_ex_t *)&(__xbt_ex_ctx()->ctx_ex)); /* not catched */\
/* deal with the exception */ \
if (__xbt_ex_ctx()->ctx_mctx == NULL) \
__xbt_ex_terminate((xbt_ex_t *)&(__xbt_ex_ctx()->ctx_ex)); /* not catched */\
typedef int (int_f_pvoid_pvoid_t) (void*,void*);
typedef int (*int_f_void_t) (void); /* FIXME: rename it to int_pf_void_t */
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 */