From: Paolo Carlini Date: Mon, 11 Mar 2019 10:30:24 +0000 (+0000) Subject: re PR c++/87571 (ICE in friend_accessible_p, accessing protected member of template... X-Git-Tag: basepoints/gcc-10~692 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=470fa18b8d54594b339dafbd77ece4b05b4f00c3;p=thirdparty%2Fgcc.git re PR c++/87571 (ICE in friend_accessible_p, accessing protected member of template friend inside template class) 2019-03-11 Paolo Carlini PR c++/87571 * g++.dg/template/memfriend18.C: New. From-SVN: r269575 --- diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index fc117d8f5a36..ac02d28b8575 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2019-03-11 Paolo Carlini + + PR c++/87571 + * g++.dg/template/memfriend18.C: New. + 2019-03-10 Rainer Orth * gdc.dg/pr89041.d: Mark as compile test. diff --git a/gcc/testsuite/g++.dg/template/memfriend18.C b/gcc/testsuite/g++.dg/template/memfriend18.C new file mode 100644 index 000000000000..ac21896e0a2a --- /dev/null +++ b/gcc/testsuite/g++.dg/template/memfriend18.C @@ -0,0 +1,19 @@ +// PR c++/87571 + +template struct A { + template struct B { + template friend class B; + protected: + int protected_member_; + public: + template int method(const B& other) const { + return other.protected_member_; + } + }; +}; + +int main() { + A::B a; + A::B b; + a.method(b); +}