diff options
Diffstat (limited to 'asl/base/utility.hpp')
-rw-r--r-- | asl/base/utility.hpp | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/asl/base/utility.hpp b/asl/base/utility.hpp index 206a5b1..85c873d 100644 --- a/asl/base/utility.hpp +++ b/asl/base/utility.hpp @@ -35,6 +35,13 @@ template<typename T, typename U> return static_cast<return_type>(x); } +template<typename T> +[[nodiscard]] constexpr T* launder(T* ptr) noexcept // NOLINT + requires (!asl::is_func<T> && !asl::is_void<T>) +{ + return __builtin_launder(ptr); +} + } // namespace std namespace asl |