check_overflow(len); \
} else (void)0
-#define show_string(data) show_it(data, "s")
+#define show_string(data) \
+ if (1) { \
+ const char *show_string_data = (data); \
+ show_it(show_string_data ? show_string_data : "(null)", "s"); \
+ } else (void)0
#define show_int(data) show_it(data, "d")
#define show_double(data) show_it(data, "f")
handle_modifier:
switch (*q) {
case '\0':
- xbt_die("Layout format (%s) ending with %%\n", (char *)l->data);
+ fprintf(stderr, "Layout format (%s) ending with %%\n", (char *)l->data);
+ xbt_abort();
case '%':
*p = '%';
check_overflow(1);
break;
}
default:
- xbt_die(ERRMSG, *q, (char *)l->data);
+ fprintf(stderr, ERRMSG, *q, (char *)l->data);
+ xbt_abort();
}
} else {
*p = *q;