[C++11] Use 'nullptr'.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@209612 91177308-0d34-0410-b5e6-96231b3b80d8
[C++11] Use 'nullptr'. Sema edition.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@209613 91177308-0d34-0410-b5e6-96231b3b80d8
clang-format: Keep '{' of dict literals on the same line in Allman style

Before:
  void f()
  {
    [object
        someMethod:@
        { @"a" : @"b" }];
  }

After:
  void f()
  {
    [object someMethod:@{ @"a" : @"b" }];
  }

This fixes llvm.org/PR19854.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@209615 91177308-0d34-0410-b5e6-96231b3b80d8
clang-format: Split up moveStateToNextToken.

No functional changes intended.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@209626 91177308-0d34-0410-b5e6-96231b3b80d8
Rejecting the mutable specifier on a freestanding type declaration, instead of supporting it as a "extension" (which serves no purpose). Un-XFAILing the test for mutable specifiers.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@209635 91177308-0d34-0410-b5e6-96231b3b80d8
[C++11] Use 'nullptr'. StaticAnalyzer edition.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@209642 91177308-0d34-0410-b5e6-96231b3b80d8
Allow hasBody on CXXForRangeStmt nodes and update the docs.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@209647 91177308-0d34-0410-b5e6-96231b3b80d8
Adds child traversal matchers for IfStmt's then and else branches.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@209649 91177308-0d34-0410-b5e6-96231b3b80d8
Make equalsNode work with pointers to subtypes.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@209652 91177308-0d34-0410-b5e6-96231b3b80d8
Parsing/Sema for OMPCollapseClause.
Actual usage in Sema for collapsing loops will in some future patch.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@209660 91177308-0d34-0410-b5e6-96231b3b80d8
ASTMatchers.h: Appease msc17.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@209661 91177308-0d34-0410-b5e6-96231b3b80d8
Revert small change to EmitDeclRefLValue

That small change, although it looked harmless, it made emitting the LValue
on the PHI node without the proper cast. Reverting it fixes PR19841.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@209663 91177308-0d34-0410-b5e6-96231b3b80d8
Fix pr19841.cpp on release mode

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@209666 91177308-0d34-0410-b5e6-96231b3b80d8
Fix pr19841, bb are also unnamed

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@209668 91177308-0d34-0410-b5e6-96231b3b80d8
Objective-C. Fixes an obscuer crash caused by multiple inclusion of
same framework after complaining about duplicate class definition.
// rdar://17024681


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@209672 91177308-0d34-0410-b5e6-96231b3b80d8
Add range accessors for captures of a LambdaExpr.

Summary:
This adds LambdaExpr::captures(), LambdaExpr::explicit_captures()
and LambdaExpr::implicit_captures() as simple wrappers over the underlying
*_begin()/*_end() functions.

Reviewers: aaron.ballman

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

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@209679 91177308-0d34-0410-b5e6-96231b3b80d8
Add a test that we don't store stale modtime in modules

The change from r209195 turned out to be important to avoid saving stale
modification time/expected size information in a module file when there
are 3 or more modules in a dependency chain and the bottom one is
rebuilt. So add a test for that.

rdar://problem/17038180

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@209682 91177308-0d34-0410-b5e6-96231b3b80d8
Retain isImplicit flag for local variable declarations when instantiating
templates.

Reviewers: rsmith

Reviewed By: rsmith

Subscribers: cfe-commits

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

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@209686 91177308-0d34-0410-b5e6-96231b3b80d8
Don't dllimport/export destructor variants implemented by thunks.

MSVC doesn't export these functions, so trying to import them doesnt' work.
Also, don't let any dll attributes on the CXXDestructorDecl influence the
thunk's linkage -- they should always be linkonce_odr.

This takes care of the FIXME's for this in Nico's tests.

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

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@209706 91177308-0d34-0410-b5e6-96231b3b80d8
Move the logic for testing for namespace std into one location.  This check can
be performed by using Decl::isInStdNamespace or DeclContext::isStdNamespace


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