view gcc/testsuite/g++.dg/lto/pr85405_0.C @ 131:84e7813d76e9

gcc-8.2
author mir3636
date Thu, 25 Oct 2018 07:37:49 +0900
parents
children 1830386684a0
line wrap: on
line source

// { dg-lto-do link }
// { dg-require-effective-target shared }
// { dg-require-effective-target fpic }
// { dg-lto-options {{-fPIC -shared -flto}} }

class VclReferenceBase { // { dg-lto-warning "7: type 'struct VclReferenceBase' violates the C\\+\\+ One Definition Rule" }
  int mnRefCnt;
  bool mbDisposed : 1;
  virtual ~VclReferenceBase();
};
class a;
class b {
  a &e;
  bool c();
};
class B {
  VclReferenceBase d;
};
class a : B {};
bool b::c() { return false; }