Date: Wed, 1 Jan 2014 00:37:43 +0000 (UTC) From: Dimitry Andric <dim@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org Subject: svn commit: r260148 - in vendor/clang/dist: docs lib/Basic lib/Parse test/Parser Message-ID: <201401010037.s010bh1m063064@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: dim Date: Wed Jan 1 00:37:42 2014 New Revision: 260148 URL: http://svnweb.freebsd.org/changeset/base/260148 Log: Vendor import of clang RELEASE_34/final tag r197956 (effectively, 3.4 release): https://llvm.org/svn/llvm-project/cfe/tags/RELEASE_34/final@197956 Modified: vendor/clang/dist/docs/ReleaseNotes.rst vendor/clang/dist/lib/Basic/Version.cpp vendor/clang/dist/lib/Parse/ParseDeclCXX.cpp vendor/clang/dist/test/Parser/recovery.cpp Modified: vendor/clang/dist/docs/ReleaseNotes.rst ============================================================================== --- vendor/clang/dist/docs/ReleaseNotes.rst Wed Jan 1 00:37:10 2014 (r260147) +++ vendor/clang/dist/docs/ReleaseNotes.rst Wed Jan 1 00:37:42 2014 (r260148) @@ -18,23 +18,22 @@ documentation <http://llvm.org/docs/Rele releases may be downloaded from the `LLVM releases web site <http://llvm.org/releases/>`_. -For more information about Clang or LLVM, including information about -the latest release, please check out the main `Clang Web -Site <http://clang.llvm.org>`_ or the `LLVM Web -Site <http://llvm.org>`_. - -Note that if you are reading this file from a Subversion checkout or the -main Clang web page, this document applies to the *next* release, not -the current one. To see the release notes for a specific release, please -see the `releases page <http://llvm.org/releases/>`_. +For more information about Clang or LLVM, including information about the +latest release, please check out the main `Clang Web Site +<http://clang.llvm.org>`_ or the `LLVM Web Site <http://llvm.org>`_. + +Note that if you are reading this file from a Subversion checkout or the main +Clang web page, this document applies to the *next* release, not the current +one. To see the release notes for a specific release, please see the `releases +page <http://llvm.org/releases/>`_. What's New in Clang 3.4? ======================== -Some of the major new features and improvements to Clang are listed -here. Generic improvements to Clang as a whole or to its underlying -infrastructure are described first, followed by language-specific -sections with improvements to Clang's support for those languages. +Some of the major new features and improvements to Clang are listed here. +Generic improvements to Clang as a whole or to its underlying infrastructure +are described first, followed by language-specific sections with improvements +to Clang's support for those languages. Last release which will build as C++98 -------------------------------------- @@ -58,9 +57,9 @@ Major New Features Improvements to Clang's diagnostics ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -Clang's diagnostics are constantly being improved to catch more issues, -explain them more clearly, and provide more accurate source information -about them. The improvements since the 3.3 release include: +Clang's diagnostics are constantly being improved to catch more issues, explain +them more clearly, and provide more accurate source information about them. The +improvements since the 3.3 release include: - -Wheader-guard warns on mismatches between the #ifndef and #define lines in a header guard. Modified: vendor/clang/dist/lib/Basic/Version.cpp ============================================================================== --- vendor/clang/dist/lib/Basic/Version.cpp Wed Jan 1 00:37:10 2014 (r260147) +++ vendor/clang/dist/lib/Basic/Version.cpp Wed Jan 1 00:37:42 2014 (r260148) @@ -36,7 +36,7 @@ std::string getClangRepositoryPath() { // If the SVN_REPOSITORY is empty, try to use the SVN keyword. This helps us // pick up a tag in an SVN export, for example. - StringRef SVNRepository("$URL: https://llvm.org/svn/llvm-project/cfe/branches/release_34/lib/Basic/Version.cpp $"); + StringRef SVNRepository("$URL: https://llvm.org/svn/llvm-project/cfe/tags/RELEASE_34/final/lib/Basic/Version.cpp $"); if (URL.empty()) { URL = SVNRepository.slice(SVNRepository.find(':'), SVNRepository.find("/lib/Basic")); Modified: vendor/clang/dist/lib/Parse/ParseDeclCXX.cpp ============================================================================== --- vendor/clang/dist/lib/Parse/ParseDeclCXX.cpp Wed Jan 1 00:37:10 2014 (r260147) +++ vendor/clang/dist/lib/Parse/ParseDeclCXX.cpp Wed Jan 1 00:37:42 2014 (r260148) @@ -1427,7 +1427,13 @@ void Parser::ParseClassSpecifier(tok::To << DeclSpec::getSpecifierName(TagType); } - SkipUntil(tok::comma, StopAtSemi); + // If we are parsing a definition and stop at a base-clause, continue on + // until the semicolon. Continuing from the comma will just trick us into + // thinking we are seeing a variable declaration. + if (TUK == Sema::TUK_Definition && Tok.is(tok::colon)) + SkipUntil(tok::semi, StopBeforeMatch); + else + SkipUntil(tok::comma, StopAtSemi); return; } Modified: vendor/clang/dist/test/Parser/recovery.cpp ============================================================================== --- vendor/clang/dist/test/Parser/recovery.cpp Wed Jan 1 00:37:10 2014 (r260147) +++ vendor/clang/dist/test/Parser/recovery.cpp Wed Jan 1 00:37:42 2014 (r260148) @@ -119,3 +119,9 @@ void MissingSemiInFunction() { struct Inner4 {} // ok, no missing ';' here Inner5; } + +namespace PR17084 { +enum class EnumID {}; +template <typename> struct TempID; +template <> struct TempID<BadType> : BadType, EnumID::Garbage; // expected-error{{use of undeclared identifier 'BadType'}} +}
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201401010037.s010bh1m063064>