Add missing "non-constant" diagnostic for a member call on a temporary of
non-literal class type.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@210696 91177308-0d34-0410-b5e6-96231b3b80d8
Remove dev/null redirect and x86 backend requirement from new test.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@210699 91177308-0d34-0410-b5e6-96231b3b80d8
Objective-C. Accept '__attribute__((__ns_returns_retained__))' 
for function/methods returning block in MRR mode as well.
// rdar://17259812


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@210706 91177308-0d34-0410-b5e6-96231b3b80d8
Fix the VS2012 build.

It didn't handle the in-class member initializer and compound literal.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@210707 91177308-0d34-0410-b5e6-96231b3b80d8
Don't slice SemaDiagnosticBuilder

I wasn't able to figure out how to emit this diagnostic from a SFINAE
context, so I don't have a test.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@210713 91177308-0d34-0410-b5e6-96231b3b80d8
Don't inherit dllimport to inline move assignment operators

Current MSVC versions don't have move assignment operators, so we
can't rely on them being available in the dll. If we have the
definition, we can just use that directly. This breaks pointer
equality, but should work fine otherwise.

When there is an MSVC version that supports move assignment,
we can key this off the -fmsc-ver option.

http://reviews.llvm.org/D4105

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@210715 91177308-0d34-0410-b5e6-96231b3b80d8
Accomodate for message differences on windows.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@210722 91177308-0d34-0410-b5e6-96231b3b80d8
PR19966: don't crash/assert when __underlying_type is applied to an incomplete
enumeration type. I've also filed a LWG issue pointing out that this should be
ill-formed.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@210723 91177308-0d34-0410-b5e6-96231b3b80d8
[modules] Add first-draft module maps for Clang. These don't cover everything
yet, but they're enough for a clean bootstrap (with a few local patches that
are yet to be committed).


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@210726 91177308-0d34-0410-b5e6-96231b3b80d8
Errno should use generic_category.

Sorry, no testcase, just noticed while trying to remove llvm's system_error.h

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@210727 91177308-0d34-0410-b5e6-96231b3b80d8
Use generic_category from the std namespace.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@210736 91177308-0d34-0410-b5e6-96231b3b80d8
Driver: use more range-based for loops

Mechanical change converting some of the simpler for loops into range-based for
loops.  NFC.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@210738 91177308-0d34-0410-b5e6-96231b3b80d8
Give clang-format its own error category.

The posix errno values are probably to the best thing to use for
describing parse errors.

This should also fix the mingw build.

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

Thanks to Alp Toker for noticing.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@210744 91177308-0d34-0410-b5e6-96231b3b80d8
Add a std:: prefix in cases where ADL would have failed on windows.

This is in preparation for removing make_error_code from the llvm namespace.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@210745 91177308-0d34-0410-b5e6-96231b3b80d8
Use ArrayRef in some function parameters instead of a pointer and count. No functional change.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@210750 91177308-0d34-0410-b5e6-96231b3b80d8
Use StringRef to simplify code. No functional change.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@210751 91177308-0d34-0410-b5e6-96231b3b80d8
Complete the switch from mappings to declarative diagnostic severities

This begins to address cognitive dissonance caused by treating the Note
diagnostic level as a severity in the diagnostic engine.

No change in functionality.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@210758 91177308-0d34-0410-b5e6-96231b3b80d8
DiagnosticsEngine: update severity setters to new terminology

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@210764 91177308-0d34-0410-b5e6-96231b3b80d8
Fix msvc unittest build.

Looks like msvc has an asymmetrical operator ==.

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