annotate gcc/testsuite/g++.dg/template/lvalue1.C @ 131:84e7813d76e9

gcc-8.2
author mir3636
date Thu, 25 Oct 2018 07:37:49 +0900
parents 04ced10e8804
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
111
kono
parents:
diff changeset
1 // PR c++/38877
kono
parents:
diff changeset
2
kono
parents:
diff changeset
3 template<class _T1, class _T2>
kono
parents:
diff changeset
4 struct pair
kono
parents:
diff changeset
5 {
kono
parents:
diff changeset
6 typedef _T1 first_type;
kono
parents:
diff changeset
7 typedef _T2 second_type;
kono
parents:
diff changeset
8 _T1 first;
kono
parents:
diff changeset
9 _T2 second;
kono
parents:
diff changeset
10 pair () : first(), second() { }
kono
parents:
diff changeset
11 pair(const _T1& __a, const _T2& __b)
kono
parents:
diff changeset
12 : first(__a), second(__b) { }
kono
parents:
diff changeset
13 };
kono
parents:
diff changeset
14
kono
parents:
diff changeset
15 template<class _T1, class _T2>
kono
parents:
diff changeset
16 inline pair<_T1, _T2>
kono
parents:
diff changeset
17 make_pair(_T1 __x, _T2 __y)
kono
parents:
diff changeset
18 {
kono
parents:
diff changeset
19 return pair<_T1, _T2>(__x, __y);
kono
parents:
diff changeset
20 }
kono
parents:
diff changeset
21
kono
parents:
diff changeset
22 template <int dim> class bar;
kono
parents:
diff changeset
23
kono
parents:
diff changeset
24 template <int dim>
kono
parents:
diff changeset
25 pair<bar<dim> *, unsigned int>
kono
parents:
diff changeset
26 foo (unsigned int position)
kono
parents:
diff changeset
27 {
kono
parents:
diff changeset
28 const pair<int,unsigned int> tmp;
kono
parents:
diff changeset
29 return make_pair (new bar<dim>(tmp.first),
kono
parents:
diff changeset
30 position);
kono
parents:
diff changeset
31 }