[cfe-commits] [PATCH] RegionStore
Ted Kremenek
kremenek at apple.com
Mon Oct 20 21:52:28 PDT 2008
On Oct 20, 2008, at 3:48 AM, Zhongxing Xu wrote:
>
>
> Another thought: Maybe we should keep these special handling in
> GRExprEngine, since these are what C99 requires to do. But this will
> require to add "if (..->isArrayType()) at more than one place in
> GRExprEngine, at least in VisitDeclRefExpr and VisitUnaryOperator.
> The root reason is that the rvalue evaluation of expressions of
> array type is different from other types. They do not need to go
> through the store bindings. The rvalue of expressions of array type
> cannot change.
Exactly. To me this is an issue of handling the syntax of C, which is
the domain of GRExprEngine. By keeping the ugliness localized,
individual checks, implementations of Store, etc., don't have to worry
about such language-specific edges cases. All the Store wants to
reason about is loads and stores.
More information about the cfe-commits
mailing list