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 optimization/12215] [3.3 regression] ICE in make_label_edge with -fnon-call-exceptions -fno-gcse -O2


PLEASE REPLY TO gcc-bugzilla@gcc.gnu.org ONLY, *NOT* gcc-bugs@gcc.gnu.org.

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



------- Additional Comments From bangerth at dealii dot org  2003-09-11 02:05 -------
This one was fairly painless compared to some of the optimization PRs:
---------------------------
struct B {
    ~B() throw() {}
};

struct X {
    X(const char*, const B&);
    ~X() {}
};

bool m();
void f(int &i, float &arg0);

void g (const char **argv) {
  float val;
  int i = 1;

  try {
    while ( i < 1 )
      {
        X arg(argv[i], B());
        if (m())
          throw(0);

        f(i, val);
      }
  } catch (...) {}
}
------------------------------------

It only fails with 3.3, but that doesn't mean that the bug is
not also present in latent form on mainline, of course:

g/x> /home/bangerth/bin/gcc-3.3.2-pre/bin/c++ -fnon-call-exceptions -fno-gcse
-O2 -c y.cc
y.cc: In function `void g(const char**)':
y.cc:27: internal compiler error: in make_label_edge, at cfgbuild.c:238
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:http://gcc.gnu.org/bugs.html> for instructions.

W.


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