<br><br><div class="gmail_quote">2010/11/16 Marcin Świderski <span dir="ltr"><<a href="mailto:marcin.sfider@gmail.com">marcin.sfider@gmail.com</a>></span><br><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
<div class="gmail_quote">W dniu 16 listopada 2010 09:04 użytkownik Marcin Świderski <span dir="ltr"><<a href="mailto:marcin.sfider@gmail.com" target="_blank">marcin.sfider@gmail.com</a>></span> napisał:<div><div></div>
<div class="h5"><br><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
<br><br><div class="gmail_quote">2010/11/16 Zhongxing Xu <span dir="ltr"><<a href="mailto:xuzhongxing@gmail.com" target="_blank">xuzhongxing@gmail.com</a>></span><div><div></div><div><br><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">


<br><br><div class="gmail_quote">2010/11/16 Ted Kremenek <span dir="ltr"><<a href="mailto:kremenek@apple.com" target="_blank">kremenek@apple.com</a>></span><div><br><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">



<div style="word-wrap: break-word;"><br><div><div><div></div><div><div>On Nov 15, 2010, at 4:26 PM, Marcin Świderski wrote:</div><br><blockquote type="cite"><div class="gmail_quote">W dniu 16 listopada 2010 01:14 użytkownik Ted Kremenek <span dir="ltr"><<a href="mailto:kremenek@apple.com" target="_blank">kremenek@apple.com</a>></span> napisał:<br>



<blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
<div style="word-wrap: break-word;"><div><div></div><div><br><div><div>On Nov 15, 2010, at 3:52 PM, Marcin Świderski wrote:</div><br><blockquote type="cite"><div class="gmail_quote">W dniu 16 listopada 2010 00:44 użytkownik Ted Kremenek <span dir="ltr"><<a href="mailto:kremenek@apple.com" target="_blank">kremenek@apple.com</a>></span> napisał:<br>




<blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
Hi Marcin,<br>
<br>
What is this memory region used for?  There are no comments above the declaration of this class, so I'm having difficulty interpreting its intended use.<br>
<div><div></div><div><br>
On Nov 15, 2010, at 3:42 PM, Marcin Świderski wrote:<br>
<br>
> Patch adds new MemRegion subclass CXXDummyThisObjectRegion, which is used to initialize CXXThisRegion value for initial stack frame.<br>
><br>
> Please aprove for commit.<br>
><br>
> -Marcin<br>
</div></div>> <gr-eng-cxx-dummy-this-obj.patch><br>
<br></blockquote><div>Hi Ted</div><div> </div></div>In general it's used for identifing object pointed with 'this' in analyzed method. I use it for checking in ctor/dtor if method is called on 'this'. I can write some comment for it before commiting.
</blockquote></div><br></div></div><div>Why not use a symbolic region for the value of 'this'?  Why do we need a new type of memory region?  We can just have RegionStore::Retrieve() map from 'this' to a SymbolicRegion (or one wrapped with an ElementRegion that adds the typing information).</div>




</div></blockquote></div><br><div>I couldn't think of any other solution that wouldn't involve tricks.</div></blockquote></div></div></div></div></blockquote></div><div>The current implementation of RegionStore::Retrieve() maps from 'this' to a SymbolicRegion. Is it sufficient?<br>



<br></div></div>
</blockquote></div></div></div>I didn't grasp the SymbolicRegion and SymbolRegionValue until now. Using SymbolicRegion will be probably the best solution. Thanks Zhongxing.
</blockquote></div></div></div><br><div>New patch. Added mapping from 'this' to it's SymbolicRegion in BasicStoreManager::getInitialStore.<br></div><div><br></div><div>Please approve for commit.</div>
</blockquote></div><br>Looks OK. I'm not sure if it makes sense to add partial support for C++ in basic store. But if this is what you need, it seems not affect other parts of the analyzer.<br>