<div dir="ltr">I was going to suggest getting everything to build as C++ in the lib.  Thanks Kristian for beating me to the suggestion and to Even for all the hard work!!!</div><br><div class="gmail_quote"><div dir="ltr">On Tue, Dec 18, 2018 at 10:57 AM Even Rouault <<a href="mailto:even.rouault@spatialys.com">even.rouault@spatialys.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">> Since we require compilation with a C++ compiler now it is too far-fetched<br>
> an idea to compile everything as C++. It would be interesting to see if<br>
> this is possible without too much extra work.<br>
> <br>
<br>
I'm taking a crack at that right now. Seems doable.<br>
What C++ doesn't like at all is the implict cast from void* to <br>
something_else*, that need to be explicited in C++ as static_cast<>()<br>
<br>
Beyond those errors, a lot warnings which seem to be exclusively instances of<br>
-Wzero-as-null-pointer-constant. clang-tidy should be able to convert those.<br>
<br>
> I guess that modification of proj_create-functions wouldn't take too much<br>
> work<br>
 since most is already done in the C++ parts of the code. We still<br>
> have to keep pj_init() and friends alive for a little while longer. Will<br>
> that pose a problem or can all the work be delegate to<br>
> PROJStringParser::createFromPROJString() ? <br>
> In case of the technical objects, could that be handled by using the<br>
> recently proposed "noop" operation?<br>
<br>
I think that an "invalid" operation would be a better fit for those. We don't <br>
want such objects to be confused with valid coordinate transformation<br>
"noop" is a valid operation when there is nothing to do except passthrough <br>
coordinates. If the PJ object you got is let's say a prime meridian, it is <br>
better if proj_trans() returns an error rather than the input values.<br>
(but that's just a detail)<br>
<br>
Even<br>
<br>
-- <br>
Spatialys - Geospatial professional services<br>
<a href="http://www.spatialys.com" rel="noreferrer" target="_blank">http://www.spatialys.com</a><br>
_______________________________________________<br>
PROJ mailing list<br>
<a href="mailto:PROJ@lists.osgeo.org" target="_blank">PROJ@lists.osgeo.org</a><br>
<a href="https://lists.osgeo.org/mailman/listinfo/proj" rel="noreferrer" target="_blank">https://lists.osgeo.org/mailman/listinfo/proj</a><br>
</blockquote></div><br clear="all"><div><br></div>-- <br><div dir="ltr" class="gmail_signature">--<div><a href="http://schwehr.org" target="_blank">http://schwehr.org</a></div></div>