Mercurial > hg > CbC > CbC_gcc
view gcc/testsuite/g++.dg/opt/preinc1.C @ 131:84e7813d76e9
gcc-8.2
author | mir3636 |
---|---|
date | Thu, 25 Oct 2018 07:37:49 +0900 |
parents | 04ced10e8804 |
children |
line wrap: on
line source
// PR optimization/6086 // { dg-do run } // { dg-options "-O" } extern "C" void abort (void); struct A { A (int x, int y); int a, b; int foo () { return a; } int bar () { return b; } }; struct B { virtual ~B (); virtual A baz () const; }; struct C { A foo () const; B *c; }; A C::foo () const { int x, y; x = c->baz ().foo (); y = c->baz ().bar (); return A (x, y); } A B::baz () const { return A (4, 8); } A::A (int x, int y) { a = x; b = y; } B::~B () { } int main () { C the_c; B the_b; the_c.c = &the_b; if (the_c.foo().a != 4) abort (); return 0; }