diff options
Diffstat (limited to 'gcc/testsuite/g++.old-deja/g++.other/mangle10.C')
-rw-r--r-- | gcc/testsuite/g++.old-deja/g++.other/mangle10.C | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/gcc/testsuite/g++.old-deja/g++.other/mangle10.C b/gcc/testsuite/g++.old-deja/g++.other/mangle10.C new file mode 100644 index 000000000..b24fe716e --- /dev/null +++ b/gcc/testsuite/g++.old-deja/g++.other/mangle10.C @@ -0,0 +1,26 @@ +// { dg-do assemble } + +template<int T> +struct A { + char *a; + A (const char* x) + { + a = (char*) x; + } +}; + +template<int U, int V, class T> +struct B { + T a[V-U+1]; + friend A<V-U+1> f (B const &x) + { + return A<V-U+1> ((char*) x.a); + } +}; + +const int a = 8; + +typedef B<1,a,int> C; +struct D { + C x; +}; |