[gdal-dev] Starting a discussion on style and coding guidelines
even.rouault at spatialys.com
Wed May 4 16:45:49 PDT 2016
Le jeudi 05 mai 2016 00:51:28, Mateusz Loskot a écrit :
> On 4 May 2016 at 23:30, Kurt Schwehr <schwehr at gmail.com> wrote:
> > To start off the conversation, I wrote up a doc on changing large C
> > arrays on the stack to std::vectors to get this data off of the stack
> > and to simplify initialization.
> Since many, if not most, of the ideas rely on availability of the C++11
> it might be a good idea to first agree on C++11 as the lowest
> required C++ compilation mode.
> Let's poll if there are any users who require C++03 at all.
I think there are different topics in what Kurt proposes :
- style and other changes that are not bound to a particular compiler version
- changes potentially dependant of the C++ version
Of the potential issues with requiring C++11, I can think of OSGeo4W. It is
mostly(completely?) built with Visual Studio 2010. And from
https://msdn.microsoft.com/en-us/library/hh567368.aspx , support of C++11 is
only partial in VS 2010
Regarding the current use of VS2010 in OSGeo4W, this is discussed here :
Potentially we could imagine having GDAL compiled with a later VS version and
have the rest using VS2010, since most (all?) other software in OSGeo4W use it
probably through its C API. Hum, actually that must not be true for OTB that
uses the C++ API I think. Perhaps Jürgen has something to add regarding this
compiler issue ?
On the other hand regarding dependencies of GDAL, the binary propritary SDKs
with a C++ API could be a problem, although they will likely move on too.
- FileGDB SDK 1.4: available for VS2010, VS2012, VS2013
- ECW SDK 5.2.1: available for VS2010, VS2012, VS2013
- MrSID SDK: I didn't check. Perhaps Kirk can tell us ?
But I'm not sure about the compatibility of C++11 build against non-C++11
builds in the VS realm : can a GDAL C++11 build link against a library built
without C++11 enabled ? Will not there be ABI problems ?
Spatialys - Geospatial professional services
More information about the gdal-dev