From 5ecc5166d93b5e259a1526d63f418f67fa94f7a5 Mon Sep 17 00:00:00 2001 From: Tobias Grosser Date: Wed, 31 May 2017 08:46:29 +0000 Subject: [PATCH] [isl++] Update bindings This change removes the requirement for explicit conversions from isl::boolean to isl::bool, which resolves a compilation error on OSX. Suggested-by: Siddharth Bhat llvm-svn: 304288 --- polly/lib/External/isl/include/isl-noexceptions.h | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/polly/lib/External/isl/include/isl-noexceptions.h b/polly/lib/External/isl/include/isl-noexceptions.h index 4887ee997b2b..8f9f16924624 100644 --- a/polly/lib/External/isl/include/isl-noexceptions.h +++ b/polly/lib/External/isl/include/isl-noexceptions.h @@ -57,7 +57,7 @@ public: bool is_false() const { return val == isl_bool_false; } bool is_true() const { return val == isl_bool_true; } - explicit operator bool() const { + operator bool() const { ISLPP_ASSERT(!is_error(), "IMPLEMENTATION ERROR: Unhandled error state"); return is_true(); } @@ -1170,6 +1170,7 @@ public: inline isl::boolean is_equal(const isl::map &map2) const; inline isl::boolean is_identity() const; inline isl::boolean is_injective() const; + inline isl::boolean is_product() const; inline isl::boolean is_single_valued() const; inline isl::boolean is_strict_subset(const isl::map &map2) const; inline isl::boolean is_subset(const isl::map &map2) const; @@ -2349,6 +2350,7 @@ public: inline isl::boolean is_equal(const isl::space &space2) const; inline isl::boolean is_map() const; inline isl::boolean is_params() const; + inline isl::boolean is_product() const; inline isl::boolean is_range(const isl::space &space2) const; inline isl::boolean is_set() const; inline isl::boolean is_wrapping() const; @@ -6603,6 +6605,11 @@ isl::boolean map::is_injective() const { return manage(res); } +isl::boolean map::is_product() const { + auto res = isl_map_is_product(get()); + return manage(res); +} + isl::boolean map::is_single_valued() const { auto res = isl_map_is_single_valued(get()); return manage(res); @@ -11314,6 +11321,11 @@ isl::boolean space::is_params() const { return manage(res); } +isl::boolean space::is_product() const { + auto res = isl_space_is_product(get()); + return manage(res); +} + isl::boolean space::is_range(const isl::space &space2) const { auto res = isl_space_is_range(get(), space2.get()); return manage(res); -- GitLab