Make llvm::Regex non-copyable but movable.

Based on a patch by Maciej Piechotka.

llvm-svn: 198334
diff --git a/llvm/unittests/Support/RegexTest.cpp b/llvm/unittests/Support/RegexTest.cpp
index 30ea2c5..c3a8085 100644
--- a/llvm/unittests/Support/RegexTest.cpp
+++ b/llvm/unittests/Support/RegexTest.cpp
@@ -140,4 +140,19 @@
   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
+
 }