Fix for bug http://llvm.org/PR17427.
Assertion failed: "Computed __func__ length differs from type!"
Reworked PredefinedExpr representation with internal StringLiteral field for function declaration.
Differential Revision: http://reviews.llvm.org/D5365


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@219393 91177308-0d34-0410-b5e6-96231b3b80d8
clang-format: Add option to control call argument bin-packing separately

This is desirable for the Chromium style guide:
http://www.chromium.org/developers/coding-style

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@219400 91177308-0d34-0410-b5e6-96231b3b80d8
Fix compatibility issues in tests for PredefinedExpr with MSVC.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@219405 91177308-0d34-0410-b5e6-96231b3b80d8
Escaping a special character in the documentation.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@219407 91177308-0d34-0410-b5e6-96231b3b80d8
Implement various matchers around template argument handling.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@219408 91177308-0d34-0410-b5e6-96231b3b80d8
Separated RecursiveASTVisitorTest into multiple files.

Patch by Marek Kurdej.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@219410 91177308-0d34-0410-b5e6-96231b3b80d8
Add experimental clang/driver flag -fsanitize-address-field-padding=N

Summary:
This change adds an experimental flag -fsanitize-address-field-padding=N (0, 1, 2)
to clang and driver. With this flag ASAN will be able to detect some cases of
intra-object-overflow bugs,
see https://code.google.com/p/address-sanitizer/wiki/IntraObjectOverflow

There is no actual functionality here yet, just the flag parsing.
The functionality is being reviewed at http://reviews.llvm.org/D5687

Test Plan: Build and run SPEC, LLVM Bootstrap, Chrome with this flag.

Reviewers: samsonov

Reviewed By: samsonov

Subscribers: cfe-commits

Differential Revision: http://reviews.llvm.org/D5676

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@219417 91177308-0d34-0410-b5e6-96231b3b80d8
Objective-C SDK modernization. convert message expression 
to Objective-C dot-syntax. rdar://18498572


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@219424 91177308-0d34-0410-b5e6-96231b3b80d8
[SystemZ] Turn on the integrated assembler by default


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@219426 91177308-0d34-0410-b5e6-96231b3b80d8
Special case 0 and 1 matcher in makeAllOfComposite().

Summary:
Remove unnecessary wrapping for the 0 and 1 matcher cases of
makeAllOfComposite(). We don't need a variadic wrapper for those cases.
Refactor TrueMatcher to take advandage of the new conversions between
DynTypedMatcher and Matcher<T>. Also, make it a singleton.
This change improves our clang-tidy related benchmarks by ~12%.

Reviewers: klimek

Subscribers: klimek, cfe-commits

Differential Revision: http://reviews.llvm.org/D5675

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@219431 91177308-0d34-0410-b5e6-96231b3b80d8
[Analysis] Add missing newlines at end of file.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@219439 91177308-0d34-0410-b5e6-96231b3b80d8
Objective-C SDK modernization. import Foundation even
when a previous definition of NS_OPTION is available
; e.g. from a pch. enhancement to rdar://18498550


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@219448 91177308-0d34-0410-b5e6-96231b3b80d8
Fix completion logic to allow for heterogeneous argument types in matcher overloads.

Summary:
There was an assumption that there were no matchers that were overloaded
on matchers and other types of arguments.
This assumption was broken recently with the addition of new matcher
overloads.

Fixes http://llvm.org/PR21226

Reviewers: pcc

Subscribers: klimek, cfe-commits

Differential Revision: http://reviews.llvm.org/D5711

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@219450 91177308-0d34-0410-b5e6-96231b3b80d8
Promote null pointer constants used as arguments to variadic functions

Make it possible to pass NULL through variadic functions on 64-bit
Windows targets. The Visual C++ headers define NULL to 0, when they
should define it to 0LL on Win64 so that NULL is a pointer-sized
integer.

Fixes PR20949.

Reviewers: thakis, rsmith

Differential Revision: http://reviews.llvm.org/D5480

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@219456 91177308-0d34-0410-b5e6-96231b3b80d8
PR21195: Emit .gcno files to the proper location.

When building with coverage, -no-integrated-as, and -c, the driver was
emitting -cc1 -coverage-file pointing at a file in /tmp. Ensure the
coverage file is emitted in the same directory as the output file.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@219460 91177308-0d34-0410-b5e6-96231b3b80d8
Hopefully fixes test failures for msvc.

Looks like llvm::sys::path::filename() was canonicalizing my paths
before emitting them for FileCheck to stumble over.

Fix a style nit with r219460 while I'm at it.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@219464 91177308-0d34-0410-b5e6-96231b3b80d8
Fix for OpenMP/parallel_firstprivate_codegen.cpp
Fix compatibility issues of the test with SystemZ target.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@219465 91177308-0d34-0410-b5e6-96231b3b80d8
Remove support for the IOS_SIMULATOR_DEPLOYMENT_TARGET env var.

It turns out that this was never used. Instead we just use the
IPHONEOS_DEPLOYMENT_TARGET variable for both iOS devices and simulator.
rdar://problem/18596744

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@219467 91177308-0d34-0410-b5e6-96231b3b80d8
_Really_ fix these tests (probably).


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@219468 91177308-0d34-0410-b5e6-96231b3b80d8
Revert r218865 because it introduced PR21236, a crash in codegen emitting the try block.


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