diff options
Diffstat (limited to 'gcc/testsuite/g++.dg/opt/static1.C')
-rw-r--r-- | gcc/testsuite/g++.dg/opt/static1.C | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/gcc/testsuite/g++.dg/opt/static1.C b/gcc/testsuite/g++.dg/opt/static1.C new file mode 100644 index 000000000..05429e18b --- /dev/null +++ b/gcc/testsuite/g++.dg/opt/static1.C @@ -0,0 +1,20 @@ +// PR c++/6073 +// This testcase ICEd because finish_struct_bits changed +// A's and const A's TYPE_MODE from QI to BLK, but did +// not change a's DECL_MODE because its mode was not +// TYPE_MAIN_VARIANT. + +struct A +{ + static const A a; + ~A (); +}; + +void bar (A x); +void foo (); + +void +foo () +{ + bar (A::a); +} |