Objective-C [qoi] - provide group name for
warn_property_types_are_incompatible. rdar://18487506


git-svn-id: http://llvm.org/svn/llvm-project/cfe/trunk@218621 91177308-0d34-0410-b5e6-96231b3b80d8
Speedup ClangToLLVMArgMapping construction. NFC.

Add a method to calculate the number of arguments given QualType
expnads to. Use this method in ClangToLLVMArgMapping calculation.
This number may be cached in CodeGenTypes for efficiency, if needed.


git-svn-id: http://llvm.org/svn/llvm-project/cfe/trunk@218623 91177308-0d34-0410-b5e6-96231b3b80d8
CUDA: Fix incorrect target inference for implicit members.

As PR20495 demonstrates, Clang currenlty infers the CUDA target (host/device,
etc) for implicit members (constructors, etc.) incorrectly. This causes errors
and even assertions in Clang when compiling code (assertions in C++11 mode where
implicit move constructors are added into the mix).

Fix the problem by inferring the target from the methods the implicit member
should call (depending on its base classes and fields).




git-svn-id: http://llvm.org/svn/llvm-project/cfe/trunk@218624 91177308-0d34-0410-b5e6-96231b3b80d8