@@ -72,8 +72,7 @@ using CR = CompareResult;
72
72
// FIXME: These AST matchers should also be exported via the
73
73
// NullPointerAnalysisModel class, for tests
74
74
auto ptrWithBinding (llvm::StringRef VarName = kVar ) {
75
- return traverse (TK_IgnoreUnlessSpelledInSource,
76
- expr (hasType (isAnyPointer ())).bind (VarName));
75
+ return expr (hasType (isAnyPointer ())).bind (VarName);
77
76
}
78
77
79
78
auto derefMatcher () {
@@ -223,14 +222,6 @@ Value *getValue(const Expr &Var, Environment &Env) {
223
222
}
224
223
225
224
return nullptr ;
226
-
227
- // Value *RootValue = Env.createValue(Var.getType());
228
- //
229
- // initializeRootValue(*RootValue, Env);
230
- //
231
- // setUnknownValue(Var, *RootValue, Env);
232
- //
233
- // return RootValue;
234
225
}
235
226
236
227
bool hasTopOrNullValue (const Value *Val, const Environment &Env) {
@@ -564,13 +555,6 @@ auto buildTransferMatchSwitch() {
564
555
.Build ();
565
556
}
566
557
567
- auto buildBranchTransferMatchSwitch () {
568
- return ASTMatchSwitchBuilder<Stmt, NullPointerAnalysisModel::TransferArgs>()
569
- // .CaseOf<CastExpr>(castExprMatcher(), matchNullCheckExpr)
570
- // .CaseOf<BinaryOperator>(equalExprMatcher(), matchEqualExpr)
571
- .Build ();
572
- }
573
-
574
558
auto buildDiagnoseMatchSwitch () {
575
559
return CFGMatchSwitchBuilder<NullCheckAfterDereferenceDiagnoser::DiagnoseArgs,
576
560
NullCheckAfterDereferenceDiagnoser::ResultType>()
@@ -587,8 +571,7 @@ auto buildDiagnoseMatchSwitch() {
587
571
588
572
NullPointerAnalysisModel::NullPointerAnalysisModel (ASTContext &Context)
589
573
: DataflowAnalysis<NullPointerAnalysisModel, NoopLattice>(Context),
590
- TransferMatchSwitch (buildTransferMatchSwitch()),
591
- BranchTransferMatchSwitch (buildBranchTransferMatchSwitch()) {}
574
+ TransferMatchSwitch (buildTransferMatchSwitch()) {}
592
575
593
576
ast_matchers::StatementMatcher NullPointerAnalysisModel::ptrValueMatcher () {
594
577
return ptrWithBinding ();
@@ -599,16 +582,6 @@ void NullPointerAnalysisModel::transfer(const CFGElement &E, NoopLattice &State,
599
582
TransferMatchSwitch (E, getASTContext (), Env);
600
583
}
601
584
602
- void NullPointerAnalysisModel::transferBranch (bool Branch, const Stmt *E,
603
- NoopLattice &State,
604
- Environment &Env) {
605
- if (!E)
606
- return ;
607
-
608
- TransferArgs Args = {Branch, Env};
609
- BranchTransferMatchSwitch (*E, getASTContext (), Args);
610
- }
611
-
612
585
void NullPointerAnalysisModel::join (QualType Type, const Value &Val1,
613
586
const Environment &Env1, const Value &Val2,
614
587
const Environment &Env2, Value &MergedVal,
0 commit comments