[Bug ipa/59947] [4.9 Regression] Segmentation fault with #pragma GCC optimize ("O2"), ICE in get_odr_type

jakub at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Thu Jan 30 19:16:00 GMT 2014


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59947

Jakub Jelinek <jakub at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |jakub at gcc dot gnu.org

--- Comment #2 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Reduced testcase:
#pragma GCC optimize ("O2")
template <typename T>
inline void
foo (T & a) noexcept { T tmp = static_cast <T &&> (a); };
struct A
{
  A () noexcept : a (1), b (1) {}
  virtual void c () noexcept = 0;
  void d () noexcept { c (); }
  int a;
  int b;
};
struct B
{
  ~B () noexcept { e->d (); }
  A *e;
};
template <typename T>
struct C
{
  B f;
};
struct D {};
template <typename T>
struct E
{
  void bar () { foo (g); }
  C <D> g;
};
template class E <char>;



More information about the Gcc-bugs mailing list