r214067 - DataflowWorklist.h: Appease msc17 -- Split a private constructor to DataflowWorklistBase.
NAKAMURA Takumi
geek4civic at gmail.com
Mon Jul 28 04:33:50 PDT 2014
Author: chapuni
Date: Mon Jul 28 06:33:49 2014
New Revision: 214067
URL: http://llvm.org/viewvc/llvm-project?rev=214067&view=rev
Log:
DataflowWorklist.h: Appease msc17 -- Split a private constructor to DataflowWorklistBase.
MSC17 isn't capable to invoke other constructors in its scope.
Modified:
cfe/trunk/include/clang/Analysis/Analyses/DataflowWorklist.h
Modified: cfe/trunk/include/clang/Analysis/Analyses/DataflowWorklist.h
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Analysis/Analyses/DataflowWorklist.h?rev=214067&r1=214066&r2=214067&view=diff
==============================================================================
--- cfe/trunk/include/clang/Analysis/Analyses/DataflowWorklist.h (original)
+++ cfe/trunk/include/clang/Analysis/Analyses/DataflowWorklist.h Mon Jul 28 06:33:49 2014
@@ -18,13 +18,14 @@
namespace clang {
-class DataflowWorklist {
+class DataflowWorklistBase {
+protected:
PostOrderCFGView::iterator PO_I, PO_E;
PostOrderCFGView::BlockOrderCompare comparator;
SmallVector<const CFGBlock *, 20> worklist;
llvm::BitVector enqueuedBlocks;
- DataflowWorklist(const CFG &cfg, PostOrderCFGView &view)
+ DataflowWorklistBase(const CFG &cfg, PostOrderCFGView &view)
: PO_I(view.begin()), PO_E(view.end()),
comparator(view.getComparator()),
enqueuedBlocks(cfg.getNumBlockIDs(), true) {
@@ -35,10 +36,13 @@ class DataflowWorklist {
++PO_I;
}
}
+};
+
+class DataflowWorklist : DataflowWorklistBase {
public:
DataflowWorklist(const CFG &cfg, AnalysisDeclContext &Ctx)
- : DataflowWorklist(cfg, *Ctx.getAnalysis<PostOrderCFGView>()) {}
+ : DataflowWorklistBase(cfg, *Ctx.getAnalysis<PostOrderCFGView>()) {}
void enqueueBlock(const CFGBlock *block);
void enqueuePredecessors(const CFGBlock *block);
More information about the cfe-commits
mailing list