• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 template<typename A1> struct T1 {
2   A1 a;
3   int b;
4 };
5 template<typename B1, typename B2> struct T2 {
6   B1 b;
7   B2 c;
8   int d;
9 };
10 template<int C1, typename C2> struct T3 {
11   int e[C1];
12   C2 f;
13   int g;
14 };
15 
16 template<template<typename> typename P1> union T4{
17   P1<int> h;
18   int i;
19 };
20 template<template<typename, typename> typename P2> union T5{
21   P2<int, int> j;
22   int k;
23 };
24 template<template<auto, typename> typename P3> union T6{
25   P3<17, int> l;
26   int m;
27 };
28 
29 template<template<template<auto, typename> typename> typename P4> struct T7 {
30   P4<T3> n;
31   int o;
32 };
33 
34 T4<T1> v1;
35 T5<T2> v2;
36 T6<T3> v3;
37 T7<T6> v4;
38