[cfe-dev] Symbolic Extents

Ted Kremenek kremenek at apple.com
Tue Jun 29 17:24:34 PDT 2010


On Jun 29, 2010, at 2:12 PM, Jordy Rose wrote:

> 
> Okay. I think my misunderstanding came from wondering when to pass around
> a SymExpr vs. an SVal, since not all SVals map into SymExprs. (In
> particular, you can't pass a SymExpr and an APSInt in the same variable.)
> The answer seems to be "never" -- you always want an SVal for API that
> faces the checkers -- because SymExpr is almost an implementation detail.
> Does that sound right?
> 
> (usual qualification about exceptions to every rules)
> 
> I was also confused by the fact that SymExprs don't deal in SVals, but I
> guess they don't need to. The nonloc types are either symbolic, constant,
> or compound, and you can't do a symbolic operation to a compound value.
> 

Yes, that's basically it!  That said, we could probably benefit from making the recursive nature of the expression language grammar clearer.



More information about the cfe-dev mailing list