Add information about C++1y support to Clang 3.4 release notes.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_34@197115 91177308-0d34-0410-b5e6-96231b3b80d8
Fix RST syntax errors.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_34@197117 91177308-0d34-0410-b5e6-96231b3b80d8
Fix another formatting bug.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_34@197118 91177308-0d34-0410-b5e6-96231b3b80d8
Merging r197120:
------------------------------------------------------------------------
r197120 | rsmith | 2013-12-11 18:42:17 -0800 (Wed, 11 Dec 2013) | 2 lines

Update user manual to note that implementation for C++11 and C++1y is complete, and fix a bunch of other issues here.

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


git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_34@197127 91177308-0d34-0410-b5e6-96231b3b80d8
Improve the 3.4 release notes about the static analyzer new features

git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_34@197225 91177308-0d34-0410-b5e6-96231b3b80d8
Merging r197305:
------------------------------------------------------------------------
r197305 | rsmith | 2013-12-13 19:18:05 -0800 (Fri, 13 Dec 2013) | 7 lines

PR18246: When performing template argument deduction to decide which template
is specialized by an explicit specialization, start from the first declaration
in case we've got a member of a class template (redeclarations might not number
the template parameters the same way).

Our recover here is still far from ideal.

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


git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_34@197319 91177308-0d34-0410-b5e6-96231b3b80d8
Merging r197298:
------------------------------------------------------------------------
r197298 | rsmith | 2013-12-13 17:04:22 -0800 (Fri, 13 Dec 2013) | 3 lines

PR18232: implement instantiation for class-scope explicit specializations of
class templates (a Microsoft extension).

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


git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_34@197320 91177308-0d34-0410-b5e6-96231b3b80d8
Merging r196212:
------------------------------------------------------------------------
r196212 | alp | 2013-12-02 22:13:01 -0800 (Mon, 02 Dec 2013) | 22 lines

Emit an extension warning when changing system header tokens

clang converts keywords to identifiers for compatibility with various system
headers such as GNU libc.

Implement a -Wkeyword-compat extension warning to diagnose those cases. The
warning is on by default but will generally be ignored in system headers. It
can however be enabled globally to aid standards conformance testing.

This also changes the __uptr keyword avoidance from r195710 to no longer
special-case system headers, bringing it in line with other similar workarounds
in clang.

Implementation returns bool for symmetry with token annotation functions.

Some examples:

warning: keyword '__is_pod' will be treated as an identifier for the remainder of the translation unit [-Wkeyword-compat]
struct __is_pod

warning: keyword '__uptr' will be treated as an identifier here [-Wkeyword-compat]
union w *__uptr;
------------------------------------------------------------------------


git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_34@197359 91177308-0d34-0410-b5e6-96231b3b80d8
Rewrite the static analyzer changes description for the 3.4 release.

After chatting with Anna Zaks, she believes that my code samples were
more bugs in the previous releases of the static analyzer.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_34@197377 91177308-0d34-0410-b5e6-96231b3b80d8
fix a weird phrase

git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_34@197379 91177308-0d34-0410-b5e6-96231b3b80d8
Add blurb about leak sanitizer.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_34@197417 91177308-0d34-0410-b5e6-96231b3b80d8
Fix link.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_34@197443 91177308-0d34-0410-b5e6-96231b3b80d8
Merging r197409:
------------------------------------------------------------------------
r197409 | rikka | 2013-12-16 11:19:18 -0800 (Mon, 16 Dec 2013) | 4 lines

Make Sema::BuildCXXNestedNameSpecifier correctly clear the previous
CXXScopeSpec when necessary while performing typo correction. This fixes
the crash reported in PR18213 (the problem existed since r185487, and
r193020 made it easier to hit).
------------------------------------------------------------------------


git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_34@197463 91177308-0d34-0410-b5e6-96231b3b80d8
Update of the release notes to provide examples of the new checks/warnings

git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_34@197667 91177308-0d34-0410-b5e6-96231b3b80d8
Remove help notes from the ReleaseNotes.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_34@197841 91177308-0d34-0410-b5e6-96231b3b80d8
---Merging r196453

    Parse: Recover better from bad definitions with base specifiers
    
    We would skip until the next comma, hoping good things whould lie there,
    however this would fail when we have such things as this:
    
    struct A {};
    template <typename>
    struct D;
    template <>
    struct D<C> : B, A::D;
    
    Once this happens, we would believe that D with a nested namespace
    specifier of A was a variable that was being declared. We would go on
    to complain that there was an extraneous 'template <>' on their variable
    declaration.
    
    Crashes would happen when 'A' gets defined as 'enum class A {}' as
    various asserts would fire.
    
    Instead, we should skip up until the semicolon if we see that we are in
    the middle of a definition and the current token is a ':'
    
    This fixes PR17084.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_34@197905 91177308-0d34-0410-b5e6-96231b3b80d8
Small reformatting changes.

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