<br><br><div class="gmail_quote">On Fri, Nov 14, 2008 at 8:58 AM, Ted Kremenek <span dir="ltr"><<a href="mailto:kremenek@apple.com">kremenek@apple.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<div style=""><div class="Ih2E3d"><br><div><div>On Nov 13, 2008, at 4:52 PM, Zhongxing Xu wrote:</div><br><blockquote type="cite"><span style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-size: 14px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px;"><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;">We'll need to iterate on this one.  We may end up applying your patch back, so please don't take my reverting it personally.<br>
<br>Consider:<br><br>char* p = alloca(BLOCK);<br>new (p) Object1();<br>...<br>new (p) Object2();<br><br>Untyped memory can be recycled.  While this won't  occur that often, I think with the right design we can handle such things naturally.<br>
<font color="#888888"></font></blockquote><div><br>I agree that another indirection is necessary, since:<br> - We have no type information when creating AllocaRegion.<br> - We have to attach type information to AllocaRegion.<br>
 - Regions are immutable once created.<span> </span><br></div></div><br>The question remains is that when shall we create this indirect layer. A plausible time is when we have the type information, we create the indirect layer.</span></blockquote>
</div><br></div><div>A reasonable insertion point for such information is during VisitCast when the "interpretation" of a pointer changes.  We have a fair amount of flexibility in how we add such information because VisitCast can generate new GRStates.</div>
</div></blockquote></div><br>Right.<br>