llvm-project/clang/lib/Analysis
Artem Dergachev 1f68d9d39e [CFG] Provide construction contexts for temproary objects.
Constructors of C++ temporary objects that have destructors now can be queried
to discover that they're indeed constructing temporary objects.

The respective CXXBindTemporaryExpr, which is also repsonsible for destroying
the temporary at the end of full-expression, is now available at the
construction site in the CFG. This is all the context we need to provide for
temporary objects that are not lifetime extended. For lifetime-extended
temporaries, more context is necessary.

Differential Revision: https://reviews.llvm.org/D43056

llvm-svn: 325210
2018-02-15 03:13:36 +00:00
..
AnalysisDeclContext.cpp [CFG] Add extra context to C++ constructor statement elements. 2018-02-08 22:58:15 +00:00
BodyFarm.cpp [analyzer] Fix yet-another-crash in body-farming std::call_once 2018-02-02 01:44:07 +00:00
CFG.cpp [CFG] Provide construction contexts for temproary objects. 2018-02-15 03:13:36 +00:00
CFGReachabilityAnalysis.cpp
CFGStmtMap.cpp
CMakeLists.txt Add support for __builtin_os_log_format[_buffer_size] 2016-10-24 20:39:34 +00:00
CallGraph.cpp [Analysis] Fix some Clang-tidy modernize and Include What You Use warnings; other minor fixes (NFC). 2017-12-07 21:55:09 +00:00
CloneDetection.cpp Fix typos of occurred and occurrence 2018-01-24 10:26:09 +00:00
CocoaConventions.cpp [analyzer] Teach RetainCountChecker about CoreMedia APIs 2017-11-25 14:57:42 +00:00
CodeInjector.cpp Roll-back r250822. 2015-10-20 13:23:58 +00:00
Consumed.cpp Consolidate std::move() detection code. No behavior change. 2017-09-28 16:16:39 +00:00
Dominators.cpp
FormatString.cpp Add support for __builtin_os_log_format[_buffer_size] 2016-10-24 20:39:34 +00:00
FormatStringParsing.h [NFC] Header cleanup 2016-07-18 19:02:11 +00:00
LiveVariables.cpp [CSA] [NFC] Move AnalysisContext.h to AnalysisDeclContext.h 2017-09-06 21:45:03 +00:00
OSLog.cpp Make helpers static. NFC. 2017-02-11 12:21:17 +00:00
ObjCNoReturn.cpp
PostOrderCFGView.cpp
PrintfFormatString.cpp [clang] Add getUnsignedPointerDiffType method 2017-09-28 23:11:31 +00:00
ProgramPoint.cpp Roll-back r250822. 2015-10-20 13:23:58 +00:00
PseudoConstantAnalysis.cpp Added LLVM_FALLTHROUGH to address warning: this statement may fall through. NFC. 2017-06-03 06:23:51 +00:00
ReachableCode.cpp Teach Wreturn-type, Wunreachable-code, and alpha.deadcode.UnreachableCode to treat __assume(0) like __builtin_unreachable. 2018-02-13 21:31:47 +00:00
ScanfFormatString.cpp [clang] Add getUnsignedPointerDiffType method 2017-09-28 23:11:31 +00:00
ThreadSafety.cpp Handle scoped_lockable objects being returned by value in C++17. 2018-01-11 22:13:57 +00:00
ThreadSafetyCommon.cpp Refactor overridden methods iteration to avoid double lookups. 2017-12-17 23:52:45 +00:00
ThreadSafetyLogical.cpp
ThreadSafetyTIL.cpp [c++20] P0515R3: Parsing support and basic AST construction for operator <=>. 2017-12-14 15:16:18 +00:00
UninitializedValues.cpp Consolidate std::move() detection code. No behavior change. 2017-09-28 16:16:39 +00:00