[C++-SIG] CXX problems on SGI

Marc Poinot Marc.Poinot at onera.fr
Mon Sep 11 11:24:02 CEST 2000


I have some compile-time concern with CXX 5.0b
It looks like it is a compiler bug, I wonder
if anybody else has this problem.
What kind of compilers are you using ?

Here's what I get into cxx_extensions.cxx :

All lines with extern "C" and a try/catch block
into are rejected (compiler makes a core).
I had to remove the try/catch blocks.

extern "C" int compare_handler( PyObject *self, PyObject *other )
	{
//	try
// 		{
		PythonExtensionBase *p = static_cast<PythonExtensionBase *>( self );
		return p->compare( Py::Object( other ) );
//		}
//	catch( Py::Exception & )
//		{
//		return -1;	// indicate error
//		}
	}

The SGI known bug is:

577506 A goto outside a region cannot jump to a label inside a region.

Is there a compiler (SGI ?) expert here ? Looks like the case is we
have an exception (jump) from an extern function to a namespace/class
scope region ?

Maybe it's possible to reduce the extern part to the simplest one?

-MP-




More information about the Cplusplus-sig mailing list