Merging r155279:
------------------------------------------------------------------------
r155279 | chapuni | 2012-04-21 02:40:04 -0700 (Sat, 21 Apr 2012) | 1 line

SemaDeclCXX.cpp: Fix utf8 in comment.
------------------------------------------------------------------------


git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_31@155295 91177308-0d34-0410-b5e6-96231b3b80d8
Merging r155342:
------------------------------------------------------------------------
r155342 | asl | 2012-04-23 02:02:13 -0700 (Mon, 23 Apr 2012) | 3 lines

Do not use stdint.h, driver might provide invalid location for it. Instead, provide the types directly.
This should fix PR12628

------------------------------------------------------------------------


git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_31@155376 91177308-0d34-0410-b5e6-96231b3b80d8
Merging r155534:
------------------------------------------------------------------------
r155534 | lattner | 2012-04-24 23:09:30 -0700 (Tue, 24 Apr 2012) | 3 lines

don't use soname on OpenBSD, it doesn't support it.  Patch by
Brad Smith!

------------------------------------------------------------------------


git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_31@155572 91177308-0d34-0410-b5e6-96231b3b80d8
Merging r155535:
------------------------------------------------------------------------
r155535 | lattner | 2012-04-24 23:12:24 -0700 (Tue, 24 Apr 2012) | 5 lines

OpenBSD: Remove incorrect -pthread preprocessor define _POSIX_THREADS and replace
with _REENTRANT. Also remove undef _POSIX_THREADS in phread.h.

Patch by Brad Smith!

------------------------------------------------------------------------


git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_31@155573 91177308-0d34-0410-b5e6-96231b3b80d8
Merging r155576:
------------------------------------------------------------------------
r155576 | akirtzidis | 2012-04-25 11:39:17 -0700 (Wed, 25 Apr 2012) | 4 lines

When resolving default template arguments, it should be done in the declaration context
of the template what we are going to instantiate.

Fixes various crashes of rdar://11242625 & http://llvm.org/PR11421.
------------------------------------------------------------------------


git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_31@155582 91177308-0d34-0410-b5e6-96231b3b80d8
Merging r155670:
------------------------------------------------------------------------
r155670 | efriedma | 2012-04-26 15:43:24 -0700 (Thu, 26 Apr 2012) | 3 lines

Add a missing ExpressionEvaluationContext for template default arguments.  Fixes PR12581.


------------------------------------------------------------------------


git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_31@155671 91177308-0d34-0410-b5e6-96231b3b80d8
Merging r155728:
------------------------------------------------------------------------
r155728 | rsmith | 2012-04-27 12:33:05 -0700 (Fri, 27 Apr 2012) | 4 lines

PR12224 (sort of): Diagnose inheriting constructor declarations in C++11 mode.
We do not support IRGen for these, and get some parts of the semantic analysis
wrong.

------------------------------------------------------------------------


git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_31@155731 91177308-0d34-0410-b5e6-96231b3b80d8
Merging r155278:
------------------------------------------------------------------------
r155278 | chapuni | 2012-04-21 02:39:58 -0700 (Sat, 21 Apr 2012) | 3 lines

clang/test/Rewriter/rewrite-modern-extern-c-func-decl.mm: Mark as XFAIL:mingw for now, due to predefined __declspec.

It could be tweaked to add -triple i686-win32, though.
------------------------------------------------------------------------


git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_31@155934 91177308-0d34-0410-b5e6-96231b3b80d8
Merging r155803:
------------------------------------------------------------------------
r155803 | rsmith | 2012-04-29 17:16:51 -0700 (Sun, 29 Apr 2012) | 8 lines

PR11926 + duplicates: Fix crash in -Wuninitialized when using a compiler like
g++4.7, which reuses stack space allocated for temporaries. CFGElement::getAs
returns a suitably-cast version of 'this'. Patch by Markus Trippelsdorf!

No test: this code has the same observable behavior as the old code when built
with most compilers, and the tests were already failing when built with a
compiler for which this produced a broken binary.

------------------------------------------------------------------------


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


