------- Comment #5 from reichelt at gcc dot gnu dot org  2008-01-12 19:23 
-------
Even further reduced testcase:

=================================
struct A
{
  template<typename T> A(T);
};

class C;

struct B : A
{
  B(const C& c) : A(c) {}
};

struct C
{
  C(const C&);
  C();
  C& operator= (const C&);
};

B b = C();
=================================

bug.cc: In constructor 'B::B(const C&)':
bug.cc:10: internal compiler error: in cp_expr_size, at
cp/cp-objcp-common.c:100
Please submit a full bug report, [etc.]

This is really invalid code (C is used before it is defined).

The bug was fixed on mainline between 2007-10-13 and 2007-11-13.


-- 

reichelt at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |reichelt at gcc dot gnu dot
                   |                            |org
           Keywords|                            |ice-on-invalid-code,
                   |                            |monitored
      Known to fail|4.0.4 4.1.3 4.2.3           |4.0.4 4.1.2 4.1.3 4.2.0
                   |                            |4.2.1 4.2.2 4.2.3
      Known to work|3.4.6 4.3.0                 |3.4.6 4.0.0 4.0.3 4.1.0
                   |                            |4.1.1 4.3.0


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

Reply via email to