/*
- * Copyright 2017 Facebook, Inc.
+ * Copyright 2016-present Facebook, Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
*/
#include <folly/Expected.h>
+#include <folly/Portability.h>
#include <folly/portability/GTest.h>
#include <algorithm>
ex = makeUnexpected(-1);
// empty->moved
- ex = unique_ptr<int>(new int(6));
+ ex = std::make_unique<int>(6);
EXPECT_EQ(6, **ex);
// full->moved
- ex = unique_ptr<int>(new int(7));
+ ex = std::make_unique<int>(7);
EXPECT_EQ(7, **ex);
// move it out by move construct
EXPECT_EQ(**exIntPtr, 3);
}
-#if __clang__
+#if __CLANG_PREREQ(3, 6)
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wself-move"
#endif
ASSERT_TRUE(b.hasValue() && b.value() == "23333333");
}
-#if __clang__
+#if __CLANG_PREREQ(3, 6)
#pragma clang diagnostic pop
#endif
// Error case:
Expected<int, E> ex = Expected<std::unique_ptr<int>, E>{
unexpected, E::E1}.then([](std::unique_ptr<int> p) -> int {
- EXPECT_TRUE(false);
+ ADD_FAILURE();
return *p;
});
EXPECT_FALSE(bool(ex));
Unexpected<E>::BadExpectedAccess);
}
}
-}
+} // namespace folly