optimization/8391: [regression] infinite loop in cp/decl2.c(finish_file)

Wolfgang Bangerth bangerth@ticam.utexas.edu
Tue Oct 29 11:06:00 GMT 2002


Ack, somehow gnats only picked up my name change, but not the analysis:

Confirmed with both 3.2.1pre and CVS. The infinite loop 
appears in cp/decl2.c(finish_file), in the 
do...while(reconsider) loop. "reconsider" is continuously 
re-set to 1 in line 3512 (in the 3.2.1 branch).

A smaller, self-contained example is this:
--------------------------------
struct Outer {
    struct Inner { virtual bool f() = 0; };
    void g(Inner &) const;
};


inline void h(const Outer &o)
{
  struct Local : public Outer::Inner {
      virtual bool f() {};
  };
  Local l;
  o.g(l);
}


void f(Outer &req) {
  h (req);
}


-------------------------------------------------------------------------
Wolfgang Bangerth              email:           bangerth@ticam.utexas.edu
                               www: http://www.ticam.utexas.edu/~bangerth




More information about the Gcc-bugs mailing list