re PR tree-optimization/63551 (wrong code (segfaults) at -Os on x86_64-linux-gnu)
PR tree-optimization/63551 * g++.dg/ipa/pr63551.C: New test. From-SVN: r222650
This commit is contained in:
parent
be4e69a962
commit
59c1f38402
@ -1,3 +1,8 @@
|
||||
2015-04-30 Marek Polacek <polacek@redhat.com>
|
||||
|
||||
PR tree-optimization/63551
|
||||
* g++.dg/ipa/pr63551.C: New test.
|
||||
|
||||
2015-04-30 Caroline Tice <cmtice@google.com>
|
||||
|
||||
PR 65929
|
||||
|
23
gcc/testsuite/g++.dg/ipa/pr63551.C
Normal file
23
gcc/testsuite/g++.dg/ipa/pr63551.C
Normal file
@ -0,0 +1,23 @@
|
||||
// { dg-options "-O -Wno-psabi" }
|
||||
// { dg-do compile }
|
||||
|
||||
struct A { int a; };
|
||||
template <typename T, typename V> struct B { V operator[] (T); };
|
||||
union U { long double ld; void *v; };
|
||||
A a;
|
||||
|
||||
void
|
||||
bar (U &x)
|
||||
{
|
||||
if (x.v) *reinterpret_cast <A *>(x.v) = a;
|
||||
}
|
||||
|
||||
struct C { C (A) { c.ld = 0; bar (c); } U c; };
|
||||
struct D { A d, e; void foo () { f[0][d] = e; } B <int, B <A, C> > f; };
|
||||
|
||||
void
|
||||
baz ()
|
||||
{
|
||||
D d;
|
||||
d.foo ();
|
||||
}
|
Loading…
Reference in New Issue
Block a user