Make llvm::Regex non-copyable but movable.

Based on a patch by Maciej Piechotka.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@198334 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
David Blaikie
2014-01-02 19:04:59 +00:00
parent f828e82891
commit c265f06697
3 changed files with 33 additions and 2 deletions

View File

@ -140,4 +140,19 @@ TEST_F(RegexTest, IsValid) {
EXPECT_EQ("invalid character range", Error);
}
#if LLVM_HAS_RVALUE_REFERENCES
TEST_F(RegexTest, MoveConstruct) {
Regex r1("^[0-9]+$");
Regex r2(std::move(r1));
EXPECT_TRUE(r2.match("916"));
}
TEST_F(RegexTest, MoveAssign) {
Regex r1("^[0-9]+$");
Regex r2("abc");
r2 = std::move(r1);
EXPECT_TRUE(r2.match("916"));
}
#endif
}