The LLVM patch https://reviews.llvm.org/D143920 changes the type signature of `transfer()`. Since this is a concept and not a virtual interface, we can prepare for this change by adding the new overload.
PiperOrigin-RevId: 509801501
diff --git a/nullability_verification/pointer_nullability_analysis.cc b/nullability_verification/pointer_nullability_analysis.cc
index f795194..a8a1a16 100644
--- a/nullability_verification/pointer_nullability_analysis.cc
+++ b/nullability_verification/pointer_nullability_analysis.cc
@@ -459,12 +459,12 @@
NonFlowSensitiveTransferer(buildNonFlowSensitiveTransferer()),
FlowSensitiveTransferer(buildFlowSensitiveTransferer()) {}
-void PointerNullabilityAnalysis::transfer(const CFGElement* Elt,
+void PointerNullabilityAnalysis::transfer(const CFGElement& Elt,
PointerNullabilityLattice& Lattice,
Environment& Env) {
TransferState<PointerNullabilityLattice> State(Lattice, Env);
- NonFlowSensitiveTransferer(*Elt, getASTContext(), State);
- FlowSensitiveTransferer(*Elt, getASTContext(), State);
+ NonFlowSensitiveTransferer(Elt, getASTContext(), State);
+ FlowSensitiveTransferer(Elt, getASTContext(), State);
}
BoolValue& mergeBoolValues(BoolValue& Bool1, const Environment& Env1,