re PR c++/54998 (Internal compiler error with union member initialization using defau...
authorPaolo Carlini <paolo.carlini@oracle.com>
Thu, 4 Jul 2013 10:25:08 +0000 (10:25 +0000)
committerPaolo Carlini <paolo@gcc.gnu.org>
Thu, 4 Jul 2013 10:25:08 +0000 (10:25 +0000)
2013-07-04  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/54998
* g++.dg/cpp0x/nsdmi-list3.C: New.

From-SVN: r200667

gcc/testsuite/ChangeLog
gcc/testsuite/g++.dg/cpp0x/nsdmi-list3.C [new file with mode: 0644]

index 0a97f98c8a98c8ee485fc25982ece0d86f286f43..d3cf90ea69862975f7cf390efa5d85634beaf75d 100644 (file)
@@ -1,3 +1,8 @@
+2013-07-04  Paolo Carlini  <paolo.carlini@oracle.com>
+
+       PR c++/54998
+       * g++.dg/cpp0x/nsdmi-list3.C: New.
+
 2013-07-03  Jakub Jelinek  <jakub@redhat.com>
 
        PR target/57777
diff --git a/gcc/testsuite/g++.dg/cpp0x/nsdmi-list3.C b/gcc/testsuite/g++.dg/cpp0x/nsdmi-list3.C
new file mode 100644 (file)
index 0000000..a554f93
--- /dev/null
@@ -0,0 +1,21 @@
+// PR c++/54998
+// { dg-do compile { target c++11 } }
+
+class Foo {
+public:
+private:
+    static const int kRows = 4;
+    static const int kCols = 4;
+
+    union {
+        float m_n[kRows][kCols];
+        float m_m[kRows * kCols] = {
+            1.0f, 0.0f, 0.0f, 0.0f,
+            0.0f, 1.0f, 0.0f, 0.0f,
+            0.0f, 0.0f, 1.0f, 0.0f,
+            0.0f, 0.0f, 0.0f, 1.0f
+        };
+    };
+};
+
+Foo myFoo;