diff options
Diffstat (limited to 'gcc-4.9/gcc/testsuite/g++.dg/cpp0x/enum11.C')
-rw-r--r-- | gcc-4.9/gcc/testsuite/g++.dg/cpp0x/enum11.C | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/gcc-4.9/gcc/testsuite/g++.dg/cpp0x/enum11.C b/gcc-4.9/gcc/testsuite/g++.dg/cpp0x/enum11.C new file mode 100644 index 0000000..a449f1c --- /dev/null +++ b/gcc-4.9/gcc/testsuite/g++.dg/cpp0x/enum11.C @@ -0,0 +1,15 @@ +// PR c++/48969 +// { dg-do compile { target c++11 } } +// { dg-options "-ftemplate-depth=10" } + +template<unsigned int N> struct Pair { }; +struct Foo { enum { Mask = 1 }; } foo; +template<typename A, typename B> class Pair<A::Mask | B::Mask> +operator|(const A &, const B &) // { dg-message "substitution" } +{ } + +Pair<Foo::Mask> f = foo|foo; // { dg-message "no match" } + +// { dg-prune-output "note" } +// { dg-prune-output "here" } +// { dg-prune-output "instantiation depth" } |