postgres.git / summary / log / commit / refs

commit    cf39aebf17c571456c9dbcc06d3569a98e2fcecc
Author:   Tom Lane <tgl@sss.pgh.pa.us>
Date:     Fri May 18 16:52:28 2018 +0000
First released in: 11.0, 9.3.24, 9.4.19, 9.5.14, 9.6.10, 10.5

    Recognize that MSVC can support strtoll() and strtoull().
    
    This is needed for full support of "long long" variables in ecpg, but
    the previous patch for bug #15080 (commits 51057feaa et al) missed it.
    In MSVC versions where the functions don't exist under those names,
    we can nonetheless use _strtoi64() and _strtoui64().
    
    Like the previous patch, back-patch all the way.
    
    Dang Minh Huong
    
    Discussion: https://postgr.es/m/151935568942.1461.14623890240535309745@wrigleys.postgresql.org


src/include/pg_config.h.win32 | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/src/include/pg_config.h.win32 b/src/include/pg_config.h.win32 index e02ee8298ba..76617e2ae27 100644 --- a/src/include/pg_config.h.win32 +++ b/src/include/pg_config.h.win32 @@ -357,13 +357,25 @@ #define HAVE_STRONG_RANDOM 1 /* Define to 1 if you have the `strtoll' function. */ -//#define HAVE_STRTOLL 1 +#ifdef HAVE_LONG_LONG_INT_64 +#define HAVE_STRTOLL 1 +/* Before VS2013, use Microsoft's nonstandard equivalent function */ +#if (_MSC_VER < 1800) +#define strtoll _strtoi64 +#endif +#endif /* Define to 1 if you have the `strtoq' function. */ /* #undef HAVE_STRTOQ */ /* Define to 1 if you have the `strtoull' function. */ -//#define HAVE_STRTOULL 1 +#ifdef HAVE_LONG_LONG_INT_64 +#define HAVE_STRTOULL 1 +/* Before VS2013, use Microsoft's nonstandard equivalent function */ +#if (_MSC_VER < 1800) +#define strtoull _strtoui64 +#endif +#endif /* Define to 1 if you have the `strtouq' function. */ /* #undef HAVE_STRTOUQ */ [parent: 29ce50091d12]