X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/5e472a6023eb14e7396b16fa4eb47c805d8f4acf..3f27f409dbb1f21cde182648696386708838c883:/src/xbt/ex.cpp diff --git a/src/xbt/ex.cpp b/src/xbt/ex.cpp index 50a97f1666..c4395699b9 100644 --- a/src/xbt/ex.cpp +++ b/src/xbt/ex.cpp @@ -52,17 +52,20 @@ #include "xbt/log.hpp" #include "xbt/backtrace.h" #include "xbt/backtrace.hpp" -#include "xbt/str.h" #include "src/xbt_modinter.h" /* backtrace initialization headers */ #include "simgrid/sg_config.h" /* Configuration mechanism of SimGrid */ XBT_LOG_NEW_DEFAULT_SUBCATEGORY(xbt_ex, xbt, "Exception mechanism"); +// Don't define ~xbt_ex() in ex.hpp. It is defined here to ensure that there is an unique definition of xt_ex in +// libsimgrid, but not in libsimgrid-java. Otherwise, sone tests are broken (seen with clang/libc++ on freebsd). +xbt_ex::~xbt_ex() = default; + void _xbt_throw(char* message, xbt_errcat_t errcat, int value, const char* file, int line, const char* func) { xbt_ex e(simgrid::xbt::ThrowPoint(file, line, func), message); - free(message); + xbt_free(message); e.category = errcat; e.value = value; throw e; @@ -186,7 +189,7 @@ XBT_TEST_UNIT("variables", test_variables, "variable value preservation") { xbt_ex_t ex; int r1; - int XBT_ATTRIB_UNUSED r2; + XBT_ATTRIB_UNUSED int r2; int v1; int v2;