diff options
author | Anders Carlsson <andersca@mac.com> | 2009-05-11 22:42:30 +0000 |
---|---|---|
committer | Anders Carlsson <andersca@mac.com> | 2009-05-11 22:42:30 +0000 |
commit | d4f551b3491777ffcc7f2664327810219b7e0e16 (patch) | |
tree | ddd13bd8baf9c6bb0946785880039e9c3a19baad | |
parent | 159c763373b2fc26978dea9563eab3f097df9b3f (diff) |
Fix test case by always setting the type spec type, even for friend decls.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@71486 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | lib/Parse/ParseDeclCXX.cpp | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/lib/Parse/ParseDeclCXX.cpp b/lib/Parse/ParseDeclCXX.cpp index da99ab9aa2..0718d3bfb5 100644 --- a/lib/Parse/ParseDeclCXX.cpp +++ b/lib/Parse/ParseDeclCXX.cpp @@ -530,14 +530,13 @@ void Parser::ParseClassSpecifier(tok::TokenKind TagTokKind, return; } - if (DS.isFriendSpecified() && - !Actions.ActOnFriendDecl(CurScope, DS.getFriendSpecLoc(), - TagOrTempResult.get())) - return; - if (DS.SetTypeSpecType(TagType, StartLoc, PrevSpec, TagOrTempResult.get().getAs<void>())) Diag(StartLoc, diag::err_invalid_decl_spec_combination) << PrevSpec; + + if (DS.isFriendSpecified()) + Actions.ActOnFriendDecl(CurScope, DS.getFriendSpecLoc(), + TagOrTempResult.get()); } /// ParseBaseClause - Parse the base-clause of a C++ class [C++ class.derived]. |