diff options
author | Eric Fiselier <eric@efcs.ca> | 2017-05-28 18:21:12 +0000 |
---|---|---|
committer | Eric Fiselier <eric@efcs.ca> | 2017-05-28 18:21:12 +0000 |
commit | 1995be1cfda3ccb67b987f449b6c25c728cccc9f (patch) | |
tree | 3d67a1374bc720d2d93dd8808957426867064c11 /lib/Basic/Module.cpp | |
parent | 689832e718b999abb02b7195a21b61ab480bf720 (diff) | |
download | clang-1995be1cfda3ccb67b987f449b6c25c728cccc9f.tar.gz |
[coroutines] Diagnose invalid result types for `await_resume` and `await_suspend` and add missing conversions.
Summary:
The expression `await_ready` is required to be contextually convertible to bool and `await_suspend` must be a prvalue of either `void` or `bool`.
This patch adds diagnostics for when those requirements are violated.
It also correctly performs the contextual conversion to bool on the result of `await_ready`
Reviewers: GorNishanov, rsmith
Reviewed By: GorNishanov
Subscribers: cfe-commits
Differential Revision: https://reviews.llvm.org/D33625
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@304094 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Basic/Module.cpp')
0 files changed, 0 insertions, 0 deletions