Как я могу выполнить следующие действия в соответствии с ISO (C99)?ISO C эквивалент брекет-групп в выражениях
#define MALLOC(type, length, message) ({ \
type * a_##__LINE__ = (type *)malloc((length) * sizeof(type)); \
assert(message && (a_##__LINE__ != NULL)); \
a_##__LINE__; \
})
double **matrix = MALLOC(double *, height, "Failed to reserve");
NB: для компиляции я использую: НКА -s = c99 -pedantic ...
Я буду использовать функцию, как вы предлагали, и избегать использования heisenbug (спасибо, что указали ее). – Alexandru
+1 для heisenbug :) – pmg