I'm sad to have another one-shot visitor, rather than just doing the work up 
front in trackNullOrUndef. Now that suppression can take a significant portion 
of analysis time, we should probably not add new visitors as freely as we once 
would have.

> +  // The message send could be null if the receiver is null.
> +  if (const Expr *Receiver = NilReceiverBRVisitor::getReceiver(S)) {
> +    report.addVisitor(new NilReceiverBRVisitor(Receiver,
> +                                               EnableNullFPSuppression));
> +  }
> +

if (...) {
        trackNullOrUndefValue(N, Receiver, report);
}

This seems much more efficient—no restarting of path generation due to the new 
visitor.
_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits

Reply via email to