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]