- for (i = 0; i < n; ++i)
- info->is_cst[i] = isl_map_plain_is_fixed(map, isl_dim_in, i,
- &info->cst->el[i]);
+ for (i = 0; i < n; ++i) {
+ isl_val *v;
+
+ v = isl_map_plain_get_val_if_fixed(map, isl_dim_in, i);
+ if (!v)
+ goto error;
+ info->is_cst[i] = !isl_val_is_nan(v);
+ if (info->is_cst[i])
+ info->cst = isl_vec_set_element_val(info->cst, i, v);
+ else
+ isl_val_free(v);
+ }