Skip site navigation (1)Skip section navigation (2)
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>