summaryrefslogtreecommitdiffstats
path: root/clang/lib/Parse/ParseDeclCXX.cpp
diff options
context:
space:
mode:
authorRichard Smith <richard@metafoo.co.uk>2020-01-30 17:42:17 -0800
committerRichard Smith <richard@metafoo.co.uk>2020-01-30 17:43:48 -0800
commit0ce7ea7c6e0e6fde5c961a574592bdd2ebebdeb7 (patch)
treee62f990cf0e494e164c321b470a8912c89058a09 /clang/lib/Parse/ParseDeclCXX.cpp
parent800395c54754c04a761b1bb6360bb4b2dc2935f4 (diff)
downloadbcm5719-llvm-0ce7ea7c6e0e6fde5c961a574592bdd2ebebdeb7.tar.gz
bcm5719-llvm-0ce7ea7c6e0e6fde5c961a574592bdd2ebebdeb7.zip
PR41991: Accept attributes on defaulted and deleted friends.
Attributes are permitted on friend definitions, but we only checked for a proper function body, not for the =default / =delete cases. (cherry picked from commit 5ae6554a1dcd2e39346030c06d364492901c9e8d)
Diffstat (limited to 'clang/lib/Parse/ParseDeclCXX.cpp')
-rw-r--r--clang/lib/Parse/ParseDeclCXX.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/clang/lib/Parse/ParseDeclCXX.cpp b/clang/lib/Parse/ParseDeclCXX.cpp
index f872aa3a950..09e5c7996fc 100644
--- a/clang/lib/Parse/ParseDeclCXX.cpp
+++ b/clang/lib/Parse/ParseDeclCXX.cpp
@@ -2716,7 +2716,7 @@ Parser::ParseCXXClassMemberDeclaration(AccessSpecifier AS,
// C++11 [dcl.attr.grammar] p4: If an attribute-specifier-seq appertains
// to a friend declaration, that declaration shall be a definition.
if (DeclaratorInfo.isFunctionDeclarator() &&
- DefinitionKind != FDK_Definition && DS.isFriendSpecified()) {
+ DefinitionKind == FDK_Declaration && DS.isFriendSpecified()) {
// Diagnose attributes that appear before decl specifier:
// [[]] friend int foo();
ProhibitAttributes(FnAttrs);
OpenPOWER on IntegriCloud