[gdal-dev] std::numeric_limits<int64_t>::min() vs LLONG_MIN

Paul Meems bontepaarden at gmail.com
Fri Dec 16 15:30:23 PST 2022


Hello List,

We're trying to update MapWinGIS which is using the GDAL libraries from
gisinternals.com
Currently, we use the stable daily of December 9:
*release-1928-gdal-3-5-mapserver-8-0*

I'm using VS2019 (on Windows) to compile and I'm having issues with two
lines in gdal_pam.h, around line 215.
We need to change these two lines:

   - constexpr int64_t GDAL_PAM_DEFAULT_NODATA_VALUE_INT64 =
   std::numeric_limits<int64_t>::min();
   - constexpr uint64_t GDAL_PAM_DEFAULT_NODATA_VALUE_UINT64 =
   std::numeric_limits<uint64_t>::max();

To

   - constexpr int64_t GDAL_PAM_DEFAULT_NODATA_VALUE_INT64 = LLONG_MIN;
   - constexpr uint64_t GDAL_PAM_DEFAULT_NODATA_VALUE_UINT64 = LLONG_MAX;

I prefer not to alter the files from gisinternals.com. Is this what we can
solve on our end?
Is it related to the C++ version? We use these:

   - ISO C++14 Standard (/std:c++14)
   - ISO C11 Standard (/std:c11)

Thanks for any advice.

Paul Meems
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/gdal-dev/attachments/20221217/2ed517ec/attachment.htm>


More information about the gdal-dev mailing list