Package: geos
Version: 2.1.4-2
Severity: important
Tags: patch

Your package fails to build with G++ 4.1.  I'm filing this bug as
important for now, but when 4.1 will be the default compiler in
unstable (probably in a few weeks) I'll upgrade this to serious.

A patch is below.


> Automatic build of geos_2.1.4-2 on bigsur by sbuild/mips 1.80
...
>  mips-linux-gnu-g++ -DHAVE_CONFIG_H -I. -I. -I../../source/headers 
> -I../../source/headers/geos -I../../source/headers -DGEOS_VERSION=2.1.4 -g 
> -O2 -MT Coordinate.lo -MD -MP -MF .deps/Coordinate.Tpo -c Coordinate.cpp  
> -fPIC -DPIC -o .libs/Coordinate.o
> ../../source/headers/geos/geom.h:358: error: extra qualification 
> 'geos::Coordinate::' on member 'setNull'
> ../../source/headers/geos/geom.h:364: error: extra qualification 
> 'geos::Coordinate::' on member 'getNull'
> ../../source/headers/geos/geom.h:368: error: extra qualification 
> 'geos::Coordinate::' on member 'Coordinate'
> ../../source/headers/geos/geom.h:374: error: extra qualification 
> 'geos::Coordinate::' on member 'Coordinate'
> ../../source/headers/geos/geom.h:380: error: extra qualification 
> 'geos::Coordinate::' on member 'Coordinate'
> ../../source/headers/geos/geom.h:386: error: extra qualification 
> 'geos::Coordinate::' on member 'Coordinate'
> ../../source/headers/geos/geom.h:392: error: extra qualification 
> 'geos::Coordinate::' on member 'setCoordinate'
> ../../source/headers/geos/geom.h:398: error: extra qualification 
> 'geos::Coordinate::' on member 'equals2D'
> ../../source/headers/geos/geom.h:408: error: extra qualification 
> 'geos::Coordinate::' on member 'compareTo'
> ../../source/headers/geos/geom.h:424: error: extra qualification 
> 'geos::Coordinate::' on member 'equals3D'
> ../../source/headers/geos/geom.h:428: error: extra qualification 
> 'geos::Coordinate::' on member 'makePrecise'
> ../../source/headers/geos/geom.h:433: error: extra qualification 
> 'geos::Coordinate::' on member 'distance'
> ../../source/headers/geos/geom.h:439: error: extra qualification 
> 'geos::Coordinate::' on member 'hashCode'
> ../../source/headers/geos/geom.h:451: error: extra qualification 
> 'geos::Coordinate::' on member 'hashCode'
> make[3]: *** [Coordinate.lo] Error 1

--- ./source/headers/geos/geom.h~       2006-03-09 19:13:58.000000000 +0000
+++ ./source/headers/geos/geom.h        2006-03-09 19:15:43.000000000 +0000
@@ -355,47 +355,47 @@
        //double distance(Coordinate& p);
        static Coordinate nullCoord;
 
-       void Coordinate::setNull() {
+       void setNull() {
                x=DoubleNotANumber;
                y=DoubleNotANumber;
                z=DoubleNotANumber;
        }
 
-       static Coordinate& Coordinate::getNull() {
+       static Coordinate& getNull() {
                return nullCoord;
        }
 
-       Coordinate::Coordinate() {
+       Coordinate() {
                x=0.0;
                y=0.0;
                z=DoubleNotANumber;
        }
 
-       Coordinate::Coordinate(double xNew, double yNew, double zNew) {
+       Coordinate(double xNew, double yNew, double zNew) {
                x=xNew;
                y=yNew;
                z=zNew;
        }
 
-       Coordinate::Coordinate(const Coordinate& c){
+       Coordinate(const Coordinate& c){
                x=c.x;
                y=c.y;
                z=c.z;
        }
 
-       Coordinate::Coordinate(double xNew, double yNew){
+       Coordinate(double xNew, double yNew){
                x=xNew;
                y=yNew;
                z=DoubleNotANumber;
        }
 
-       void Coordinate::setCoordinate(const Coordinate& other) {
+       void setCoordinate(const Coordinate& other) {
                x = other.x;
                y = other.y;
                z = other.z;
        }
 
-       bool Coordinate::equals2D(const Coordinate& other) const {
+       bool equals2D(const Coordinate& other) const {
                if (x != other.x) {
                return false;
                }
@@ -405,7 +405,7 @@
                return true;
        }
 
-       int Coordinate::compareTo(const Coordinate& other) const {
+       int compareTo(const Coordinate& other) const {
                if (x < other.x) {
                return -1;
                }
@@ -421,22 +421,22 @@
                return 0;
        }
 
-       bool Coordinate::equals3D(const Coordinate& other) const {
+       bool equals3D(const Coordinate& other) const {
                return (x == other.x) && ( y == other.y) && ((z == 
other.z)||(ISNAN(z) && ISNAN(other.z)));
        }
 
-       void Coordinate::makePrecise(const PrecisionModel *precisionModel) {
+       void makePrecise(const PrecisionModel *precisionModel) {
                x = precisionModel->makePrecise(x);
                y = precisionModel->makePrecise(y);
        }
 
-       double Coordinate::distance(const Coordinate& p) const {
+       double distance(const Coordinate& p) const {
                double dx = x - p.x;
                double dy = y - p.y;
                return sqrt(dx * dx + dy * dy);
        }
 
-       int Coordinate::hashCode() {
+       int hashCode() {
                //Algorithm from Effective Java by Joshua Bloch [Jon Aquino]
                int result = 17;
                result = 37 * result + hashCode(x);
@@ -448,7 +448,7 @@
        * Returns a hash code for a double value, using the algorithm from
        * Joshua Bloch's book <i>Effective Java</i>
        */
-       static int Coordinate::hashCode(double x) {
+       static int hashCode(double x) {
                int64 f = (int64)(x);
                return (int)(f^(f>>32));
        }
--- ./source/headers/geos/opOverlay.h~  2006-03-09 19:16:47.000000000 +0000
+++ ./source/headers/geos/opOverlay.h   2006-03-09 19:17:03.000000000 +0000
@@ -286,14 +286,14 @@
         * Merge Z values of node with those of the segment or vertex in
         * the given Polygon it is on.
         */
-       int OverlayOp::mergeZ(Node *n, const Polygon *poly) const;
+       int mergeZ(Node *n, const Polygon *poly) const;
 
        /*
         * Merge Z values of node with those of the segment or vertex in
         * the given LineString it is on.
         * @returns 1 if an intersection is found, 0 otherwise.
         */
-       int OverlayOp::mergeZ(Node *n, const LineString *line) const;
+       int mergeZ(Node *n, const LineString *line) const;
 
        /*
         * Average Z of input geometries
@@ -442,7 +442,7 @@
         * The Z value is interpolated between 3d vertexes and copied
         * from a 3d vertex to the end.
         */
-       void LineBuilder::propagateZ(CoordinateSequence *cs);
+       void propagateZ(CoordinateSequence *cs);
 };
 
 /*

-- 
Martin Michlmayr
http://www.cyrius.com/


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to