Macho-embedded: rename compiler-rt support from Darwin-embedded

There's nothing Darwin-based in the files or target now, so the previous name
is now misleading.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@199733 91177308-0d34-0410-b5e6-96231b3b80d8
Macho-embedded: fix tests after last rename

Very sorry, I managed to completely forget "make check".


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@199739 91177308-0d34-0410-b5e6-96231b3b80d8
clang-format: Enable formatting for .proto and .protodevel files.

Support for protocol buffer files seems complete enough.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@199750 91177308-0d34-0410-b5e6-96231b3b80d8
Add -m16 option for using x86-*-*-code16 triple

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@199754 91177308-0d34-0410-b5e6-96231b3b80d8
Fix -Wsometimes-uninitialized in r199754

Also make the -m16 check x86-specific. Other archs may have a different take on
things.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@199755 91177308-0d34-0410-b5e6-96231b3b80d8
Debug info: use the file a typedef is defined in as its decl_file instead
of the current compilation unit.
As a side effect this enables many more LTO uniquing opportunities.

rdar://problem/15851206

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@199757 91177308-0d34-0410-b5e6-96231b3b80d8
revert 199757 for buildbot breakage.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@199758 91177308-0d34-0410-b5e6-96231b3b80d8
Debug info: use the file a typedef is defined in as its decl_file instead
of the current compilation unit.
As a side effect this enables many more LTO uniquing opportunities.

This reapplies r199757 with a better testcase.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@199760 91177308-0d34-0410-b5e6-96231b3b80d8
Correct the function name shown in diagnostics in warn-thread-safety-analysis.c

Patch by Alex Wang.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@199762 91177308-0d34-0410-b5e6-96231b3b80d8
MSVC ABI: Support C++11's auto on variables

The MSVC C++ ABI always uses the deduced type in place of auto when
generating external names for variables.

N.B.  MSVC doesn't support C++1y's 'operator auto' and this patch will
not give us said functionality.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@199764 91177308-0d34-0410-b5e6-96231b3b80d8
Teach Clang to look in its installation libdir for libraries (such as
libc++) when the installation is within the system root.

This doesn't really help cross compiles much, but we don't (currently)
have a great story around libc++, cross compiles, and who is responsible
for building and/or installing the libraries. However, it handles the
very common case of non-cross builds in a way entirely consistent with
GCC, so I'm hopeful this won't really hose anyone.

This is the second patch that I think should be backported to 3.4 to
give folks an easy to checkout and install working Clang+libc++
toolchain.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@199769 91177308-0d34-0410-b5e6-96231b3b80d8
Fix regression in r197623: only diagnose a by-copy capture of an incomplete
type if the capture is, actually, by copy.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@199772 91177308-0d34-0410-b5e6-96231b3b80d8
Correct various uses of 'argument' that in fact refer to function parameters

Cleanup only.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@199773 91177308-0d34-0410-b5e6-96231b3b80d8
Delay attribute checking until auto types are deduced

Checking in ActOnVariableDeclarator computes and caches the linkage using
the non-deduced auto type which defaults to external linkage. Depending on
how the auto type is deduced linkage can change and conflict with the
cached linkage, hitting asserts.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@199774 91177308-0d34-0410-b5e6-96231b3b80d8
When formatting a C++-only declaration name, enable C++ mode in the formatter's
language options. This is not really ideal -- we should require the right
language options to be passed in, or not require language options to format a
name -- but it fixes a number of *obviously* wrong formattings. Patch by
Olivier Goffart!


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@199778 91177308-0d34-0410-b5e6-96231b3b80d8
Build an appropriate (albeit trivial) TypeSourceInfo for a destructor name, so
AST consumers can determine where the destructor name was written. Patch by
Olivier Goffart!


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@199779 91177308-0d34-0410-b5e6-96231b3b80d8
ObjectiveC driver. change to reinstate -fno-objc-legacy-dispatch behavior 
when the deployment target is 10.5. // rdar://15852259


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@199780 91177308-0d34-0410-b5e6-96231b3b80d8
Enforce restrictions that 'main' is not allowed to be deleted, or to be used by
the program, in C++. (We allow the latter as an extension, since we've always
permitted it, and GCC does the same, and our supported C++ ABIs don't do
anything special in main.)


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@199782 91177308-0d34-0410-b5e6-96231b3b80d8
Add a test file missed from r199782.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@199783 91177308-0d34-0410-b5e6-96231b3b80d8
clang-cl: make /Zp a Joined option (PR18503)

We don't currently support this option, but we should be able to parse it.

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