Mercurial > hg > CbC > CbC_gcc
view gcc/testsuite/g++.dg/ipa/devirt-53.C @ 145:1830386684a0
gcc-9.2.0
author | anatofuz |
---|---|
date | Thu, 13 Feb 2020 11:34:05 +0900 |
parents | |
children |
line wrap: on
line source
// { dg-do assemble } // { dg-options "-O2 -fdump-tree-fre1-details -std=c++11 -Wno-return-type" } typedef unsigned a; enum b : a; class c { public: virtual a d(); }; using e = int; class f; class h { public: f *operator->(); }; class i { public: ~i() { j->d(); } c *j; }; template <class g> class k : i { public: k(g *); }; class l; class m { virtual b n(const e &, l **); }; class o { protected: h p; }; class G { virtual b r(const e &, l **); }; class l : G {}; class q { public: q(l *); template <class t> void s(t); }; class f : c { a d(); virtual b r(e); public: class L : public l, o, m { b r(const e &y, l **) { p->r(y); } b n(const e &, l **) { k<l> a = this; } }; }; c u; void fn1() { c v; k<c> b(&u); q(new f::L).s(v); } /* Check that f::d appears as possible target. */ /* { dg-final { scan-tree-dump "f::d" "fre1" } } */