@@ -2479,8 +2499,10 @@ void MallocChecker::printState(raw_ostre
for (RegionStateTy::iterator I = RS.begin(), E = RS.end(); I != E; ++I) {
      const RefState *RefS = State->get<RegionState>(I.getKey());
      AllocationFamily Family = RefS->getAllocationFamily();
- Optional<MallocChecker::CheckKind> CheckKind = getCheckIfTracked(Family);
-
+ auto CheckKind = getCheckIfTracked(MakeVecFromCK(CK_MallocOptimistic, + CK_MallocPessimistic, + CK_NewDeleteChecker),
+                                         Family);

This is a generic printing routine, which is used for debugging. Why is this restricted to the specific checkers?
This particular branch handles leak detecting checkers which are CK_MallocOptimistic, CK_MallocPessimistic, and CK_NewDeleteChecker.
Wrong answer:)

Here we try to deduce the concrete checker from the family. This is impossible as there are several checkers responsible for each family.
For now I left the behavior to those before the commit.
This should be fixed somehow. There are combinations of enabled/disabled checkers when the name of the checker may be deduced from the family unambiguously. I'll think about it.

--
Anton

_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits

Reply via email to