Don't use the gcc driver for assembling.

Clang knows how to use the gnu assembler directly from doing so on linux and
hurd. The existing support worked out of the box on cygwin and mingw and I was
able to bootstrap clang with it in both systems (with pending patches for the
new mingw abi, but that is independent of the assembler).

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@195554 91177308-0d34-0410-b5e6-96231b3b80d8
clang-format: Support Qt's slot access specifiers.

This fixes llvm.org/PR17241.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@195555 91177308-0d34-0410-b5e6-96231b3b80d8
[CodeGen] If there is a function definition with duplicate mangled name, emit an error instead of asserting.

rdar://15522601 & http://llvm.org/PR18031

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

Full discourse at:

  http://lists.cs.uiuc.edu/pipermail/cfe-commits/Week-of-Mon-20131104/092514.html
  http://lists.cs.uiuc.edu/pipermail/llvmdev/2013-November/068124.html

Patch by Dimitry Andric and Alexey Dokuchaev!

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@195558 91177308-0d34-0410-b5e6-96231b3b80d8
Move logic to check if a class is tagged with objc_suppress_protocol_methods into a helper.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@195559 91177308-0d34-0410-b5e6-96231b3b80d8
Remove optional parameter bit from attribute ObjCSuppressProtocol.

This refines some diagnostics and reduces some boilerplate checking logic.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@195560 91177308-0d34-0410-b5e6-96231b3b80d8
Use specific_attr_iterator to tighten loop over ObjCSuppressProtocolAttrs.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@195561 91177308-0d34-0410-b5e6-96231b3b80d8
Fix a typo: "SLocEnty" should read "SLocEntry".


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@195563 91177308-0d34-0410-b5e6-96231b3b80d8
[Parser] Unbreak parsing with incremental parsing enabled and add a unit-test for it.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@195564 91177308-0d34-0410-b5e6-96231b3b80d8
[test] Add test case I forgot to add for r195564.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@195572 91177308-0d34-0410-b5e6-96231b3b80d8
Parse Microsoft __declspec appearing after class body

MSVC applies these to the following declaration only if present, otherwise
silently ignores them whereas we'll issue a warning.

Handling differs from ordinary attributes appearing in the same place, so add a
Sema test to make sure we get it right.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@195577 91177308-0d34-0410-b5e6-96231b3b80d8
Making some attribute diagnostics more consistent. Removes a newly-unused diagnostic.

Reviewed by Fariborz Jahanian

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@195578 91177308-0d34-0410-b5e6-96231b3b80d8
__declspec(uuid) is only allowed on a class according to MSDN; this makes the semantic checking consistent with what the attribute specifies in Attr.td. Also adds a test case.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@195579 91177308-0d34-0410-b5e6-96231b3b80d8
__declspec(uuid) is only supported for C++ code according to MSDN (as well as behaviorally in MSVC). This adds a generic diagnostic that we use for uuid, and can use for some other attributes as well, and adds a testcase.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@195580 91177308-0d34-0410-b5e6-96231b3b80d8
Switching the common attribute over to using the generic diagnostic, and removing the now-unused diagnostic. Updates a test case.

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