<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html;
      charset=windows-1252">
  </head>
  <body>
    This wasn't an intentional change (at least i don't remember ever
    intending it) and i can't reproduce the problem on a recent clang. I
    didn't try 8.1 but both on 8.0 and on a recent "10.0" master i see
    the warning placed at the end of function and the stack variable
    location highlighted; there are no obvious changes in the visual
    output, neither in the plist output nor in html output).<br>
    <br>
    I don't see a problem with stack variable location highlighting as
    such. It won't affect console output where range highlighting is the
    most useful as it causes ~~~~~~s to appear, but nonetheless it's
    pretty harmless.<br>
    <br>
    Path sensitive reports generally don't end up anywhere except the
    bug node location unless you mess real hard with your bug report
    (eg., inherit from BugReport to override the virtual method
    getLocation()).<br>
    <br>
    I guess your observation is at least worth debugging in order to
    figure out what exactly is going on and what else is broken (you
    should probably try bisecting).<br>
    <br>
    <br>
    <div class="moz-cite-prefix">On 06.11.2019 05:31, Ádám Balogh via
      cfe-dev wrote:<br>
    </div>
    <blockquote type="cite"
cite="mid:AM0PR07MB57649FEB4A773F8859A7DBC481790@AM0PR07MB5764.eurprd07.prod.outlook.com">
      <meta http-equiv="Content-Type" content="text/html;
        charset=windows-1252">
      <meta name="Generator" content="Microsoft Word 15 (filtered
        medium)">
      <style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:#0563C1;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:#954F72;
        text-decoration:underline;}
span.EmailStyle17
        {mso-style-type:personal-compose;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-family:"Calibri",sans-serif;}
@page WordSection1
        {size:612.0pt 792.0pt;
        margin:72.0pt 72.0pt 72.0pt 72.0pt;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
      <div class="WordSection1">
        <p class="MsoNormal">Hello,<o:p></o:p></p>
        <p class="MsoNormal"><o:p> </o:p></p>
        <p class="MsoNormal">We experienced some strange anomaly between
          Clang 8.0 and 8.1: when analyzing the same project
          StackAddrEscapeChecker reported a bug “Address of stack memory
          associated with local variable '<name of local>' is
          still referred to by the global variable '<name of
          global>' upon returning to the caller.  This will be a
          dangling reference” to the declaration of the stack variable
          in 8.0 instead of the exit point of the function. In 8.1 the
          location was correct, thus the end of the function. When
          checking the source code of the checker, the tests and also
          BugReporter.h and .cpp I did not find any change between these
          versions.<o:p></o:p></p>
        <p class="MsoNormal"><o:p> </o:p></p>
        <p class="MsoNormal">However I found something strange in
          StackAddrEscapeChecker which is still there: the checker adds
          the source range of the variable declaration to the bugreport
          which seems to be wrong. The documentation of
          BugReport::addRange() states that “They should be at the same
          source code line as the BugReport location.” The declaration
          is definitely not part of the function exit point (return
          statement or closing bracket).<o:p></o:p></p>
        <p class="MsoNormal"><o:p> </o:p></p>
        <p class="MsoNormal">Should I try to fix this? I thing we should
          skip adding range in this particular case. Also I think we
          should add some assertion to BugReport::addRange() to avoid
          such cases. Do you also think that it is a good idea?<o:p></o:p></p>
        <p class="MsoNormal"><o:p> </o:p></p>
        <p class="MsoNormal">Regards,<o:p></o:p></p>
        <p class="MsoNormal"><o:p> </o:p></p>
        <p class="MsoNormal"><span lang="HU">Ádám<o:p></o:p></span></p>
        <p class="MsoNormal"><o:p> </o:p></p>
      </div>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <pre class="moz-quote-pre" wrap="">_______________________________________________
cfe-dev mailing list
<a class="moz-txt-link-abbreviated" href="mailto:cfe-dev@lists.llvm.org">cfe-dev@lists.llvm.org</a>
<a class="moz-txt-link-freetext" href="https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev">https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev</a>
</pre>
    </blockquote>
    <br>
  </body>
</html>