forked from OSchip/llvm-project
239c53b72b
Summary: Objective-C Class objects can be used to do a dynamic dispatch on class methods. The analyzer had a few places where we tried to overcome the dynamic nature of it and still guess the actual function that is being called. That was done mostly using some simple heuristics covering the most widespread cases (e.g. [[self class] classmethod]). This solution introduces a way to track types represented by Class objects and work with that instead of direct AST matching. rdar://problem/50739539 Differential Revision: https://reviews.llvm.org/D78286 |
||
---|---|---|
.. | ||
Inputs/expected-plists | ||
DynDispatchBifurcate.m | ||
InlineObjCClassMethod.m | ||
InlineObjCInstanceMethod.h | ||
InlineObjCInstanceMethod.m | ||
ObjCDynTypePopagation.m | ||
ObjCImproperDynamictallyDetectableCast.m | ||
RetainCountExamples.m | ||
analysis-order.c | ||
assume-super-init-does-not-return-nil.m | ||
containers.cpp | ||
dyn-dispatch-bifurcate.cpp | ||
eager-reclamation-path-notes.c | ||
eager-reclamation-path-notes.cpp | ||
false-positive-suppression.c | ||
false-positive-suppression.cpp | ||
false-positive-suppression.m | ||
inline-defensive-checks.c | ||
inline-defensive-checks.cpp | ||
inline-defensive-checks.m | ||
path-notes.c | ||
path-notes.cpp | ||
path-notes.m | ||
placement-new-fp-suppression.cpp | ||
retain-count-self-init.m | ||
stl.cpp | ||
temp-dtors-path-notes.cpp | ||
test-always-inline-size-option.c | ||
test_objc_inlining_option.m |