https://bugs.llvm.org/show_bug.cgi?id=38300
David Blaikie <dblai...@gmail.com> changed:
What |Removed |Added
----------------------------------------------------------------------------
Resolution|INVALID |---
Status|RESOLVED |REOPENED
--- Comment #2 from David Blaikie <dblai...@gmail.com> ---
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.
--
You are receiving this mail because:
You are on the CC list for the bug.
_______________________________________________
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs