]> granicus.if.org Git - clang/commit
Address http://bugs.llvm.org/pr30994 so that a non-friend can properly replace a...
authorYaron Keren <yaron.keren@gmail.com>
Mon, 17 Apr 2017 08:51:20 +0000 (08:51 +0000)
committerYaron Keren <yaron.keren@gmail.com>
Mon, 17 Apr 2017 08:51:20 +0000 (08:51 +0000)
commiteb26f1e4a82d9e76c643e9253115a364e508610b
treeb68c8f3410e885ebaaa0ccd5cdf9ba4fb551fdd5
parent7b2a25cbbdb9d8495c576f86739d13cd055260de
Address http://bugs.llvm.org/pr30994 so that a non-friend can properly replace a friend, and a visible friend can properly replace an invisible friend but not vice verse, and definitions are not replaced. This fixes the two FIXME in SemaTemplate/friend-template.cpp.

The code implements Richard Smith suggestion in comment 3 of the PR.

reviewer: Vassil Vassilev

Differential Revision: https://reviews.llvm.org/D31540

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@300443 91177308-0d34-0410-b5e6-96231b3b80d8
include/clang/AST/DeclBase.h
lib/AST/Decl.cpp
lib/AST/DeclBase.cpp
test/SemaTemplate/friend-template.cpp