Explicitly define move constructor and move assignment operator to appease MSVC.
authorPeter Collingbourne <peter@pcc.me.uk>
Thu, 10 Jul 2014 04:29:06 +0000 (04:29 +0000)
committerPeter Collingbourne <peter@pcc.me.uk>
Thu, 10 Jul 2014 04:29:06 +0000 (04:29 +0000)
llvm-svn: 212679

llvm/lib/Support/SpecialCaseList.cpp

index a81ba23..4382489 100644 (file)
@@ -34,6 +34,15 @@ namespace llvm {
 /// reason for doing so is efficiency; StringSet is much faster at matching
 /// literal strings than Regex.
 struct SpecialCaseList::Entry {
+  Entry() {}
+  Entry(Entry &&Other)
+      : Strings(std::move(Other.Strings)), RegEx(std::move(Other.RegEx)) {}
+  Entry &operator=(Entry &&Other) {
+    Strings = std::move(Other.Strings);
+    RegEx = std::move(Other.RegEx);
+    return *this;
+  }
+
   StringSet<> Strings;
   std::unique_ptr<Regex> RegEx;