llvm-project/clang/test
Alex Lorenz 0e23c61c87 [Sema][ObjC] Warn about 'performSelector' calls with selectors
that return record or vector types

The performSelector family of methods from Foundation use objc_msgSend to
dispatch the selector invocations to objects. However, method calls to methods
that return record types might have to use the objc_msgSend_stret as the return
value won't find into the register. This is also supported by this sentence from
performSelector documentation: "The method should not have a significant return
value and should take a single argument of type id, or no arguments". This
commit adds a new warning that warns when a selector which corresponds to a
method that returns a record type is passed into performSelector.

rdar://12056271

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

llvm-svn: 297019
2017-03-06 15:58:34 +00:00
..
ARCMT [test] Port clang tests to canonicalized booleans 2017-01-25 13:11:45 +00:00
ASTMerge [ASTImporter] Support default argument initialization of ParmVarDecls 2017-02-20 11:57:12 +00:00
Analysis Reland 4: [analyzer] NFC: Update test infrastructure to support multiple constraint managers 2017-03-03 18:02:02 +00:00
CXX C++ DR1611, 1658, 2180: implement "potentially constructed subobject" rules for special member functions. 2017-02-25 23:53:05 +00:00
CodeCompletion [Preprocessor] Fix incorrect token caching that occurs when lexing _Pragma 2017-02-24 17:45:16 +00:00
CodeGen [XRay] [clang] Allow logging the first argument of a function call. 2017-03-06 07:08:21 +00:00
CodeGenCUDA [CodeGen] [CUDA] Add the ability set default attrs on functions in linked modules. 2017-01-25 21:29:48 +00:00
CodeGenCXX [Test] Make Lit tests C++11 compatible - IR ordering 2017-03-01 00:10:00 +00:00
CodeGenCoroutines [coroutines] Add allocation and deallocation substatements. 2016-10-27 16:28:31 +00:00
CodeGenObjC [ubsan] Extend the nonnull arg check to ObjC 2017-03-06 05:28:22 +00:00
CodeGenObjCXX Represent pass_object_size attrs in ExtParameterInfo 2017-02-24 02:49:47 +00:00
CodeGenOpenCL AMDGPU: export s_sendmsg{halt} instrinsics 2017-02-25 04:20:24 +00:00
Coverage Handle StaticAssertDecl in DeclContextPrinter 2017-01-03 12:16:02 +00:00
CoverageMapping Suppress uninteresting warnings in test/CoverageMapping, NFC. 2017-02-25 07:05:41 +00:00
Driver Do not include GCC "resource" directory into the set of built-in include paths on MingW. 2017-03-06 09:32:56 +00:00
FixIt [Sema] Improve the error diagnostic for dot destructor calls on pointer objects 2017-01-20 15:38:58 +00:00
Format clang/test/Format/inplace.cpp: Avoid using wildcard. 2017-02-28 10:05:56 +00:00
Frontend Migrate all of aarch64-linux-gnu to \01_mcount instead of just when passing along gnueabi as this matches both gcc and what the kernel expects. 2017-02-28 17:22:05 +00:00
Headers [OpenCL] Correct ndrange_t implementation 2017-02-16 12:27:47 +00:00
Import Testbed and skeleton of a new expression parser 2016-12-22 20:03:14 +00:00
Index [index] C++: Improve handling of typedefs as base names in C++ class declarations 2017-03-04 17:54:56 +00:00
Integration
Layout
Lexer [c++1z] Mark constexpr lambdas as done on status page and start advertising 2017-02-21 23:58:29 +00:00
Misc Introduce an 'external_source_symbol' attribute that describes the origin 2017-03-01 18:06:25 +00:00
Modules [ODRHash] Try again to fix build bot. 2017-03-04 03:04:15 +00:00
OpenMP [OpenMP] Generate better diagnostics for cancel and cancellation point 2017-02-22 06:49:10 +00:00
PCH [PCH] Avoid VarDecl emission attempt if no owning module avaiable 2017-03-01 19:18:42 +00:00
Parser Introduce an 'external_source_symbol' attribute that describes the origin 2017-03-01 18:06:25 +00:00
Preprocessor Also test OpenBSD/powerpc here for the various types expected to be the same across archs. 2017-02-25 16:35:18 +00:00
Profile Weaken test/Profile/c-ternary.c 2017-02-25 07:21:23 +00:00
Rewriter [test] Port clang tests to canonicalized booleans 2017-01-25 13:11:45 +00:00
Sema [XRay] [clang] Allow logging the first argument of a function call. 2017-03-06 07:08:21 +00:00
SemaCUDA [CUDA] Let NVPTX inherit the host's calling conventions. 2017-01-05 16:53:38 +00:00
SemaCXX [Sema] Improve side effect checking for unused-lambda-capture warning 2017-03-01 10:23:38 +00:00
SemaObjC [Sema][ObjC] Warn about 'performSelector' calls with selectors 2017-03-06 15:58:34 +00:00
SemaObjCXX [Sema] Add variable captured by a block to the enclosing lambda's 2017-03-01 06:11:25 +00:00
SemaOpenCL AMDGPU: export s_sendmsg{halt} instrinsics 2017-02-25 04:20:24 +00:00
SemaTemplate [Test] Make Lit tests C++11 compatible #9 2017-02-24 22:22:05 +00:00
TableGen
Tooling [test] Port clang tests to canonicalized booleans 2017-01-25 13:11:45 +00:00
Unit [test] Extend llvm_shlib_dir fix to unittests 2016-12-15 20:31:08 +00:00
VFS
.clang-format
CMakeLists.txt Re-apply r292662, "IRGen: Start using the WriteThinLTOBitcode pass." 2017-01-26 23:51:50 +00:00
TestRunner.sh
cxx-sections.data
lit.cfg Add arch-specific directory to search path 2017-03-03 23:20:49 +00:00
lit.site.cfg.in [test] Port clang tests to canonicalized booleans 2017-01-25 13:11:45 +00:00
make_test_dirs.pl