diff options
| author | Kristian Evers <kristianevers@gmail.com> | 2019-02-26 22:07:24 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2019-02-26 22:07:24 +0100 |
| commit | f78661f84d8c0d7912b31a1b19c2a0cd4f85d061 (patch) | |
| tree | 360bc573d8ec5af701eae8cc1f65cd76fe95ad7a /src/iso19111/io.cpp | |
| parent | 2db1400b34c219764b0000d0ad7b0f589f053432 (diff) | |
| parent | c9b27a248d3ed9964b6ac0847a83eba383b62537 (diff) | |
| download | PROJ-f78661f84d8c0d7912b31a1b19c2a0cd4f85d061.tar.gz PROJ-f78661f84d8c0d7912b31a1b19c2a0cd4f85d061.zip | |
Merge pull request #1293 from rouault/fix_netbsd8_compilation
mutex.cpp: remove _XOPEN_SOURCE definition that causes compilation problem on netBSD 8 and is useless on Linux
Diffstat (limited to 'src/iso19111/io.cpp')
| -rw-r--r-- | src/iso19111/io.cpp | 51 |
1 files changed, 26 insertions, 25 deletions
diff --git a/src/iso19111/io.cpp b/src/iso19111/io.cpp index a1608464..eb4403ea 100644 --- a/src/iso19111/io.cpp +++ b/src/iso19111/io.cpp @@ -973,7 +973,7 @@ const std::vector<WKTNodeNNPtr> &WKTNode::children() const { //! @cond Doxygen_Suppress static size_t skipSpace(const std::string &str, size_t start) { size_t i = start; - while (i < str.size() && ::isspace(str[i])) { + while (i < str.size() && ::isspace(static_cast<unsigned char>(str[i]))) { ++i; } return i; @@ -1002,8 +1002,9 @@ WKTNodeNNPtr WKTNode::createFrom(const std::string &wkt, size_t indexStart, bool inString = false; for (; i < wkt.size() && - (inString || (wkt[i] != '[' && wkt[i] != '(' && wkt[i] != ',' && - wkt[i] != ']' && wkt[i] != ')' && !::isspace(wkt[i]))); + (inString || + (wkt[i] != '[' && wkt[i] != '(' && wkt[i] != ',' && wkt[i] != ']' && + wkt[i] != ')' && !::isspace(static_cast<unsigned char>(wkt[i])))); ++i) { if (wkt[i] == '"') { if (!inString) { @@ -2556,13 +2557,13 @@ WKTParser::Private::buildGeodeticCRS(const WKTNodeNNPtr &node) { auto &dynamicNode = nodeP->lookForChild(WKTConstants::DYNAMIC); - auto &csNode = nodeP->lookForChild(WKTConstants::CS); + auto &csNode = nodeP->lookForChild(WKTConstants::CS_); const auto &nodeName = nodeP->value(); if (isNull(csNode) && !ci_equal(nodeName, WKTConstants::GEOGCS) && !ci_equal(nodeName, WKTConstants::GEOCCS) && !ci_equal(nodeName, WKTConstants::BASEGEODCRS) && !ci_equal(nodeName, WKTConstants::BASEGEOGCRS)) { - ThrowMissing(WKTConstants::CS); + ThrowMissing(WKTConstants::CS_); } auto &primeMeridianNode = @@ -2712,9 +2713,9 @@ CRSNNPtr WKTParser::Private::buildDerivedGeodeticCRS(const WKTNodeNNPtr &node) { auto derivingConversion = buildConversion( derivingConversionNode, UnitOfMeasure::NONE, UnitOfMeasure::NONE); - auto &csNode = nodeP->lookForChild(WKTConstants::CS); + auto &csNode = nodeP->lookForChild(WKTConstants::CS_); if (isNull(csNode)) { - ThrowMissing(WKTConstants::CS); + ThrowMissing(WKTConstants::CS_); } auto cs = buildCS(csNode, node, UnitOfMeasure::NONE); @@ -3539,11 +3540,11 @@ WKTParser::Private::buildProjectedCRS(const WKTNodeNNPtr &node) { ? buildConversion(conversionNode, linearUnit, angularUnit) : buildProjection(node, projectionNode, linearUnit, angularUnit); - auto &csNode = nodeP->lookForChild(WKTConstants::CS); + auto &csNode = nodeP->lookForChild(WKTConstants::CS_); const auto &nodeValue = nodeP->value(); if (isNull(csNode) && !ci_equal(nodeValue, WKTConstants::PROJCS) && !ci_equal(nodeValue, WKTConstants::BASEPROJCRS)) { - ThrowMissing(WKTConstants::CS); + ThrowMissing(WKTConstants::CS_); } auto cs = buildCS(csNode, node, UnitOfMeasure::NONE); auto cartesianCS = nn_dynamic_pointer_cast<CartesianCS>(cs); @@ -3726,11 +3727,11 @@ CRSNNPtr WKTParser::Private::buildVerticalCRS(const WKTNodeNNPtr &node) { ? buildDatumEnsemble(ensembleNode, nullptr, false).as_nullable() : nullptr; - auto &csNode = nodeP->lookForChild(WKTConstants::CS); + auto &csNode = nodeP->lookForChild(WKTConstants::CS_); const auto &nodeValue = nodeP->value(); if (isNull(csNode) && !ci_equal(nodeValue, WKTConstants::VERT_CS) && !ci_equal(nodeValue, WKTConstants::BASEVERTCRS)) { - ThrowMissing(WKTConstants::CS); + ThrowMissing(WKTConstants::CS_); } auto cs = buildCS(csNode, node, UnitOfMeasure::NONE); auto verticalCS = nn_dynamic_pointer_cast<VerticalCS>(cs); @@ -3787,9 +3788,9 @@ WKTParser::Private::buildDerivedVerticalCRS(const WKTNodeNNPtr &node) { auto derivingConversion = buildConversion( derivingConversionNode, UnitOfMeasure::NONE, UnitOfMeasure::NONE); - auto &csNode = nodeP->lookForChild(WKTConstants::CS); + auto &csNode = nodeP->lookForChild(WKTConstants::CS_); if (isNull(csNode)) { - ThrowMissing(WKTConstants::CS); + ThrowMissing(WKTConstants::CS_); } auto cs = buildCS(csNode, node, UnitOfMeasure::NONE); @@ -3892,10 +3893,10 @@ BoundCRSNNPtr WKTParser::Private::buildBoundCRS(const WKTNodeNNPtr &node) { TemporalCSNNPtr WKTParser::Private::buildTemporalCS(const WKTNodeNNPtr &parentNode) { - auto &csNode = parentNode->GP()->lookForChild(WKTConstants::CS); + auto &csNode = parentNode->GP()->lookForChild(WKTConstants::CS_); if (isNull(csNode) && !ci_equal(parentNode->GP()->value(), WKTConstants::BASETIMECRS)) { - ThrowMissing(WKTConstants::CS); + ThrowMissing(WKTConstants::CS_); } auto cs = buildCS(csNode, parentNode, UnitOfMeasure::NONE); auto temporalCS = nn_dynamic_pointer_cast<TemporalCS>(cs); @@ -3953,9 +3954,9 @@ WKTParser::Private::buildEngineeringCRS(const WKTNodeNNPtr &node) { throw ParsingException("Missing EDATUM / ENGINEERINGDATUM node"); } - auto &csNode = nodeP->lookForChild(WKTConstants::CS); + auto &csNode = nodeP->lookForChild(WKTConstants::CS_); if (isNull(csNode) && !ci_equal(nodeP->value(), WKTConstants::BASEENGCRS)) { - ThrowMissing(WKTConstants::CS); + ThrowMissing(WKTConstants::CS_); } auto cs = buildCS(csNode, node, UnitOfMeasure::NONE); @@ -3998,9 +3999,9 @@ WKTParser::Private::buildDerivedEngineeringCRS(const WKTNodeNNPtr &node) { auto derivingConversion = buildConversion( derivingConversionNode, UnitOfMeasure::NONE, UnitOfMeasure::NONE); - auto &csNode = nodeP->lookForChild(WKTConstants::CS); + auto &csNode = nodeP->lookForChild(WKTConstants::CS_); if (isNull(csNode)) { - ThrowMissing(WKTConstants::CS); + ThrowMissing(WKTConstants::CS_); } auto cs = buildCS(csNode, node, UnitOfMeasure::NONE); @@ -4013,10 +4014,10 @@ WKTParser::Private::buildDerivedEngineeringCRS(const WKTNodeNNPtr &node) { ParametricCSNNPtr WKTParser::Private::buildParametricCS(const WKTNodeNNPtr &parentNode) { - auto &csNode = parentNode->GP()->lookForChild(WKTConstants::CS); + auto &csNode = parentNode->GP()->lookForChild(WKTConstants::CS_); if (isNull(csNode) && !ci_equal(parentNode->GP()->value(), WKTConstants::BASEPARAMCRS)) { - ThrowMissing(WKTConstants::CS); + ThrowMissing(WKTConstants::CS_); } auto cs = buildCS(csNode, parentNode, UnitOfMeasure::NONE); auto parametricCS = nn_dynamic_pointer_cast<ParametricCS>(cs); @@ -4086,9 +4087,9 @@ WKTParser::Private::buildDerivedProjectedCRS(const WKTNodeNNPtr &node) { auto conversion = buildConversion(conversionNode, linearUnit, angularUnit); - auto &csNode = nodeP->lookForChild(WKTConstants::CS); + auto &csNode = nodeP->lookForChild(WKTConstants::CS_); if (isNull(csNode) && !ci_equal(nodeP->value(), WKTConstants::PROJCS)) { - ThrowMissing(WKTConstants::CS); + ThrowMissing(WKTConstants::CS_); } auto cs = buildCS(csNode, node, UnitOfMeasure::NONE); return DerivedProjectedCRS::create(buildProperties(node), baseProjCRS, @@ -5317,7 +5318,7 @@ PROJStringSyntaxParser(const std::string &projString, std::vector<Step> &steps, { size_t i = 0; while (true) { - for (; isspace(c_str[i]); i++) { + for (; isspace(static_cast<unsigned char>(c_str[i])); i++) { } std::string token; bool in_string = false; @@ -5334,7 +5335,7 @@ PROJStringSyntaxParser(const std::string &projString, std::vector<Step> &steps, token += c_str[i]; i++; continue; - } else if (isspace(c_str[i])) { + } else if (isspace(static_cast<unsigned char>(c_str[i]))) { break; } token += c_str[i]; |
