the following code does nothing but creating a simple sphere and traversing its edge representation curves, accessing the connected Geom curve objects. I get a segmentation fault! The 3d curve representation object for the poles (at least one of them) seems to be incorrectly initialized. I use the _OCC64 compiler flag and haven't had any other "mysterious" crashes yet.
TopoDS_Face sphere = BRepBuilderAPI_MakeFace(gp_Sphere(gp_Ax3(gp_Pnt(0,0,0), gp_Dir(0,1,0)), 1.0));
for (Ex.Init(sphere,TopAbs_EDGE); Ex.More(); Ex.Next())
TopoDS_Edge edge = TopoDS::Edge(Ex.Current());
Handle(BRep_TEdge) hTEdge = Handle(BRep_TEdge)::DownCast(edge.TShape());
BRep_ListOfCurveRepresentation const &repr = hTEdge->Curves();
Handle(BRep_CurveRepresentation) rep = iter.Value();
Handle(Geom_Curve) curve = rep->Curve3D();
Can anyone reproduce the crash?