diff --git a/lib/Analysis/DomPrinter.cpp b/lib/Analysis/DomPrinter.cpp index 82e13a9ef26..f1b44d0356e 100644 --- a/lib/Analysis/DomPrinter.cpp +++ b/lib/Analysis/DomPrinter.cpp @@ -19,7 +19,6 @@ //===----------------------------------------------------------------------===// #include "llvm/Analysis/DomPrinter.h" - #include "llvm/Pass.h" #include "llvm/Function.h" #include "llvm/Analysis/CFGPrinter.h" @@ -148,10 +147,10 @@ namespace { template struct GenericGraphPrinter : public FunctionPass { - static char ID; std::string Name; - GenericGraphPrinter(std::string GraphName) : FunctionPass(&ID) { + GenericGraphPrinter(std::string GraphName, const void *ID) + : FunctionPass(ID) { Name = GraphName; } @@ -181,27 +180,27 @@ struct GenericGraphPrinter : public FunctionPass { struct DomPrinter : public GenericGraphPrinter { static char ID; - DomPrinter() : GenericGraphPrinter("dom"){} + DomPrinter() : GenericGraphPrinter("dom", &ID) {} }; struct DomOnlyPrinter : public GenericGraphPrinter { static char ID; - DomOnlyPrinter() : GenericGraphPrinter("domonly"){} + DomOnlyPrinter() : GenericGraphPrinter("domonly", &ID) {} }; struct PostDomPrinter : public GenericGraphPrinter { static char ID; PostDomPrinter() : - GenericGraphPrinter("postdom"){} + GenericGraphPrinter("postdom", &ID) {} }; struct PostDomOnlyPrinter : public GenericGraphPrinter { static char ID; PostDomOnlyPrinter() : - GenericGraphPrinter("postdomonly"){} + GenericGraphPrinter("postdomonly", &ID) {} }; } // end anonymous namespace