aboutsummaryrefslogtreecommitdiff
path: root/gcc/testsuite/g++.dg/parse/constant6.C
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/testsuite/g++.dg/parse/constant6.C')
-rw-r--r--gcc/testsuite/g++.dg/parse/constant6.C23
1 files changed, 23 insertions, 0 deletions
diff --git a/gcc/testsuite/g++.dg/parse/constant6.C b/gcc/testsuite/g++.dg/parse/constant6.C
new file mode 100644
index 00000000000..dae01d47be3
--- /dev/null
+++ b/gcc/testsuite/g++.dg/parse/constant6.C
@@ -0,0 +1,23 @@
+// PR c++/19883
+
+template<typename T> struct A
+{
+ static const T i = 1;
+ char a[int(i)];
+};
+
+template<int> struct B {};
+
+template<typename T> struct C
+{
+ static const T i = 2;
+ B<int(i)> a;
+};
+
+template< typename T, T N >
+struct integral_c
+{
+ static const T value = N;
+
+ typedef integral_c< T, static_cast<T>((value + 1)) > next;
+};