isl_flow_free: return NULL
authorSven Verdoolaege <sven.verdoolaege@gmail.com>
Fri, 17 Aug 2018 12:26:48 +0000 (17 14:26 +0200)
committerSven Verdoolaege <sven.verdoolaege@gmail.com>
Fri, 17 Aug 2018 12:43:16 +0000 (17 14:43 +0200)
This simplifies error handling.

Signed-off-by: Sven Verdoolaege <sven.verdoolaege@gmail.com>
doc/user.pod
include/isl/flow.h
isl_flow.c

index c8e57b5..f348664 100644 (file)
@@ -9383,7 +9383,8 @@ A lower-level interface is provided by the following functions.
                void *user);
        __isl_give isl_map *isl_flow_get_no_source(
                __isl_keep isl_flow *deps, int must);
-       void isl_flow_free(__isl_take isl_flow *deps);
+       __isl_null isl_flow *isl_flow_free(
+               __isl_take isl_flow *deps);
 
 The function C<isl_access_info_compute_flow> performs the actual
 dependence analysis.  The other functions are used to construct
index f606549..be2f6c5 100644 (file)
@@ -63,7 +63,7 @@ isl_stat isl_flow_foreach(__isl_keep isl_flow *deps,
                void *user),
        void *user);
 __isl_give isl_map *isl_flow_get_no_source(__isl_keep isl_flow *deps, int must);
-void isl_flow_free(__isl_take isl_flow *deps);
+__isl_null isl_flow *isl_flow_free(__isl_take isl_flow *deps);
 
 isl_ctx *isl_flow_get_ctx(__isl_keep isl_flow *deps);
 
index 946be84..47bb837 100644 (file)
@@ -519,12 +519,12 @@ __isl_give isl_map *isl_flow_get_no_source(__isl_keep isl_flow *deps, int must)
                return isl_set_unwrap(isl_set_copy(deps->may_no_source));
 }
 
-void isl_flow_free(__isl_take isl_flow *deps)
+__isl_null isl_flow *isl_flow_free(__isl_take isl_flow *deps)
 {
        int i;
 
        if (!deps)
-               return;
+               return NULL;
        isl_set_free(deps->must_no_source);
        isl_set_free(deps->may_no_source);
        if (deps->dep) {
@@ -533,6 +533,8 @@ void isl_flow_free(__isl_take isl_flow *deps)
                free(deps->dep);
        }
        free(deps);
+
+       return NULL;
 }
 
 isl_ctx *isl_flow_get_ctx(__isl_keep isl_flow *deps)