<html>
  <head>
    <meta content="text/html; charset=ISO-8859-1"
      http-equiv="Content-Type">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    <div class="moz-cite-prefix">On 29.03.2013 22:04, Anna Zaks wrote:<br>
    </div>
    <blockquote
      cite="mid:2EFF8687-A4B9-4750-AEDD-718D8F4ED633@apple.com"
      type="cite">
      <meta http-equiv="Content-Type" content="text/html;
        charset=ISO-8859-1">
      <br>
      <div>
        <div>On Mar 28, 2013, at 5:42 PM, Anton Yartsev <<a
            moz-do-not-send="true" href="mailto:anton.yartsev@gmail.com">anton.yartsev@gmail.com</a>>
          wrote:</div>
        <br class="Apple-interchange-newline">
        <blockquote type="cite">
          <div style="letter-spacing: normal; orphans: auto; text-align:
            start; text-indent: 0px; text-transform: none; white-space:
            normal; widows: auto; word-spacing: 0px;
            -webkit-text-stroke-width: 0px;">
            <blockquote type="cite">
              <blockquote type="cite">Evolved one more problem to solve:
                if overloaded standard operator new is defined and is
                called as a function, then it is not recognized as
                overloaded operator for some reason. Tests
                testOpNewArray() and testOpNew() in NewDelete-custom.cpp
                cover these issue.<br>
              </blockquote>
              <br>
              You can check if it has to do with redeclarations of the
              allocator function, but I wouldn't expect that. Definitely
              something we need to fix before putting out another
              open-source checker build.<br>
            </blockquote>
            Addressed the issue. Actually the problem is caused by the
            fact, that overloaded operator new was inlined and has not
            been processed by checkPostStmt(const CallExpr) at all as it
            skips inlined calls.<br>
            What Is the reason for skipping inline calls?<br>
            <br>
          </div>
        </blockquote>
        <br>
        The idea is that if a function has been inlined, it will be
        modeled through inlining where we will know exactly what it
        does. </div>
      <div><br>
      </div>
      <div>It is unclear if we should enforce the malloc/free,
        new/delete rules on inlined functions. For example, in this
        case, if someone overloaded the operator new, do we want to
        ensure that delete was called on the object regardless of what
        new's custom implementation is?</div>
    </blockquote>
    It seems to me that if we just simply handle inline functions
    without analyzing the implementation it'll give less false-positives
    then false-negatives if we just skip them as most malloc/new
    functions are expected to allocate memory. Or I haven't got
    something?<br>
    <pre class="moz-signature" cols="72">-- 
Anton</pre>
  </body>
</html>