diff options
| author | Hans Wennborg <hans@hanshq.net> | 2018-02-16 12:06:32 +0000 |
|---|---|---|
| committer | Hans Wennborg <hans@hanshq.net> | 2018-02-16 12:06:32 +0000 |
| commit | 02d3361c380d7de3ff53d5ac47fada1f3738840c (patch) | |
| tree | 4965aceefea7e46638855e5e5bfc758731ef01d2 /clang/test | |
| parent | e627d1653e6865dffcf2e5d5389f13ecf0f295a0 (diff) | |
| download | bcm5719-llvm-02d3361c380d7de3ff53d5ac47fada1f3738840c.tar.gz bcm5719-llvm-02d3361c380d7de3ff53d5ac47fada1f3738840c.zip | |
Revert r325321 "[Sema] Take into account the current context when checking the"
This broke the Chromium build, see https://crbug.com/813017
> accessibility of a class member.
>
> This fixes PR32898.
>
> rdar://problem/33737747
>
> Differential revision: https://reviews.llvm.org/D36918
llvm-svn: 325335
Diffstat (limited to 'clang/test')
| -rw-r--r-- | clang/test/SemaCXX/access.cpp | 35 |
1 files changed, 0 insertions, 35 deletions
diff --git a/clang/test/SemaCXX/access.cpp b/clang/test/SemaCXX/access.cpp index 0707ec25be5..29a58a1388a 100644 --- a/clang/test/SemaCXX/access.cpp +++ b/clang/test/SemaCXX/access.cpp @@ -169,38 +169,3 @@ namespace ThisLambdaIsNotMyFriend { } void bar() { foo<void>(); } } - -namespace OverloadedMemberFunctionPointer { - template<class T, void(T::*pMethod)()> - void func0() {} - - template<class T, void(T::*pMethod)(int)> - void func1() {} - - template<class T> - void func2(void(*fn)()) {} // expected-note 2 {{candidate function not viable: no overload of 'func}} - - class C { - private: - friend void friendFunc(); - void overloadedMethod(); - protected: - void overloadedMethod(int); - public: - void overloadedMethod(int, int); - void method() { - func2<int>(&func0<C, &C::overloadedMethod>); - func2<int>(&func1<C, &C::overloadedMethod>); - } - }; - - void friendFunc() { - func2<int>(&func0<C, &C::overloadedMethod>); - func2<int>(&func1<C, &C::overloadedMethod>); - } - - void nonFriendFunc() { - func2<int>(&func0<C, &C::overloadedMethod>); // expected-error {{no matching function for call to 'func2'}} - func2<int>(&func1<C, &C::overloadedMethod>); // expected-error {{no matching function for call to 'func2'}} - } -} |

