isl_map_drop_basic_map: consistently keep basic map argument
authorSven Verdoolaege <skimo@kotnet.org>
Sun, 15 Nov 2009 16:31:52 +0000 (17:31 +0100)
committerSven Verdoolaege <skimo@kotnet.org>
Sun, 15 Nov 2009 16:31:52 +0000 (17:31 +0100)
include/isl_map.h
isl_map.c

index 0c274a4..ac30874 100644 (file)
@@ -208,8 +208,8 @@ int isl_basic_map_foreach_lexmin(__isl_keep isl_basic_map *bmap,
 void isl_basic_map_dump(__isl_keep isl_basic_map *bmap, FILE *out, int indent);
 
 struct isl_basic_map *isl_map_copy_basic_map(struct isl_map *map);
-struct isl_map *isl_map_drop_basic_map(struct isl_map *map,
-                                               struct isl_basic_map *bmap);
+__isl_give isl_map *isl_map_drop_basic_map(__isl_take isl_map *map,
+                                               __isl_keep isl_basic_map *bmap);
 
 int isl_basic_map_fast_is_fixed(struct isl_basic_map *bmap,
        enum isl_dim_type type, unsigned pos, isl_int *val);
index 583ce6e..156ba0b 100644 (file)
--- a/isl_map.c
+++ b/isl_map.c
@@ -4877,8 +4877,8 @@ struct isl_basic_set *isl_set_copy_basic_set(struct isl_set *set)
                isl_map_copy_basic_map((struct isl_map *)set);
 }
 
-struct isl_map *isl_map_drop_basic_map(struct isl_map *map,
-                                               struct isl_basic_map *bmap)
+__isl_give isl_map *isl_map_drop_basic_map(__isl_take isl_map *map,
+                                               __isl_keep isl_basic_map *bmap)
 {
        int i;
 
@@ -4898,11 +4898,9 @@ struct isl_map *isl_map_drop_basic_map(struct isl_map *map,
                map->n--;
                return map;
        }
-       isl_basic_map_free(bmap);
        return map;
 error:
        isl_map_free(map);
-       isl_basic_map_free(bmap);
        return NULL;
 }