Hi Andrew,
We don't enable -Wsign-conversion in GDAL builds, hence it went under
the radar. That said nothing wrong in you enabling it for your own code.
I've fixed the issue in https://github.com/OSGeo/gdal/pull/13785 and
also added a CI check so that our exported headers pass -Wsign-conversion
Even
Le 27/01/2026 à 13:32, Andrew C Aitchison via gdal-dev a écrit :
The recent commit 76ade06580d5f6b4f710d41214647abf36be9fdc
includes this change:
@@ -279,6 +299,13 @@ class CPL_DLL CPLJSONArray : public CPLJSONObject
/*! @endcond */
public:
int Size() const;
+
+ //! Return the size of the array
+ inline size_t size() const
+ {
+ return Size();
+ }
+
void AddNull();
void Add(const CPLJSONObject &oValue);
void Add(const std::string &osValue);
I usually build my driver with clang++ -Werror -Wsign-conversion
but this compile is catching the change:
clang++-22 -fPIC -I/usr/local/gdal/git.llvm/include -Weffc++ -g -Og
-Wall -Wextra -DFRMT_vrc -DVRC_STANDALONE
-Wno-unknown-pragmas -Wall -Wextra -Werror -Wno-unknown-pragmas
-Weverything -Wno-c++17-attribute-extensions
-Wno-error=unknown-warning-option -Wno-format-pedantic
-Wno-c++98-compat -Wno-c++98-compat-pedantic -Wno-padded
-Wno-reserved-identifier -Werror=incompatible-function-pointer-types
-Wno-unsafe-buffer-usage -Wno-error=unknown-warning-option
-c -o VRC.o VRC.cpp
In file included from VRC.cpp:37:
In file included from ./VRC.h:61:
In file included from /usr/local/gdal/git.llvm/include/gdal_pam.h:22:
In file included from /usr/local/gdal/git.llvm/include/gdal_priv.h:46:
In file included from /usr/local/gdal/git.llvm/include/ogr_feature.h:20:
In file included from /usr/local/gdal/git.llvm/include/ogr_geometry.h:19:
/usr/local/gdal/git.llvm/include/cpl_json.h:306:16: error: implicit
conversion changes
signedness: 'int' to 'size_t' (aka 'unsigned long')
[-Werror,-Wsign-conversion]
306 | return Size();
| ~~~~~~ ^~~~~~
Am I wrong to be using -Wsign-conversion even though it has worked
until now ?
Thanks,
--
http://www.spatialys.com
My software is free, but my time generally not.
_______________________________________________
gdal-dev mailing list
[email protected]
https://lists.osgeo.org/mailman/listinfo/gdal-dev