diff options
Diffstat (limited to 'polly/lib/External/isl/isl_ast_graft.c')
| -rw-r--r-- | polly/lib/External/isl/isl_ast_graft.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/polly/lib/External/isl/isl_ast_graft.c b/polly/lib/External/isl/isl_ast_graft.c index 6d90dd2b49e..de061c7871c 100644 --- a/polly/lib/External/isl/isl_ast_graft.c +++ b/polly/lib/External/isl/isl_ast_graft.c @@ -10,6 +10,7 @@ * B.P. 105 - 78153 Le Chesnay, France */ +#include <isl/space.h> #include <isl_ast_private.h> #include <isl_ast_build_expr.h> #include <isl_ast_build_private.h> @@ -1230,6 +1231,7 @@ __isl_give isl_ast_graft_list *isl_ast_graft_list_merge( disjoint = isl_set_is_disjoint(graft->guard, list1->p[j - 1]->guard); if (disjoint < 0) { + isl_ast_graft_free(graft); list1 = isl_ast_graft_list_free(list1); break; } @@ -1253,10 +1255,12 @@ __isl_give isl_ast_graft_list *isl_ast_graft_list_merge( break; } - if (j < 0) + if (j < 0) { + isl_ast_graft_free(graft); isl_die(isl_ast_build_get_ctx(build), isl_error_internal, "element failed to get inserted", break); + } first = j + 1; if (!list1) |

