111
|
1 // PR c++/38233
|
|
2
|
|
3 template<class _T1, class _T2>
|
|
4 struct pair
|
|
5 {
|
|
6 _T1 first;
|
|
7 _T2 second;
|
|
8
|
|
9 // _GLIBCXX_RESOLVE_LIB_DEFECTS
|
|
10 // 265. std::pair::pair() effects overly restrictive
|
|
11 /** The default constructor creates @c first and @c second using their
|
|
12 * respective default constructors. */
|
|
13 pair()
|
|
14 : first(), second() { }
|
|
15 };
|
|
16
|
|
17 class a {
|
|
18 public:
|
|
19 a();
|
|
20 };
|
|
21
|
|
22 class b {
|
|
23 public:
|
|
24 // implicit default ctor
|
|
25 bool operator<(const b& rhs) const;
|
|
26
|
|
27 private:
|
|
28 a a_val;
|
|
29 };
|
|
30
|
|
31 typedef pair<const b, int> my_pair;
|
|
32
|
|
33 void func() {
|
|
34 my_pair x;
|
|
35 }
|