<html>
    <head>
      <base href="https://bugs.llvm.org/">
    </head>
    <body><span class="vcard"><a class="email" href="mailto:dblaikie@gmail.com" title="David Blaikie <dblaikie@gmail.com>"> <span class="fn">David Blaikie</span></a>
</span> changed
          <a class="bz_bug_link 
          bz_status_REOPENED "
   title="REOPENED - Wrong exception deduction for some forms of placement new"
   href="https://bugs.llvm.org/show_bug.cgi?id=38300">bug 38300</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;">Resolution</td>
           <td>INVALID
           </td>
           <td>---
           </td>
         </tr>

         <tr>
           <td style="text-align:right;">Status</td>
           <td>RESOLVED
           </td>
           <td>REOPENED
           </td>
         </tr></table>
      <p>
        <div>
            <b><a class="bz_bug_link 
          bz_status_REOPENED "
   title="REOPENED - Wrong exception deduction for some forms of placement new"
   href="https://bugs.llvm.org/show_bug.cgi?id=38300#c2">Comment # 2</a>
              on <a class="bz_bug_link 
          bz_status_REOPENED "
   title="REOPENED - Wrong exception deduction for some forms of placement new"
   href="https://bugs.llvm.org/show_bug.cgi?id=38300">bug 38300</a>
              from <span class="vcard"><a class="email" href="mailto:dblaikie@gmail.com" title="David Blaikie <dblaikie@gmail.com>"> <span class="fn">David Blaikie</span></a>
</span></b>
        <pre>ah, nope - read 7.6 more carefully:



"If the expression is erroneous after converting to std::size_t:
(7.5) — if the expression is a core constant expression, the program is
ill-formed;
(7.6) — otherwise, an allocation function is not called; instead
(7.6.1) — if the allocation function that would have been called has a
non-throwing exception specification
(18.4), the value of the new-expression is the null pointer value of the
required result
type;
(7.6.2) — otherwise, the new-expression terminates by throwing an exception of
a type that would match a
handler (18.3) of type std::bad_array_new_length (21.6.3.2)."

Yep, my best reading of that is that 7.6.1 applies in all these cases and a
null pointer should be returned instead of throwing std::bad_array_new_length.</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>