Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 23 Aug 2012 18:14:59 +0000 (UTC)
From:      Dimitry Andric <dim@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r239619 - head/contrib/llvm/tools/clang/lib/Sema
Message-ID:  <201208231814.q7NIEx4h072114@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: dim
Date: Thu Aug 23 18:14:59 2012
New Revision: 239619
URL: http://svn.freebsd.org/changeset/base/239619

Log:
  Pull in r162360 from upstream clang trunk:
  
    Merge existing attributes before processing pragmas in friend template
    declarations.
    Fixes pr13662.
  
  This should help when building Firefox with libc++.

Modified:
  head/contrib/llvm/tools/clang/lib/Sema/SemaTemplate.cpp

Modified: head/contrib/llvm/tools/clang/lib/Sema/SemaTemplate.cpp
==============================================================================
--- head/contrib/llvm/tools/clang/lib/Sema/SemaTemplate.cpp	Thu Aug 23 17:58:22 2012	(r239618)
+++ head/contrib/llvm/tools/clang/lib/Sema/SemaTemplate.cpp	Thu Aug 23 18:14:59 2012	(r239619)
@@ -1104,6 +1104,9 @@ Sema::CheckClassTemplate(Scope *S, unsig
   if (Attr)
     ProcessDeclAttributeList(S, NewClass, Attr);
 
+  if (PrevClassTemplate)
+    mergeDeclAttributes(NewClass, PrevClassTemplate->getTemplatedDecl());
+
   AddPushedVisibilityAttribute(NewClass);
 
   if (TUK != TUK_Friend)
@@ -1138,8 +1141,6 @@ Sema::CheckClassTemplate(Scope *S, unsig
     NewTemplate->setInvalidDecl();
     NewClass->setInvalidDecl();
   }
-  if (PrevClassTemplate)
-    mergeDeclAttributes(NewClass, PrevClassTemplate->getTemplatedDecl());
 
   ActOnDocumentableDecl(NewTemplate);
 



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201208231814.q7NIEx4h072114>