This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug tree-optimization/61554] [4.10 Regression] ICE: Segmentation fault


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61554

--- Comment #2 from Markus Trippelsdorf <trippels at gcc dot gnu.org> ---
markus@x4 tmp % cat bug.ii
struct A
{
  A ();
};
const unsigned long &min (const unsigned long &, const unsigned long &) {}

template <typename _InputIterator1, typename _InputIterator2,
          typename _OutputIterator, typename _BinaryOperation>
void transform (_InputIterator1 p1, _InputIterator2, _OutputIterator,
                _BinaryOperation p4)
{
  for (; p1;)
    p4 (0, 0);
}

class multi_array
{
public:
  multi_array (int &, int &);
  int &resize_ranges;
  int resize___trans_tmp_1;
  void m_fn1 ()
  {
    multi_array a (resize_ranges, this->m_fn2 ());
    const unsigned long &(*b)(const unsigned long &, const unsigned long &)
        = min;
    transform (&resize___trans_tmp_1, 0, 0, b);
    A c;
  }
  ~multi_array ()
  {
    for (int i; &base_;)
      ;
  }
  int base_;
  int &m_fn2 ();
};

class B
{
  void m_fn3 (const int &, const int &);
  multi_array _bookingSnapshotBlock;
};
void B::m_fn3 (const int &, const int &) { _bookingSnapshotBlock.m_fn1 (); }


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]