PR c++/85765 - SFINAE and non-type default template arg.
[official-gcc.git] / gcc / testsuite / g++.dg / cpp0x / deleted7.C
blob6afa9f7689c234b869797966c1354c4bea217e44
1 // PR c++/61080
2 // { dg-do compile { target c++11 } }
3 // { dg-options "-Wreturn-type" }
5 struct AAA
7   int a1, a2, a3;
8   void *p;
9 };
11 template <typename K, typename V>
12 class WeakMapPtr
14   public:
15     WeakMapPtr() : ptr(nullptr) {};
16     bool init(AAA *cx);
17   private:
18     void *ptr;
19     WeakMapPtr(const WeakMapPtr &wmp) = delete;
20     WeakMapPtr &operator=(const WeakMapPtr &wmp) = delete;
23 template <typename K, typename V>
24 bool WeakMapPtr<K, V>::init(AAA *cx)
26     ptr = cx->p;
27     return true;
30 struct JSObject
32   int blah;
33   float meh;
36 template class WeakMapPtr<JSObject*, JSObject*>;