<div dir="ltr"><div class="gmail_quote"><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">- // Get the lvalue of an expression.<br>
- // FIXME: Remove this method, and implement specialized versions for<br>
- // specific Decls.<br>
- virtual RVal getLValue(const GRState* St, const Expr* Ex) = 0;<br>
+ virtual RVal getLValueVar(const GRState* St, const VarDecl* VD) = 0;<br>
<br>
- virtual RVal getLValue(const GRState* St, const ObjCIvarDecl* D, RVal Base)=0;<br>
+ virtual RVal getLValueIvar(const GRState* St, const ObjCIvarDecl* D,<br>
+ RVal Base)=0;<br>
+<br>
+ virtual RVal getLValueField(const GRState* St, const FieldDecl* D,<br>
+ RVal Base) = 0;<br>
+<br>
+ virtual RVal getLValueElement(const GRState* St, RVal Base, RVal Offset) = 0;<br>
</blockquote><div><br>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?<br> <br></div></div><br></div>