[geos-commits] [SCM] GEOS branch master updated. 1df959cc8a39807e63a09bff6953ef43d434ccbf

git at osgeo.org git at osgeo.org
Fri Sep 20 09:42:27 PDT 2019


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GEOS".

The branch, master has been updated
       via  1df959cc8a39807e63a09bff6953ef43d434ccbf (commit)
      from  28e20ccf1bdcb6edb339c08a2a7225e23ae05451 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit 1df959cc8a39807e63a09bff6953ef43d434ccbf
Author: Paul Ramsey <pramsey at cleverelephant.ca>
Date:   Fri Sep 20 09:41:40 2019 -0700

    Fix MSVC 2017 compilation, from @hobu.
    References #975

diff --git a/CMakeLists.txt b/CMakeLists.txt
index e3752d2..625f51d 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -54,6 +54,12 @@ cmake_dependent_option(GEOS_BUILD_DEVELOPER
   "GEOS_BUILD_FROM_GIT" OFF)
 mark_as_advanced(GEOS_BUILD_DEVELOPER)
 
+if (POLICY CMP0092)
+  # dont set /W3 warning flags by default, we already
+  # set /W4 anyway
+  cmake_policy(SET CMP0092 NEW)
+endif()
+
 #-----------------------------------------------------------------------------
 # Setup build directories
 #-----------------------------------------------------------------------------
