re PR middle-end/59737 (ice from optimize_inline_calls)
PR middle-end/59737 * g++.dg/ipa/pr59737.C: New test. From-SVN: r207735
This commit is contained in:
parent
0544c44869
commit
f494a60736
@ -1,3 +1,8 @@
|
||||
2014-02-12 Jakub Jelinek <jakub@redhat.com>
|
||||
|
||||
PR middle-end/59737
|
||||
* g++.dg/ipa/pr59737.C: New test.
|
||||
|
||||
2014-02-12 H.J. Lu <hongjiu.lu@intel.com>
|
||||
|
||||
* g++.dg/opt/pr52727.C: Compile with -march=i686 for ia32.
|
||||
|
48
gcc/testsuite/g++.dg/ipa/pr59737.C
Normal file
48
gcc/testsuite/g++.dg/ipa/pr59737.C
Normal file
@ -0,0 +1,48 @@
|
||||
// PR middle-end/59737
|
||||
// { dg-do compile }
|
||||
// { dg-options "-O2" }
|
||||
|
||||
struct A
|
||||
{
|
||||
virtual void foo (int &x);
|
||||
friend void
|
||||
operator>> (int &x, A &y)
|
||||
{
|
||||
y.foo (x);
|
||||
}
|
||||
};
|
||||
|
||||
struct B : public A
|
||||
{
|
||||
void foo (int &x);
|
||||
};
|
||||
|
||||
struct F : public B
|
||||
{
|
||||
void foo (int &x);
|
||||
};
|
||||
|
||||
struct G : public F
|
||||
{
|
||||
void foo (int &);
|
||||
};
|
||||
|
||||
struct C : A
|
||||
{
|
||||
void foo (int &);
|
||||
struct H : public G
|
||||
{
|
||||
void foo (int &);
|
||||
};
|
||||
struct D : A
|
||||
{
|
||||
H d;
|
||||
};
|
||||
};
|
||||
|
||||
void
|
||||
C::foo (int &x)
|
||||
{
|
||||
D a;
|
||||
x >> a.d;
|
||||
}
|
Loading…
Reference in New Issue
Block a user