Older compilers won't like the inline virtual destructor in the header file
authorReid Spencer <rspencer@reidspencer.com>
Mon, 25 Apr 2005 01:01:35 +0000 (01:01 +0000)
committerReid Spencer <rspencer@reidspencer.com>
Mon, 25 Apr 2005 01:01:35 +0000 (01:01 +0000)
so we put the destructor in Pass.cpp and make it non-inline.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21520 91177308-0d34-0410-b5e6-96231b3b80d8

include/llvm/PassAnalysisSupport.h
lib/VMCore/Pass.cpp

index 9f70d7e3852f4e3aaf2a136fe2ac9a61b0e4e58e..415f93cc67bb9a358818e209ac3e15bde12a0902 100644 (file)
@@ -105,7 +105,7 @@ public:
 // is used to pull analysis information out of them.
 //
 struct AnalysisResolver {
-  virtual ~AnalysisResolver() {}
+  virtual ~AnalysisResolver();
   virtual Pass *getAnalysisOrNullUp(AnalysisID ID) const = 0;
   virtual Pass *getAnalysisOrNullDown(AnalysisID ID) const = 0;
   virtual void addPass(ImmutablePass *IP, AnalysisUsage &AU) = 0;
index 4ed7847567798c1fe668002f1ae0a4c3c645723c..dc547ae47c6f4b785ff36c89d7b6ba3110b189aa 100644 (file)
@@ -45,6 +45,8 @@ void RegisterPassBase::setOnlyUsesCFG() {
 //   AnalysisResolver Class Implementation
 //
 
+AnalysisResolver::~AnalysisResolver() {
+}
 void AnalysisResolver::setAnalysisResolver(Pass *P, AnalysisResolver *AR) {
   assert(P->Resolver == 0 && "Pass already in a PassManager!");
   P->Resolver = AR;
@@ -494,3 +496,4 @@ void PassRegistrationListener::enumeratePasses() {
            E = PassInfoMap->end(); I != E; ++I)
       passEnumerate(I->second);
 }
+