diff --git a/include/geos/geom/Geometry.h b/include/geos/geom/Geometry.h
index 0e729b0..3673890 100644
--- a/include/geos/geom/Geometry.h
+++ b/include/geos/geom/Geometry.h
@@ -948,14 +948,14 @@ struct GEOS_DLL GeometryGreaterThen {
 
 
 /// Return current GEOS version
-std::string geosversion();
+GEOS_DLL std::string geosversion();
 
 /**
  * \brief
  * Return the version of JTS this GEOS
  * release has been ported from.
  */
-std::string jtsport();
+GEOS_DLL std::string jtsport();
 
 // We use this instead of std::pair<unique_ptr<Geometry>> because C++11
 // forbids that construct:
diff --git a/include/geos/geom/Location.h b/include/geos/geom/Location.h
index 050b9d4..e56eae4 100644
--- a/include/geos/geom/Location.h
+++ b/include/geos/geom/Location.h
@@ -30,7 +30,8 @@ namespace geom { // geos::geom
  * For a description of the DE-9IM, see the
  * [OpenGIS Simple Features Specification for SQL](http://www.opengis.org/techno/specs.htm").
  */
-GEOS_DLL enum class Location : char {
+
+enum class GEOS_DLL Location : char {
     /**
      *  Used for uninitialized location values.
      */
@@ -58,7 +59,7 @@ GEOS_DLL enum class Location : char {
     EXTERIOR = 2
 };
 
-std::ostream& operator<<(std::ostream& os, const Location& loc);
+GEOS_DLL std::ostream& operator<<(std::ostream& os, const Location& loc);
 
 } // namespace geos::geom
 } // namespace geos
diff --git a/include/geos/geomgraph/index/MonotoneChain.h b/include/geos/geomgraph/index/MonotoneChain.h
index 4611a00..e5d8b63 100644
--- a/include/geos/geomgraph/index/MonotoneChain.h
+++ b/include/geos/geomgraph/index/MonotoneChain.h
@@ -47,6 +47,9 @@ private:
     MonotoneChainEdge* mce;
     size_t chainIndex;
 
+    MonotoneChain(const MonotoneChain& other) = delete;
+    MonotoneChain& operator=(const MonotoneChain& rhs) = delete;
+
 public:
 
     MonotoneChain(MonotoneChainEdge* newMce, size_t newChainIndex):
diff --git a/include/geos/geomgraph/index/SimpleMCSweepLineIntersector.h b/include/geos/geomgraph/index/SimpleMCSweepLineIntersector.h
index b92be69..55ef114 100644
--- a/include/geos/geomgraph/index/SimpleMCSweepLineIntersector.h
+++ b/include/geos/geomgraph/index/SimpleMCSweepLineIntersector.h
@@ -90,6 +90,9 @@ private:
     void processOverlaps(size_t start, size_t end,
                          SweepLineEvent* ev0,
                          SegmentIntersector* si);
+    // Declare type as noncopyable
+    SimpleMCSweepLineIntersector(const SimpleMCSweepLineIntersector& other) = delete;
+    SimpleMCSweepLineIntersector& operator=(const SimpleMCSweepLineIntersector& rhs) = delete;
 };
 
 } // namespace geos.geomgraph.index
diff --git a/include/geos/operation/distance/ConnectedElementLocationFilter.h b/include/geos/operation/distance/ConnectedElementLocationFilter.h
index 36bff6e..9273653 100644
--- a/include/geos/operation/distance/ConnectedElementLocationFilter.h
+++ b/include/geos/operation/distance/ConnectedElementLocationFilter.h
@@ -51,7 +51,8 @@ private:
 
     std::vector<std::unique_ptr<GeometryLocation>> locations;
     ConnectedElementLocationFilter() = default;
-
+    ConnectedElementLocationFilter(const ConnectedElementLocationFilter&) = delete;
+    ConnectedElementLocationFilter& operator=(const ConnectedElementLocationFilter&) = delete;
 public:
     /** \brief
      * Returns a list containing a point from each Polygon, LineString, and
diff --git a/include/geos/profiler.h b/include/geos/profiler.h
index c98e3b4..83be471 100644
--- a/include/geos/profiler.h
+++ b/include/geos/profiler.h
@@ -106,6 +106,7 @@ public:
     std::string name;
 
 
+
 private:
     /* \brief current start and stop times */
     std::chrono::high_resolution_clock::time_point starttime, stoptime;
@@ -139,6 +140,9 @@ public:
     Profiler() = default;
     ~Profiler() = default;
 
+    Profiler(const Profiler&) = delete;
+    Profiler& operator=(const Profiler&) = delete;
+
     /**
      * \brief
      * Return the singleton instance of the
diff --git a/src/operation/overlay/PolygonBuilder.cpp b/src/operation/overlay/PolygonBuilder.cpp
index 979ad82..90d12ca 100644
--- a/src/operation/overlay/PolygonBuilder.cpp
+++ b/src/operation/overlay/PolygonBuilder.cpp
@@ -28,11 +28,13 @@
 #include <geos/geom/GeometryFactory.h>
 #include <geos/geom/LinearRing.h>
 #include <geos/geom/Polygon.h>
+#include <geos/geom/CoordinateArraySequence.h>
 #include <geos/algorithm/PointLocation.h>
 #include <geos/util/TopologyException.h>
 #include <geos/util/GEOSException.h>
 #include <geos/util.h>
 
+
 #include <vector>
 #include <cassert>
 
diff --git a/src/operation/polygonize/HoleAssigner.cpp b/src/operation/polygonize/HoleAssigner.cpp
index 9a06123..85997c9 100644
--- a/src/operation/polygonize/HoleAssigner.cpp
+++ b/src/operation/polygonize/HoleAssigner.cpp
@@ -16,6 +16,7 @@
  *
  **********************************************************************/
 
+#include <geos/geom/CoordinateArraySequence.h>
 #include <geos/operation/polygonize/HoleAssigner.h>
 #include <geos/util/Interrupt.h>
 
diff --git a/src/operation/polygonize/Polygonizer.cpp b/src/operation/polygonize/Polygonizer.cpp
index beb1c05..38bd0b1 100644
--- a/src/operation/polygonize/Polygonizer.cpp
+++ b/src/operation/polygonize/Polygonizer.cpp
@@ -25,6 +25,7 @@
 #include <geos/geom/LineString.h>
 #include <geos/geom/Geometry.h>
 #include <geos/geom/Polygon.h>
+#include <geos/geom/CoordinateArraySequence.h>
 #include <geos/util/Interrupt.h>
 #include <geos/index/strtree/STRtree.h>
 // std
diff --git a/src/operation/union/OverlapUnion.cpp b/src/operation/union/OverlapUnion.cpp
index b55bde9..3dedc16 100644
--- a/src/operation/union/OverlapUnion.cpp
+++ b/src/operation/union/OverlapUnion.cpp
@@ -101,8 +101,7 @@ OverlapUnion::extractByEnvelope(const Envelope& env, const Geometry* geom, std::
             disjointGeoms.push_back(elem->clone());
         }
     }
-    std::unique_ptr<Geometry> intersectingGeom(geomFactory->buildGeometry(intersectingGeoms));
-    return std::move(intersectingGeom);
+    return std::unique_ptr<Geometry>(geomFactory->buildGeometry(intersectingGeoms));
 }
 
 /* private */

-----------------------------------------------------------------------

Summary of changes:
 CMakeLists.txt                                                   | 6 ++++++
 include/geos/geom/Geometry.h                                     | 4 ++--
 include/geos/geom/Location.h                                     | 5 +++--
 include/geos/geomgraph/index/MonotoneChain.h                     | 3 +++
 include/geos/geomgraph/index/SimpleMCSweepLineIntersector.h      | 3 +++
 include/geos/operation/distance/ConnectedElementLocationFilter.h | 3 ++-
 include/geos/profiler.h                                          | 4 ++++
 src/operation/overlay/PolygonBuilder.cpp                         | 2 ++
 src/operation/polygonize/HoleAssigner.cpp                        | 1 +
 src/operation/polygonize/Polygonizer.cpp                         | 1 +
 src/operation/union/OverlapUnion.cpp                             | 3 +--
 11 files changed, 28 insertions(+), 7 deletions(-)


hooks/post-receive
-- 
GEOS


More information about the geos-commits mailing list