[geos-devel] few more compile bugs
Mark Richardson
markmapo at yahoo.com
Thu Aug 20 19:48:10 EDT 2009
Again, compiling for HP. I get some errors, so here are fixes...
source/headers/geos/geom/IntersectionMatrix.h
#include <iostream>
---------------------------------------------------
more errors with fixes below...
--------------------------------------------------
Error 226: "GeometryTransformer.cpp", line 162 # No appropriate function found for call of 'auto_ptr::auto_ptr'. Last viable candidate was
"std::auto_ptr<geos::geom::Geometry>::auto_ptr(std::auto_ptr<geos::geom::Geometry> &)" ["/opt/aCC/include_std/memory", line 833]. Argument of type 'class
auto_ptr<geos::geom::Geometry>' could not be converted to 'std::auto_ptr<geos::geom::Geometry> &'.
Geometry::AutoPtr transformGeom = transformPoint(p, geom);
Error 226: "GeometryTransformer.cpp", line 213 # No appropriate function found for call of 'auto_ptr::auto_ptr'. Last viable candidate was
"std::auto_ptr<geos::geom::CoordinateSequence>::auto_ptr(std::auto_ptr<geos::geom::CoordinateSequence> &)" ["/opt/aCC/include_std/memory", line 833].
Argument of type 'class auto_ptr<geos::geom::CoordinateSequence>' could not be converted to 'std::auto_ptr<geos::geom::CoordinateSequence> &'.
transformCoordinates(geom->getCoordinatesRO(), geom));
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Error 226: "GeometryTransformer.cpp", line 235 # No appropriate function found for call of 'auto_ptr::auto_ptr'. Last viable candidate was
"std::auto_ptr<geos::geom::Geometry>::auto_ptr(std::auto_ptr<geos::geom::Geometry> &)" ["/opt/aCC/include_std/memory", line 833]. Argument of type 'class
auto_ptr<geos::geom::Geometry>' could not be converted to 'std::auto_ptr<geos::geom::Geometry> &'.
Geometry::AutoPtr transformGeom = transformLineString(l, geom);
^^^^^^^^^^^^^ Error 226: "GeometryTransformer.cpp", line 264 # No appropriate function found for call of 'auto_ptr::auto_ptr'. Last viable candidate was
"std::auto_ptr<geos::geom::Geometry>::auto_ptr(std::auto_ptr<geos::geom::Geometry> &)" ["/opt/aCC/include_std/memory", line 833]. Argument of type 'class
auto_ptr<geos::geom::Geometry>' could not be converted to 'std::auto_ptr<geos::geom::Geometry> &'.
Geometry::AutoPtr shell = transformLinearRing(lr, geom);
^^^^^
Error 226: "GeometryTransformer.cpp", line 339 # No appropriate function found for call of 'auto_ptr::auto_ptr'. Last viable candidate was
"std::auto_ptr<geos::geom::Geometry>::auto_ptr(std::auto_ptr<geos::geom::Geometry> &)" ["/opt/aCC/include_std/memory", line 833]. Argument of type 'class
auto_ptr<geos::geom::Geometry>' could not be converted to 'std::auto_ptr<geos::geom::Geometry> &'.
Geometry::AutoPtr transformGeom = transformPolygon(p, geom);
^^^^^^^^^^^^^ Error 226: "GeometryTransformer.cpp", line 366 # No appropriate function found for call of 'auto_ptr::auto_ptr'. Last viable candidate was
"std::auto_ptr<geos::geom::Geometry>::auto_ptr(std::auto_ptr<geos::geom::Geometry> &)" ["/opt/aCC/include_std/memory", line 833]. Argument of type 'class
auto_ptr<geos::geom::Geometry>' could not be converted to 'std::auto_ptr<geos::geom::Geometry> &'.
Geometry::AutoPtr transformGeom = transform(
----------------------------
fixes
-----------------------------------
So changing GeometryTransformer.cpp line 162 from Geometry::AutoPtr transformGeom=transformPoint(p, geom); to Geometry::AutoPtr transformGeom(transformPoint(p, geom));
So changing GeometryTransformer.cpp line 213 from return factory->createLineString(transformCoordinates(geom->getCoordinatesRO(), geom)); to std::auto_ptr<CoordinateSequence> tempCoordinateSequence(transformCoordinates(geom->getCoordinatesRO(), geom)); return factory->createLineString(tempCoordinateSequence);
So changing GeometryTransformer.cpp line 235 from Geometry::AutoPtr transformGeom=transformLineString(l, geom); to Geometry::AutoPtr transformGeom(transformLineString(l, geom));
So changing GeometryTransformer.cpp line 264 from Geometry::AutoPtr shell=transformLinearRing(lr, geom); to Geometry::AutoPtr shell(transformLinearRing(lr, geom));
So changing GeometryTransformer.cpp line 339 from Geometry::AutoPtr transformGeom=transformPolygon(p, geom); to Geometry::AutoPtr transformGeom(transformPolygon(p, geom));
So changing GeometryTransformer.cpp line 366 from Geometry::AutoPtr transformGeom=transform(geom->getGeometryN(i));
to
Geometry::AutoPtr transformGeom(transform(geom->getGeometryN(i)));
--------------------------------------------------------------
more errors with fixes below...--------------------------------------------------------------
Error 746: "MCIndexNoder.cpp", line 143 # Cannot use static_cast to convert void * to const geos::noding::SegmentString *.
static_cast<const SegmentString *>(mc1->getContext())
^^^^^^^^^^^^^^^^^
--------------------------------------------------------------
fixes
--------------------------------------------------------------
So changing MCIndexNoder.cpp line 143 from
SegmentString* ss1 = const_cast<SegmentString*>(static_cast<const SegmentString *>(mc1->getContext())); to
SegmentString* ss1 = const_cast<SegmentString*>(static_cast<const SegmentString *>((SegmentString*)mc1->getContext()));
So changing MCIndexNoder.cpp line 148 from
SegmentString* ss2 = const_cast<SegmentString*>(static_cast<const SegmentString *>(mc2->getContext())); to
SegmentString* ss2 = const_cast<SegmentString*>(static_cast<const SegmentString *>((SegmentString*)mc2->getContext()));
---------------
That's all the changes and now everything compiles on HP.
Mark
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.osgeo.org/pipermail/geos-devel/attachments/20090820/fa891bd4/attachment-0001.html
More information about the geos-devel
mailing list