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]

Re: c++/8582: [3.2 regression] ICE in exception handling


The regression reported in PR c++/8582 was fixed in the
mainline with this patch, but still exists in the 3.2 branch:

gcc (really 2002-04-04):

2002-04-03  Jason Merrill  <jason@redhat.com>

        * except.c
        * except.h
        * expr.c

        PR c++/5636
        * tree.h
        * stmt.c
        * c-semantics.c
        * c-common.h

gcc/cp:

2002-04-04  Jason Merrill  <jason@redhat.com>

        * semantics.c
        * cp-tree.h
        * init.c
        * cp-tree.def
        * cp-tree.h
        * decl.c
        * dump.c
        * pt.c
        * tree.c

        * init.c

        PR c++/5636
        * semantics.c

        PR c++/5104
        * typeck.c

Here's a small test case that causes the compiler to ICE
when compiled on i686-linux:

-------------------
void* operator new(unsigned int, void*) throw();
void operator delete (void*, void*) throw();

struct A { A(); };

struct B
{
  struct X
  {
    ~X();
    operator void* () const;
  };

  X bar();
};

struct C
{
  B b;

  C(A&) { new(b.bar()) A; }
};

void foo()
{
  A a;
  C c(a);
}
-------------------

Output from the 3.2 branch compiler:

8582.C: In constructor `C::C(A&)':
8582.C:21: Internal compiler error in convert_from_eh_region_ranges_1,
at
   except.c:1404
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:http://www.gnu.org/software/gcc/bugs.html> for instructions.

http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&database=gcc&pr=8582




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