git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_31@156470 91177308-0d34-0410-b5e6-96231b3b80d8
Update.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_31@156641 91177308-0d34-0410-b5e6-96231b3b80d8
Merging r155860:
------------------------------------------------------------------------
r155860 | dgregor | 2012-04-30 16:42:57 -0700 (Mon, 30 Apr 2012) | 2 lines

Add support for openSUSE 12.2, from Ismail Donmez!

------------------------------------------------------------------------


git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_31@156670 91177308-0d34-0410-b5e6-96231b3b80d8
Merging r155975:
------------------------------------------------------------------------
r155975 | rsmith | 2012-05-01 18:29:43 -0700 (Tue, 01 May 2012) | 4 lines

Disable our non-standard delayed parsing of exception specifications. Delaying
the parsing of such things appears to be a conforming extension, but it breaks
libstdc++4.7's std::pair.

------------------------------------------------------------------------


git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_31@156672 91177308-0d34-0410-b5e6-96231b3b80d8
Merging r156047:
------------------------------------------------------------------------
r156047 | rjmccall | 2012-05-02 18:34:46 -0700 (Wed, 02 May 2012) | 4 lines

Merge x86-64-abi-sret-vs-2word-struct-param.cpp into the generic
x86_64-arguments.cpp test file and be sure to test the coerced
case as well.  Thanks to Wei-Ren Chen for bringing this test
to my attention.
------------------------------------------------------------------------


git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_31@156673 91177308-0d34-0410-b5e6-96231b3b80d8
Merging r155910:
------------------------------------------------------------------------
r155910 | chapuni | 2012-05-01 03:51:55 -0700 (Tue, 01 May 2012) | 1 line

clang/test/Rewriter/rewrite-modern-extern-c-func-decl.mm: Remove XFAIL and add -U__declspec. mingw32 tends to define built-in __declspec.
------------------------------------------------------------------------


git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_31@156674 91177308-0d34-0410-b5e6-96231b3b80d8
Merging r155823:
------------------------------------------------------------------------
r155823 | dgregor | 2012-04-30 09:20:27 -0700 (Mon, 30 Apr 2012) | 4 lines

Restore paren, bracket and brace counts in parser when
TentativeParsingAction is reverted, from Pasi Parviainen! Fixes
PR12480 / <rdar://problem/11341251>.

------------------------------------------------------------------------


git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_31@156675 91177308-0d34-0410-b5e6-96231b3b80d8
Merging r155788:
------------------------------------------------------------------------
r155788 | rsmith | 2012-04-29 00:31:09 -0700 (Sun, 29 Apr 2012) | 4 lines

PR12688: ParseCXXClassMemberDeclaration's sometimes-null ThisDecl takes another
victim. Don't crash if we have a delay-parsed exception specification for a
class member which is invalid in a way which precludes building a FunctionDecl.

------------------------------------------------------------------------


git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_31@156676 91177308-0d34-0410-b5e6-96231b3b80d8
Merging r155356:
------------------------------------------------------------------------
r155356 | dgregor | 2012-04-23 09:42:52 -0700 (Mon, 23 Apr 2012) | 3 lines

Teach RequireCompleteType about multi-dimensional arrays. Fixes
<rdar://problem/11284902>.

------------------------------------------------------------------------


git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_31@156677 91177308-0d34-0410-b5e6-96231b3b80d8
Merging r155608:
------------------------------------------------------------------------
r155608 | rsmith | 2012-04-25 20:16:45 -0700 (Wed, 25 Apr 2012) | 3 lines

PR12660: Don't crash when initializing a const reference from a braced init list
which creates a temporary by calling a constructor.

------------------------------------------------------------------------


git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_31@156678 91177308-0d34-0410-b5e6-96231b3b80d8
Merging r155424:
------------------------------------------------------------------------
r155424 | rsmith | 2012-04-23 22:06:35 -0700 (Mon, 23 Apr 2012) | 3 lines

PR12629: Cope with parenthesized function types when attaching a delayed
exception specification to a function.

------------------------------------------------------------------------


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