1// PR c++/56971
2
3template <typename T>
4class rp {
5};
6
7template <template <typename> class P>
8struct b {
9    template <class, template <typename> class FriendP>
10    friend void f(b<FriendP> from);
11};
12
13template <class, template <typename> class P>
14void f(b<P> from) {
15}
16
17int main() {
18    b<rp> v;
19    f<int>(v);
20    return 0;
21}
22