You've already forked linux-packaging-mono
Imported Upstream version 5.18.0.234
Former-commit-id: 8071ec1a8c5eaa9be24b41745add19297608001f
This commit is contained in:
parent
f32dbaf0b2
commit
212f6bafcb
42
external/llvm/unittests/ADT/FunctionRefTest.cpp
vendored
42
external/llvm/unittests/ADT/FunctionRefTest.cpp
vendored
@ -1,42 +0,0 @@
|
||||
//===- llvm/unittest/ADT/MakeUniqueTest.cpp - make_unique unit tests ------===//
|
||||
//
|
||||
// The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
#include "llvm/ADT/STLExtras.h"
|
||||
#include "gtest/gtest.h"
|
||||
|
||||
using namespace llvm;
|
||||
|
||||
namespace {
|
||||
|
||||
// Ensure that there is a default constructor and we can test for a null
|
||||
// function_ref.
|
||||
TEST(FunctionRefTest, Null) {
|
||||
function_ref<int()> F;
|
||||
EXPECT_FALSE(F);
|
||||
|
||||
auto L = [] { return 1; };
|
||||
F = L;
|
||||
EXPECT_TRUE(F);
|
||||
|
||||
F = {};
|
||||
EXPECT_FALSE(F);
|
||||
}
|
||||
|
||||
// Ensure that copies of a function_ref copy the underlying state rather than
|
||||
// causing one function_ref to chain to the next.
|
||||
TEST(FunctionRefTest, Copy) {
|
||||
auto A = [] { return 1; };
|
||||
auto B = [] { return 2; };
|
||||
function_ref<int()> X = A;
|
||||
function_ref<int()> Y = X;
|
||||
X = B;
|
||||
EXPECT_EQ(1, Y());
|
||||
}
|
||||
|
||||
}
|
Reference in New Issue
Block a user