* @brief Solving the Minimum Assignment Problem using the Hungarian Method.
* @version $Id$
*/
-#ifdef HAVE_CONFIG_H
-# include "config.h"
-#endif
+#include "config.h"
#include <stdio.h>
#include <stdlib.h>
DEBUG_ONLY(firm_dbg_module_t *dbg);
};
-static INLINE void *get_init_mem(struct obstack *obst, long sz) {
+static inline void *get_init_mem(struct obstack *obst, long sz) {
void *p = obstack_alloc(obst, sz);
memset(p, 0, sz);
return p;
*/
hungarian_problem_t *hungarian_new(int rows, int cols, int width, int match_type) {
int i;
- hungarian_problem_t *p = xmalloc(sizeof(*p));
-
- memset(p, 0, sizeof(p[0]));
+ hungarian_problem_t *p = XMALLOCZ(hungarian_problem_t);
FIRM_DBG_REGISTER(p->dbg, "firm.hungarian");
m = p->num_rows;
n = p->num_cols;
- col_mate = xcalloc(p->num_rows, sizeof(col_mate[0]));
- unchosen_row = xcalloc(p->num_rows, sizeof(unchosen_row[0]));
- row_dec = xcalloc(p->num_rows, sizeof(row_dec[0]));
- slack_row = xcalloc(p->num_rows, sizeof(slack_row[0]));
+ col_mate = XMALLOCNZ(int, p->num_rows);
+ unchosen_row = XMALLOCNZ(int, p->num_rows);
+ row_dec = XMALLOCNZ(int, p->num_rows);
+ slack_row = XMALLOCNZ(int, p->num_rows);
- row_mate = xcalloc(p->num_cols, sizeof(row_mate[0]));
- parent_row = xcalloc(p->num_cols, sizeof(parent_row[0]));
- col_inc = xcalloc(p->num_cols, sizeof(col_inc[0]));
- slack = xcalloc(p->num_cols, sizeof(slack[0]));
+ row_mate = XMALLOCNZ(int, p->num_cols);
+ parent_row = XMALLOCNZ(int, p->num_cols);
+ col_inc = XMALLOCNZ(int, p->num_cols);
+ slack = XMALLOCNZ(int, p->num_cols);
memset(assignment, -1, m * sizeof(assignment[0]));