[Bug tree-optimization/33869] [4.3 Regression] ICE verify_ssa failed (missing definition for SSA_NAME)
tbm at cyrius dot com
gcc-bugzilla@gcc.gnu.org
Tue Oct 23 10:48:00 GMT 2007
------- Comment #2 from tbm at cyrius dot com 2007-10-23 10:47 -------
/* Testcase by Martin Michlmayr <tbm@cyrius.com> */
template < const int dim > class Point
{
public:
Point ()
{
}
void operator= (const Point & rhs);
private:
float m_elem[dim];
};
template < const int dim > void Point < dim >::operator= (const Point < dim >
&rhs)
{
if (this == &rhs)
for (int i = 0; i < dim; ++i)
m_elem[i] = rhs.m_elem[i];
}
template < const int dim > class AxisBox
{
public:
AxisBox ()
{
}
AxisBox (const Point < dim > &p1, const Point < dim > &p2, bool ordered =
false)
{
setCorners ();
}
AxisBox (const AxisBox & a):m_low (a.m_low), m_high (a.m_high)
{
}
void setCorners (void);
private:
Point < dim > m_low, m_high;
};
template < const int dim > class RotBox
{
public:
AxisBox < dim > boundingBox () const;
private:
Point < dim > m_corner0;
};
template < const int dim > AxisBox < dim > RotBox < dim >::boundingBox () const
{
Point < dim > min = m_corner0, max = m_corner0;
return AxisBox < dim > (min, max, true);
}
template < const int dim > void AxisBox <dim> ::setCorners (void)
{
const Point < dim > p2;
m_high = p2;
}
template < typename Shape > class ShapeTerrainMod
{
virtual AxisBox < 2 > bbox () const;
Shape m_shape;
};
template < typename Shape > AxisBox < 2 > ShapeTerrainMod < Shape >::bbox
()const
{
return m_shape.boundingBox ();
}
template class ShapeTerrainMod < RotBox < 2 > >;
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33869
More information about the Gcc-bugs
mailing list