[cfe-dev] Enhancing the DataFlowSolver in clang

Ted Kremenek kremenek at apple.com
Mon Jul 19 17:04:49 PDT 2010


On Jul 15, 2010, at 7:04 AM, Simone Pellegrini wrote:

> For what I understood from the code, the first time ProcessMerge() is called there is no edge data, therefore the last instruction in the function will always overwrite the existing block data with the one returned by the function TF.SetTopValue(), and in my case I don't have any TopValue to set.
> 
> To solve the problem I introduced a flag which track whether edge data exists. If not, the D.getBlockDataMap()[B] will not be overwritten.

This seems reasonable.  Does it work with the existing analyses?  (i.e., do all the clang tests pass)



More information about the cfe-dev mailing list