#ifdef USE_OLD_PASSMANAGER
virtual void addToPassManager(ModulePassManager *PM, AnalysisUsage &AU);
+#else
+ // Force out-of-line virtual method.
+ virtual ~ModulePass();
#endif
};
template<typename Trait> friend class PassManagerT;
friend class ModulePassManager;
virtual void addToPassManager(ModulePassManager *PM, AnalysisUsage &AU);
+#else
+ // Force out-of-line virtual method.
+ virtual ~ImmutablePass();
#endif
};
void ModulePass::addToPassManager(ModulePassManager *PM, AnalysisUsage &AU) {
PM->addPass(this, AU);
}
+#else
+// Force out-of-line virtual method.
+ModulePass::~ModulePass() { }
#endif
bool Pass::mustPreserveAnalysisID(const PassInfo *AnalysisID) const {
AnalysisUsage &AU) {
PM->addPass(this, AU);
}
+#else
+// Force out-of-line virtual method.
+ImmutablePass::~ImmutablePass() { }
#endif
//===----------------------------------------------------------------------===//