forked from OSchip/llvm-project
da8f9b5b1b
Summary: This patch fixes a number of issues with the analysis warnings emitted when a coroutine may reach the end of the function w/o returning. * Fix bug where coroutines with `return_value` are incorrectly diagnosed as missing `co_return`'s. * Rework diagnostic message to no longer say "non-void coroutine", because that implies the coroutine doesn't have a void return type, which it might. In this case a non-void coroutine is one who's promise type does not contain `return_void()` As a side-effect of this patch, coroutine bodies that contain an invalid coroutine promise objects are marked as invalid. Reviewers: GorNishanov, rsmith, aaron.ballman, majnemer Reviewed By: GorNishanov Subscribers: cfe-commits Differential Revision: https://reviews.llvm.org/D33532 llvm-svn: 303831 |
||
---|---|---|
.. | ||
AnalysisDeclContext.cpp | ||
BodyFarm.cpp | ||
BodyFarm.h | ||
CFG.cpp | ||
CFGReachabilityAnalysis.cpp | ||
CFGStmtMap.cpp | ||
CMakeLists.txt | ||
CallGraph.cpp | ||
CloneDetection.cpp | ||
CocoaConventions.cpp | ||
CodeInjector.cpp | ||
Consumed.cpp | ||
Dominators.cpp | ||
FormatString.cpp | ||
FormatStringParsing.h | ||
LiveVariables.cpp | ||
OSLog.cpp | ||
ObjCNoReturn.cpp | ||
PostOrderCFGView.cpp | ||
PrintfFormatString.cpp | ||
ProgramPoint.cpp | ||
PseudoConstantAnalysis.cpp | ||
ReachableCode.cpp | ||
ScanfFormatString.cpp | ||
ThreadSafety.cpp | ||
ThreadSafetyCommon.cpp | ||
ThreadSafetyLogical.cpp | ||
ThreadSafetyTIL.cpp | ||
UninitializedValues.cpp |