[llvm] r284997 - Clarify that MSVC is not the issue here anymore.

Benjamin Kramer via llvm-commits llvm-commits at lists.llvm.org
Mon Oct 24 11:11:05 PDT 2016


Author: d0k
Date: Mon Oct 24 13:11:05 2016
New Revision: 284997

URL: http://llvm.org/viewvc/llvm-project?rev=284997&view=rev
Log:
Clarify that MSVC is not the issue here anymore.

Modified:
    llvm/trunk/include/llvm/IR/PassManager.h

Modified: llvm/trunk/include/llvm/IR/PassManager.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/IR/PassManager.h?rev=284997&r1=284996&r2=284997&view=diff
==============================================================================
--- llvm/trunk/include/llvm/IR/PassManager.h (original)
+++ llvm/trunk/include/llvm/IR/PassManager.h Mon Oct 24 13:11:05 2016
@@ -241,8 +241,10 @@ public:
   ///
   /// It can be passed a flag to get debug logging as the passes are run.
   PassManager(bool DebugLogging = false) : DebugLogging(DebugLogging) {}
-  // We have to explicitly define all the special member functions because MSVC
-  // refuses to generate them.
+  // FIXME: These are equivalent to the default move constructor/move
+  // assignment. However, using = default triggers linker errors due to the
+  // explicit instantiations below. Find away to use the default and remove the
+  // duplicated code here.
   PassManager(PassManager &&Arg)
       : Passes(std::move(Arg.Passes)),
         DebugLogging(std::move(Arg.DebugLogging)) {}




More information about the llvm-commits mailing list