ttp13.C   [plain text]


// { dg-do compile }

// Origin: Wolfgang Bangerth <bangerth@dealii.org>

// PR c++/15664: Template substitution of template template parameter

template <int N> struct S { 
    template<template<typename> class A> 
    friend void foo(); 
}; 
 
template<template<typename> class A> 
void foo(); 
 
template <typename> struct X {}; 
 
int main () { 
  S<1> s; 
  foo<X>(); 
}