<html>
<head>
<base href="http://llvm.org/bugs/" />
</head>
<body><span class="vcard"><a class="email" href="mailto:kcc@google.com" title="Kostya Serebryany <kcc@google.com>"> <span class="fn">Kostya Serebryany</span></a>
</span> changed
<a class="bz_bug_link
bz_status_RESOLVED bz_closed"
title="RESOLVED FIXED - [ASan RTL] Highlight nearest stack object in ASan error report"
href="http://llvm.org/bugs/show_bug.cgi?id=17059">bug 17059</a>
<br>
<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>What</th>
<th>Removed</th>
<th>Added</th>
</tr>
<tr>
<td style="text-align:right;">Status</td>
<td>NEW
</td>
<td>RESOLVED
</td>
</tr>
<tr>
<td style="text-align:right;">CC</td>
<td>
</td>
<td>kcc@google.com
</td>
</tr>
<tr>
<td style="text-align:right;">Resolution</td>
<td>---
</td>
<td>FIXED
</td>
</tr></table>
<p>
<div>
<b><a class="bz_bug_link
bz_status_RESOLVED bz_closed"
title="RESOLVED FIXED - [ASan RTL] Highlight nearest stack object in ASan error report"
href="http://llvm.org/bugs/show_bug.cgi?id=17059#c1">Comment # 1</a>
on <a class="bz_bug_link
bz_status_RESOLVED bz_closed"
title="RESOLVED FIXED - [ASan RTL] Highlight nearest stack object in ASan error report"
href="http://llvm.org/bugs/show_bug.cgi?id=17059">bug 17059</a>
from <span class="vcard"><a class="email" href="mailto:kcc@google.com" title="Kostya Serebryany <kcc@google.com>"> <span class="fn">Kostya Serebryany</span></a>
</span></b>
<pre>r189806 implements almost what you've asked for.
The reports look like this now:
[32, 42) 'AAA'
[96, 106) 'BBB' <== Memory access at offset 94 underflows this variable
[160, 170) 'CCC'
[32, 42) 'AAA'
[96, 106) 'BBB' <== Memory access at offset 95 partially underflows this
variable
[160, 170) 'CCC'
[32, 42) 'AAA'
[96, 106) 'BBB' <== Memory access at offset 105 partially overflows this
variable
[160, 170) 'CCC'
[32, 42) 'AAA'
[96, 106) 'BBB' <== Memory access at offset 106 overflows this variable
[160, 170) 'CCC'
Sometimes like this (when the access is somewhere in between two vars):
[32, 42) 'AAA'
[96, 106) 'BBB' <== Memory access at offset 132 overflows this variable
[160, 170) 'CCC' <== Memory access at offset 132 underflows this variable
The reports do not mention the access sizes.
Fixing this is a bit more involved:
when memset touches invalid memory, we report the size of the whole memset
but the reported address is the fist invalid address. But that's another story.</pre>
</div>
</p>
<hr>
<span>You are receiving this mail because:</span>
<ul>
<li>You are on the CC list for the bug.</li>
</ul>
</body>
</html>