<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>