diff options
Diffstat (limited to 'gcc/testsuite/g++.dg/ext/tmplattr9.C')
-rw-r--r-- | gcc/testsuite/g++.dg/ext/tmplattr9.C | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/gcc/testsuite/g++.dg/ext/tmplattr9.C b/gcc/testsuite/g++.dg/ext/tmplattr9.C new file mode 100644 index 000000000..090257a5f --- /dev/null +++ b/gcc/testsuite/g++.dg/ext/tmplattr9.C @@ -0,0 +1,26 @@ +// PR c++/34937, 34962 +// { dg-require-weak "" } +// { dg-options "" } + +struct A +{ + static const int i; +}; + +template<int> void foo() +{ + int x[A::i] __attribute((vector_size(8))); +} + +template<int> struct B +{ + enum { a, b = a }; + void bar(B<b>) __attribute((weak)); +}; + +void f() +{ + foo<0>(); + B<0> b; + b.bar (B<B<0>::b>()); +} |