2018-11-07 Richard Biener <rguenther@suse.de>
[official-gcc.git] / gcc / testsuite / g++.dg / lto / pr53470_0.C
blob217c02a482bfbcbdc99a7fc115d10b40f5fc1c33
1 // { dg-lto-do link }
2 // { dg-lto-options { { -g -flto } } }
4 class sp_counted_base;
5 class shared_count {
6   sp_counted_base *pi_;
7 public:
8   template<class Y> shared_count(Y) : pi_() {}
9   ~shared_count() {}
11 template<class T> struct shared_ptr {
12   T element_type;
13   template<class Y> shared_ptr(Y) : pn(0) {}
14   shared_count pn;
16 template<class> class ECGetterBase;
17 template<class T> struct ExtensionCord {
18   struct Holder {
19     ECGetterBase<T> *getter_;
20   };
21   ExtensionCord() : holder_(new Holder) {}
23   shared_ptr<Holder> holder_;
25 ExtensionCord<int> a;
26 int main() {}