#undef PARSE_ERROR_CONSTRUCTOR
/** Exception raised by xbt_enforce, when an assertion is not satisfied */
-#define ASSERTION_ERROR_CONSTRUCTOR \
- template<typename... Args> AssertionError(const char * f, Args... args) \
- : Exception(XBT_THROW_POINT, xbt::string_printf(f, args...)) \
- { \
- }
-
-DECLARE_SIMGRID_EXCEPTION(AssertionError, ASSERTION_ERROR_CONSTRUCTOR);
-#undef ASSERTION_ERROR_CONSTRUCTOR
+DECLARE_SIMGRID_EXCEPTION(AssertionError);
#undef DECLARE_SIMGRID_EXCEPTION
#define _xbt_enforce_ARGN(cond, ...) \
do { \
if (!(cond)) { \
- throw simgrid::AssertionError(__VA_ARGS__); \
+ throw simgrid::AssertionError(XBT_THROW_POINT, xbt::string_printf(__VA_ARGS__)); \
} \
} while (0)