diff options
author | Richard Sandiford <richard.sandiford@arm.com> | 2020-03-03 10:45:45 +0000 |
---|---|---|
committer | Richard Sandiford <richard.sandiford@arm.com> | 2020-03-17 11:52:37 +0000 |
commit | c47f971694be0159ffddfee8a75ae515eba91439 (patch) | |
tree | 54227079542de4d7e2d3560f3a122063a55866bf /clang/lib/Frontend/CompilerInvocation.cpp | |
parent | f5e0f8b10ab95e94b5ffb32e380f95d21415c3e8 (diff) | |
download | llvm-c47f971694be0159ffddfee8a75ae515eba91439.zip llvm-c47f971694be0159ffddfee8a75ae515eba91439.tar.gz llvm-c47f971694be0159ffddfee8a75ae515eba91439.tar.bz2 |
[Sema][SVE] Don't allow sizeless objects to be thrown
Summary:
The same rules for throwing and catching incomplete types also apply
to sizeless types. This patch enforces that for throw statements.
It also make sure that we use "sizeless type" rather "incomplete type"
in the associated message. (Both are correct, but "sizeless type" is
more specific and hopefully more user-friendly.)
The SVE ACLE simply extends the rule for incomplete types to
sizeless types. However, throwing pointers to sizeless types
should not pose any real difficulty, so as an extension,
the clang implementation allows that.
Reviewers: sdesmalen, efriedma, rovka, rjmccall
Subscribers: tschuett, rkruppe, psnobl, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D76088
Diffstat (limited to 'clang/lib/Frontend/CompilerInvocation.cpp')
0 files changed, 0 insertions, 0 deletions