This is an archive of the discontinued LLVM Phabricator instance.

[Coroutines] Fix assertion about uncorrected typos in co_await/co_yield/co_return expressions.
ClosedPublic

Authored by EricWF on Sep 28 2016, 10:09 PM.

Details

Summary

If there is an error finding the coroutine_traits template when building a coroutine AST nodes we throw away the remainder of the assignment expression. If the expression has uncorrected typo's this will trigger an assertion in ~Sema().

This patch attempts to preemptively correct those typo's when we encounter an error building the coroutine nodes, at least for the case where the coroutine_traits template is invalid.

Diff Detail

Event Timeline

EricWF updated this revision to Diff 72949.Sep 28 2016, 10:09 PM
EricWF retitled this revision from to [Coroutines] Fix assertion about uncorrected typos in co_await/co_yield/co_return expressions..
EricWF updated this object.
EricWF added reviewers: rsmith, GorNishanov.
EricWF added a subscriber: cfe-commits.
EricWF accepted this revision.Sep 30 2016, 1:11 AM
EricWF added a reviewer: EricWF.

Committed in r282792.

This revision is now accepted and ready to land.Sep 30 2016, 1:11 AM
EricWF closed this revision.Sep 30 2016, 1:11 AM