Yeah, it seems a little confusing. But other names are worse:
AbstractVal, too long
AVal, like nonsense.
ProgVal, even farther way.

If ExprVal has to be replaced, I prefer AVal, at least it indicates some
special value: AVal.

On Fri, Oct 17, 2008 at 1:22 PM, Ted Kremenek <[EMAIL PROTECTED]> wrote:

>
> On Oct 16, 2008, at 10:15 PM, Zhongxing Xu wrote:
>
>  This is the renaming patch:
>>
>> RVal => ExprVal
>> LVal => Loc
>> NonLVal => NonLoc
>> lval => loc
>> nonlval => nonloc
>> <rename.patch>_______________________________________________
>>
>
> The patch looks great, but I'm a little hesitant about the name "ExprVal."
>  For example, this patch shows "ExprVals" being used with the Store:
>
> +Store BasicStoreManager::SetExprVal(Store store, Loc LV, ExprVal V) {
>   switch (LV.getSubKind()) {
> -    case lval::MemRegionKind: {
> +    case loc::MemRegionKind: {
>       VarRegion* R =
> -        dyn_cast<VarRegion>(cast<lval::MemRegionVal>(LV).getRegion());
> +        dyn_cast<VarRegion>(cast<loc::MemRegionVal>(LV).getRegion());
>
>       if (!R)
>         return store;
> @@ -157,16 +157,16 @@
>         : VBFactory.Add(B, R->getDecl(), V).getRoot();
>     }
>     default:
> -      assert ("SetRVal for given LVal type not yet implemented.");
> +      assert ("SetExprVal for given Loc type not yet implemented.");
>       return store;
>   }
>  }
>
> This just seems confusing.  Why is the store reasoning about "expression
> values"?  It makes sense to those using the system already, but the name
> doesn't capture its purpose well.
>
> What do you think?  AbstractVal?  AVal?  ProgVal?
>
> Otherwise I think the patch looks great.  Changing ExprVal to something
> else is just a couple lines of Perl/sed.
>
>
_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits

Reply via email to