<html><head><meta http-equiv="Content-Type" content="text/html charset=us-ascii"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><br><div><div>On Jan 21, 2013, at 14:22 , Richard <<a href="mailto:tarka.t.otter@googlemail.com">tarka.t.otter@googlemail.com</a>> wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><meta http-equiv="Content-Type" content="text/html charset=us-ascii"><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div>I have no great ideas about the new symbol names I'm afraid. I did notice something odd about the current implementation while writing a test though, it seems that the symbol extent range is purged after entering an IfStmt. For example, the following test code will show that the state of weakFunc is unknown in both cases:</div><div><br></div><div><div style="margin: 0px; font-family: Monaco; font-size: 10px; "><span style="color: #bb2ca2">void</span> weakFunc() <span style="color: #bb2ca2">__attribute__</span>((weak_import));</div><div style="margin: 0px; font-family: Monaco; font-size: 10px; "><span style="color: #bb2ca2">void</span> testWeakFunc() {</div><div style="margin: 0px; font-family: Monaco; font-size: 10px; ">    clang_analyzer_eval(weakFunc == <span style="color: #bb2ca2">NULL</span>);   <span style="color: #008400">// expected UNKNOWN</span></div><div style="margin: 0px; font-family: Monaco; font-size: 10px; ">    <span style="color: #bb2ca2">if</span> (weakFunc == <span style="color: #bb2ca2">NULL</span>) {</div><div style="margin: 0px; font-family: Monaco; font-size: 10px; ">        clang_analyzer_eval(weakFunc == <span style="color: #bb2ca2">NULL</span>);   <span style="color: #008400">// expected TRUE, actually UNKNOWN</span></div><div style="margin: 0px; font-family: Monaco; font-size: 10px; ">    }</div><div style="margin: 0px; font-family: Monaco; font-size: 10px; ">}</div></div><div><br></div><div>Should some code be added to SymbolReaper::isLiveRegion to handle this? At the moment this is always returning false for SymbolExtents I think.</div></div></blockquote></div><br><div>Ah, good catch! Not SymbolExtents, but CodeTextRegions. Feel free to add that to your patch.</div><div><br></div><div>Jordan</div></body></html>