diff options
| author | David Blaikie <dblaikie@gmail.com> | 2015-08-19 23:07:27 +0000 |
|---|---|---|
| committer | David Blaikie <dblaikie@gmail.com> | 2015-08-19 23:07:27 +0000 |
| commit | c7aaacde670e455dfae518e6f52c2252cad9bab2 (patch) | |
| tree | 8bc2a6e489a5690d357a31b58bb3a2209a0781ae /llvm/unittests | |
| parent | 87d89d2be122f33bd6559c8061964abd3263af91 (diff) | |
| download | bcm5719-llvm-c7aaacde670e455dfae518e6f52c2252cad9bab2.tar.gz bcm5719-llvm-c7aaacde670e455dfae518e6f52c2252cad9bab2.zip | |
Allow Optionals to be compared to None
This is something like nullopt in std::experimental::optional. Optional
could already be constructed from None, so this seems like an obvious
extension from there.
I have a use in a future patch for Clang, though it may not go that
way/end up used - so this seemed worth committing now regardless.
llvm-svn: 245518
Diffstat (limited to 'llvm/unittests')
| -rw-r--r-- | llvm/unittests/ADT/OptionalTest.cpp | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/llvm/unittests/ADT/OptionalTest.cpp b/llvm/unittests/ADT/OptionalTest.cpp index 92c4eec487a..18b59e31581 100644 --- a/llvm/unittests/ADT/OptionalTest.cpp +++ b/llvm/unittests/ADT/OptionalTest.cpp @@ -377,5 +377,18 @@ TEST_F(OptionalTest, MoveGetValueOr) { #endif // LLVM_HAS_RVALUE_REFERENCE_THIS +TEST_F(OptionalTest, NoneComparison) { + Optional<int> o; + EXPECT_EQ(o, None); + EXPECT_EQ(None, o); + EXPECT_FALSE(o != None); + EXPECT_FALSE(None != o); + o = 3; + EXPECT_FALSE(o == None); + EXPECT_FALSE(None == o); + EXPECT_TRUE(o != None); + EXPECT_TRUE(None != o); +} + } // end anonymous namespace |

