Rename an extension warning to ext_...


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@195095 91177308-0d34-0410-b5e6-96231b3b80d8
Adding subjects to calling convention attributes. No functional changes intended.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@195097 91177308-0d34-0410-b5e6-96231b3b80d8
Improving calling convention test coverage by adding tests for things not currently handled. Specifically: the diagnostics in SemaDeclAttr.cpp, and ensuring that calling convention attributes are applied to ObjC method declarations. No functional changes.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@195098 91177308-0d34-0410-b5e6-96231b3b80d8
Giving this test a triple since it uses a calling convention attribute.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@195099 91177308-0d34-0410-b5e6-96231b3b80d8
[Mips] Do not adjust float-abi flags in case of MIPS16 mode. This code
should be isolated in the backend (r195123). From the frontend point
of view in case of "-mhard-float -mips16" combination of flags the float
ABI mode should remain unchanged.

The patch reviewed by Reed Kotler.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@195124 91177308-0d34-0410-b5e6-96231b3b80d8
Revert r194540, it breaks various C++ programs.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@195126 91177308-0d34-0410-b5e6-96231b3b80d8
Change VariadicOperatorMatcherInterface<> to take an ArrayRef<DynTypedMatcher>.

Summary:
Change VariadicOperatorMatcherInterface<> to take an ArrayRef<DynTypedMatcher>.
This simplifies its implementation and use.
Also reduces the number of symbols in Registry.cpp.o, which we are always in need.

Reviewers: klimek

CC: cfe-commits, revane, klimek

Differential Revision: http://llvm-reviews.chandlerc.com/D2216

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@195127 91177308-0d34-0410-b5e6-96231b3b80d8
Refactoring: replaced (*(I + x)) with I[x].

Summary: Pure refactoring, no semantic changes intended.

Reviewers: klimek

Reviewed By: klimek

CC: cfe-commits, klimek

Differential Revision: http://llvm-reviews.chandlerc.com/D2220

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@195128 91177308-0d34-0410-b5e6-96231b3b80d8
YAML I/O - Added default trait support for std:string.  Making another attempt at this, this time doing a clean build on Linux, and running the LLVM, clang, and extra tests, to try to make sure there's no problems.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@195134 91177308-0d34-0410-b5e6-96231b3b80d8
bjectiveC. Use a uniform diagnostic for
'objc_bridge' attribute. // rdar://15454846.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@195135 91177308-0d34-0410-b5e6-96231b3b80d8
ObjectiveC migrator. Do not migrate categories with
'Deprecated' name suffix.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@195137 91177308-0d34-0410-b5e6-96231b3b80d8
Documentation parsing: in HeaderDoc, \abstract is equivalent to \brief


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@195145 91177308-0d34-0410-b5e6-96231b3b80d8
ObjectiveC ARC. Removes a bogus warning when a weak 
property is redeclared as 'weak' in class extension.
// rdar://15465916


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@195146 91177308-0d34-0410-b5e6-96231b3b80d8
Remove full path from CHECK line


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@195147 91177308-0d34-0410-b5e6-96231b3b80d8
ARM: embedded v7 'darwin' doesn't get min-version defines.

Make sure armv7 doesn't get the iOS deployment version definitions when
it's being used for non-iOS.

rdar://15497681

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@195149 91177308-0d34-0410-b5e6-96231b3b80d8
Further fixes when thiscall is the default for methods.

The previous patches tried to deduce the correct function type. I now realize
this is not possible in general. Consider

class foo {
    template <typename T> static void bar(T v);
};
extern template void foo::bar(const void *);

We will only know that bar is static after a lookup, so we have to handle this
in the template instantiation code.

This patch reverts my previous two changes (but not the tests) and instead
handles the issue in DeduceTemplateArguments.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@195154 91177308-0d34-0410-b5e6-96231b3b80d8
Microsoft Record Layout: zero sized base after base with vbtbl fix

Microsoft adds an extra byte of padding before laying out zero sized 
non-virtual bases if the non-virtual base before it contains a vbptr.  
This patch adds the same behavior to clang.

Differential Revision: http://llvm-reviews.chandlerc.com/D2106



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@195158 91177308-0d34-0410-b5e6-96231b3b80d8
Switching some string literals to be generated by the AttributeList object itself.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@195160 91177308-0d34-0410-b5e6-96231b3b80d8
PR9547: If we're parsing a simple-declaration that contains a tag definition,
and we see an ill-formed declarator that would probably be well-formed if the
tag definition were just missing a semicolon, use that as the diagnostic
instead of producing some other mysterious error.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@195163 91177308-0d34-0410-b5e6-96231b3b80d8
Add a mangler entry point for TBAA rather than using RTTI directly

Summary:
RTTI is not yet implemented for the Microsoft C++ ABI and isn't expected
soon.  We could easily add the mangling, but the error is what prevents
us from silently miscompiling code that expects RTTI.

Instead, add a new mangleTypeName entry point that simply forwards to
mangleName or mangleType to produce a string that isn't part of the ABI.
Itanium can continue to use RTTI names to avoid unecessary test
breakage.

This also seems like the right design.  The fact that TBAA names happen
to be RTTI names is now an implementation detail of the mangler, rather
than part of TBAA.

Differential Revision: http://llvm-reviews.chandlerc.com/D2153

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