Bug in egcs?

Marius Kjeldahl marius@ace.funcom.com
Mon Dec 15 12:34:00 GMT 1997


While porting some code from Visual C++ 5.0 to egcs (I've tried both
1.0 and the 971207 release) I came across a problem compiling some of
the code. I have been able to narrow it down to the 30 lines attached
to this mail. The relevant error message I get while compiling if I
_remove_ the comment from the SomeClass_t constructor is:

test.cpp:13: sorry, not implemented: `try_catch_expr' not supported by
dump_expr

If the constructor is commented out, everything works fine and
dandy. On Microsoft Visual C++ a similar piece of code (which emits
the same error on the same construction under egcs on linux) compiles
and runs without any problems.

Regardless, the error message does not really give me much help in
figuring this one out. Is there anybody out there with a clue?

Thanks in advance..

Marius

-----8< Code snippet follows -----8<-----8<-----8<-----8<-----8<
#include <string.h>

class SomeClass_t {
public:
  //  SomeClass_t () : x (11) {}
protected:
  float x;
};

class DynamicOnly_t {
public:
  static DynamicOnly_t* create (const char* name = "UNDEF",
				const SomeClass_t& somec = *(new SomeClass_t ())) {
    return new DynamicOnly_t (name, somec);
  }
  DynamicOnly_t (const char* name, const SomeClass_t& somec) :
    m_somec (somec) {
    strncpy (m_Name, name, sizeof (m_Name));
  }
private:
  SomeClass_t m_somec;
  char m_Name[255];
};

int main (int argc, char* argv[]) {
  DynamicOnly_t* ptr = DynamicOnly_t::create ();
  return 0;
}

// compiled with 'gcc test.cpp' where gcc = egcs 1.0 and 971207



More information about the Gcc-bugs mailing list