* MAINTAINERS: Add a note that maintainership also includes web
[official-gcc.git] / gcc / testsuite / g++.dg / torture / pr61554.C
blob6f609c8be09af753efb434f3f0efb98d112f4e3c
1 // { dg-do compile }
3 struct A
5   A ();
6 };
7 const unsigned long &min (const unsigned long &, const unsigned long &) {}
9 template <typename _InputIterator1, typename _InputIterator2,
10           typename _OutputIterator, typename _BinaryOperation>
11 void transform (_InputIterator1 p1, _InputIterator2, _OutputIterator,
12                 _BinaryOperation p4)
14   for (; p1;)
15     p4 (0, 0);
18 class multi_array
20 public:
21   multi_array (int &, int &);
22   int &resize_ranges;
23   int resize___trans_tmp_1;
24   void m_fn1 ()
25   {
26     multi_array a (resize_ranges, this->m_fn2 ());
27     const unsigned long &(*b)(const unsigned long &, const unsigned long &)
28       = min;
29     transform (&resize___trans_tmp_1, 0, 0, b);
30     A c;
31   }
32   ~multi_array ()
33   {
34     for (int i; &base_;)
35       ;
36   }
37   int base_;
38   int &m_fn2 ();
41 class B
43   void m_fn3 (const int &, const int &);
44   multi_array _bookingSnapshotBlock;
46 void B::m_fn3 (const int &, const int &) { _bookingSnapshotBlock.m_fn1 (); }