[cfe-commits] [PATCH] Set region size in GRRegionVals transfer function

Ted Kremenek kremenek at apple.com
Thu Nov 6 23:39:37 PST 2008


On Nov 6, 2008, at 10:01 PM, Zhongxing Xu wrote:

> Also I think we should have a clear client for the extent before/ 
> when we implement the extent mechanism. One direct client is the  
> array element access checker.

This can be (potentially) be done in GRExprEngine, just like we handle  
Null dereferences.

> It should be in the EvalLocation() method to check if the array  
> access is out of bound.

That or EvalLoad().  An out-of-bounds error occurs on a load or store.

> But not all store manager support this check.

That's fine.  The default behavior is that all accesses are valid.

> Shall we make a new transfer function to do this check?

Perhaps, but I think all the logic can be divided between the  
StoreManager and GRExprEngine.  The StoreManager is responsible for  
reasoning about what is valid memory, and GRExprEngine handles loads/ 
stores.  What would there be left to put in a specific transfer  
function?




More information about the cfe-commits mailing list