111
|
1 // { dg-do compile }
|
131
|
2 // { dg-additional-options "-Wno-return-type" }
|
111
|
3
|
|
4 struct A
|
|
5 {
|
|
6 A ();
|
|
7 };
|
|
8 const unsigned long &min (const unsigned long &, const unsigned long &) {}
|
|
9
|
|
10 template <typename _InputIterator1, typename _InputIterator2,
|
|
11 typename _OutputIterator, typename _BinaryOperation>
|
|
12 void transform (_InputIterator1 p1, _InputIterator2, _OutputIterator,
|
|
13 _BinaryOperation p4)
|
|
14 {
|
|
15 for (; p1;)
|
|
16 p4 (0, 0);
|
|
17 }
|
|
18
|
|
19 class multi_array
|
|
20 {
|
|
21 public:
|
|
22 multi_array (int &, int &);
|
|
23 int &resize_ranges;
|
|
24 int resize___trans_tmp_1;
|
|
25 void m_fn1 ()
|
|
26 {
|
|
27 multi_array a (resize_ranges, this->m_fn2 ());
|
|
28 const unsigned long &(*b)(const unsigned long &, const unsigned long &)
|
|
29 = min;
|
|
30 transform (&resize___trans_tmp_1, 0, 0, b);
|
|
31 A c;
|
|
32 }
|
|
33 ~multi_array ()
|
|
34 {
|
|
35 for (int i; &base_;)
|
|
36 ;
|
|
37 }
|
|
38 int base_;
|
|
39 int &m_fn2 ();
|
|
40 };
|
|
41
|
|
42 class B
|
|
43 {
|
|
44 void m_fn3 (const int &, const int &);
|
|
45 multi_array _bookingSnapshotBlock;
|
|
46 };
|
|
47 void B::m_fn3 (const int &, const int &) { _bookingSnapshotBlock.m_fn1 (); }
|