ObjectiveC migrator: iDOn't mangle names when 
NS_RETURNS_INNER_POINTER annotation is suggested on
a property. // rdar://15044991


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@191332 91177308-0d34-0410-b5e6-96231b3b80d8
ObjectiveC migrator: Another test for my last patch.
// rdar://15044991


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@191334 91177308-0d34-0410-b5e6-96231b3b80d8
ObjectiveC migrator: provide space between the property 
keyword and the rest on suggested property. // rdar://15069044



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@191335 91177308-0d34-0410-b5e6-96231b3b80d8
Avoid a signed/unsigned comparison warning with compilers that don't know how
to handle constant expressions.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@191336 91177308-0d34-0410-b5e6-96231b3b80d8
Fix -Wmissing-variable-declarations regression.

This issue was introduced in r181677.

PR17349.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@191339 91177308-0d34-0410-b5e6-96231b3b80d8
Allow dynamic_cast to void* even with -fno-rtti.

PR17346.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@191340 91177308-0d34-0410-b5e6-96231b3b80d8
[analyzer] This patch removes passing around of const-invalidation vs regular-invalidation info by passing around a datastructure that maps regions and symbols to the type of invalidation they experience. This simplifies the code and would allow to associate more different invalidation types in the future.
With this patch things like preserving contents of regions (either hi- or low-level ones) or processing of the only top-level region can be implemented easily without passing around extra parameters.

This patch is a first step towards adequate modeling of memcpy() by the CStringChecker checker and towards eliminating of majority of false-positives produced by the NewDeleteLeaks checker.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@191342 91177308-0d34-0410-b5e6-96231b3b80d8
[libclang] Provide location for attributes and expose 'packed' attribute.

Patch by Loïc Jaquemet!

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@191345 91177308-0d34-0410-b5e6-96231b3b80d8
[libclang] python: fix return type of clang_Type_getSizeOf().

Patch by Loïc Jaquemet!

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@191346 91177308-0d34-0410-b5e6-96231b3b80d8
ObjectiveC migrator. Don't suggest @property for
methods which look like getters but belong to
known family of methods. // rdar://15044058


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@191347 91177308-0d34-0410-b5e6-96231b3b80d8
Refactor to use C++1y 'auto' semantics directly in lambdas with no specified
return type in C++1y mode. No functionality change intended. Extracted and
tweaked from a patch by Faisal Vali!


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@191354 91177308-0d34-0410-b5e6-96231b3b80d8
StaticAnalyzer/Core/RegionStore.cpp: Prune one last "\param IsConst", as fixup to r191342. [-Wdocumentation]

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@191360 91177308-0d34-0410-b5e6-96231b3b80d8
Sema: Simplify code a bit, plug a potential leak.

No intended functionality change.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@191370 91177308-0d34-0410-b5e6-96231b3b80d8
Remove unused option.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@191373 91177308-0d34-0410-b5e6-96231b3b80d8
clang-format: Option to removing the space before assignment operators.

Patch contributed by Aaron Wishnick. Thank you!

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@191375 91177308-0d34-0410-b5e6-96231b3b80d8
Don't pass -print-stats to the driver, it is a -cc1 option only.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@191376 91177308-0d34-0410-b5e6-96231b3b80d8
Move --relocatable-pch to Options.td.

It is a valid driver option (we have tests for that), so it should not be
marked as NoDriverOption.

No functionality change other than it showing in --help.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@191377 91177308-0d34-0410-b5e6-96231b3b80d8
Use -Xclang to pass -internal-isystem and -internal-externc-isystem to -cc1.

They are cc1 options only, so the driver was ignoring them.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@191379 91177308-0d34-0410-b5e6-96231b3b80d8
Produce an error if a -cc1 only option is passed to the driver.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@191380 91177308-0d34-0410-b5e6-96231b3b80d8
[analyzer] Handle destructors for the argument to C++ 'delete'.

Now that the CFG includes nodes for the destructors in a delete-expression,
process them in the analyzer using the same common destructor interface
currently used for local, member, and base destructors. Also, check for when
the value is known to be null, in which case no destructor is actually run.

This does not yet handle destructors for deleted /arrays/, which may need
more CFG work. It also causes a slight regression in the location of
double delete warnings; the double delete is detected at the destructor
call, which is implicit, and so is reported on the first access within the
destructor instead of at the 'delete' statement. This will be fixed soon.

Patch by Karthik Bhat!

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