[cfe-commits] r57657 - in /cfe/trunk: include/clang/Analysis/PathSensitive/GRExprEngine.h include/clang/Analysis/PathSensitive/GRState.h include/clang/Analysis/PathSensitive/RValues.h include/clang/Analysis/PathSensitive/Store.h lib/Analysis/Basi

Zhongxing Xu xuzhongxing at gmail.com
Sun Oct 19 06:37:01 PDT 2008


>
> -  // Get the lvalue of an expression.
> -  // FIXME: Remove this method, and implement specialized versions for
> -  //  specific Decls.
> -  virtual RVal getLValue(const GRState* St, const Expr* Ex) = 0;
> +  virtual RVal getLValueVar(const GRState* St, const VarDecl* VD) = 0;
>
> -  virtual RVal getLValue(const GRState* St, const ObjCIvarDecl* D, RVal
> Base)=0;
> +  virtual RVal getLValueIvar(const GRState* St, const ObjCIvarDecl* D,
> +                             RVal Base)=0;
> +
> +  virtual RVal getLValueField(const GRState* St, const FieldDecl* D,
> +                              RVal Base) = 0;
> +
> +  virtual RVal getLValueElement(const GRState* St, RVal Base, RVal Offset)
> = 0;
>

If we split getLValue() into these separate cases, is parameter GRState* St
still needed, as we have already passed in all we need to build the lvalue?
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20081019/f458fae5/attachment.html>


More information about the cfe-commits mailing list