blob: 2fc54f0c842fe09823c98211a04d1857e58aebe5 [file] [log] [blame]
template<typename A1> struct T1 {
A1 a;
int b;
};
template<typename B1, typename B2> struct T2 {
B1 b;
B2 c;
int d;
};
template<int C1, typename C2> struct T3 {
int e[C1];
C2 f;
int g;
};
template<template<typename> typename P1> union T4{
P1<int> h;
int i;
};
template<template<typename, typename> typename P2> union T5{
P2<int, int> j;
int k;
};
template<template<auto, typename> typename P3> union T6{
P3<17, int> l;
int m;
};
template<template<template<auto, typename> typename> typename P4> struct T7 {
P4<T3> n;
int o;
};
T4<T1> v1;
T5<T2> v2;
T6<T3> v3;
T7<T6> v4;