[llvm] d82e993 - [ADT] 'PointerUnion::is' returns 'bool'
Brian Gesiak via llvm-commits
llvm-commits at lists.llvm.org
Sat Feb 1 13:50:33 PST 2020
Author: Brian Gesiak
Date: 2020-02-01T16:50:20-05:00
New Revision: d82e993cd34ae6fda1eeb57c1b4d3d2629960664
URL: https://github.com/llvm/llvm-project/commit/d82e993cd34ae6fda1eeb57c1b4d3d2629960664
DIFF: https://github.com/llvm/llvm-project/commit/d82e993cd34ae6fda1eeb57c1b4d3d2629960664.diff
LOG: [ADT] 'PointerUnion::is' returns 'bool'
Summary:
The return type of 'PointerUnion::is' has been 'int' since it was first
added in March 2009, in SVN r67987, or
https://github.com/llvm/llvm-project/commit/a9c6de15fb3.
The only other change to this member function was a clang-format applied
in December 2015, in SVN r256513, or
https://github.com/llvm/llvm-project/commit/548a49aacc0.
However, since the return value is the result of a `==` comparison, an
implicit cast must be made converting the boolean result to an `int`.
Change the return type to `bool` to remove the need for such a cast.
Test Plan:
I ran llvm-project `check-all` under ASAN, no failures were reported
(other than obviously unrelated tests that were already failing in
ASAN buildbots).
Reviewers: gribozavr, gribozavr2, rsmith, bkramer, dblaikie
Subscribers: dexonsmith, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D73836
Added:
Modified:
llvm/include/llvm/ADT/PointerUnion.h
Removed:
################################################################################
diff --git a/llvm/include/llvm/ADT/PointerUnion.h b/llvm/include/llvm/ADT/PointerUnion.h
index 40b7b000da40..8a5ecfce5a30 100644
--- a/llvm/include/llvm/ADT/PointerUnion.h
+++ b/llvm/include/llvm/ADT/PointerUnion.h
@@ -181,7 +181,7 @@ class PointerUnion
explicit operator bool() const { return !isNull(); }
/// Test if the Union currently holds the type matching T.
- template <typename T> int is() const {
+ template <typename T> bool is() const {
constexpr int Index = pointer_union_detail::TypeIndex<T, PTs...>::Index;
static_assert(Index < sizeof...(PTs),
"PointerUnion::is<T> given type not in the union");
More information about the llvm-commits
mailing list