Functions _atoi64, _strtoi64 and _strtoui64 are available since the first
release of msvcrt.dll as part of MS Visual C++ 4.2.

Define functions atoll, strtoll, strtoull, strtoimax and strtoumax as
aliases for msvcrt _atoi64, _strtoi64 and _strtoui64 functions directly in
def files. This would allow applications to directly link to msvcrt
functions. Currently these functions are provided by mingw-w64 functions
strtoimax and strtoumax which are (statically) linked into executables.

Note that all these functions are provided since msvcr120.dll which is part
of MS Visual Studio 2013.

For compatibility with older msvcrt versions, functions _strtoi64 and
_strtoui64 are provided by mingw-w64 as aliases to mingw-w64 strtoimax and
strtoumax implementations.

Also implement atoll() and _atoi64() via strtoll() for older msvcrt
versions.

This change also removes static inline function atoll as now it is always
provided as alias at the link time for every msvcrt version.

Note that mingw-w64 functions strtoimax(), strtoumax() and atoll() should
not be packed into libmingwex.a because libmingwex.a takes precedence over
libmsvcr*.a. To ensure that version from libmsvcr*.a is used, it is
required to move mingw-w64 implementations from libmingwex.a to libmsvcr*.a
(for msvcrt versions which do not provide these functions).

Tested with following simple program and verified that compiled binary
calls _atoi64 and _strtoi64 symbols from msvcrt.dll:

  #include <stdio.h>
  #include <stdlib.h>
  #include <inttypes.h>
  int main(int argc, char *argv[]) {
    printf("%lld\n", atoll(argv[1]));
    printf("%lld\n", strtoll(argv[1], NULL, 0));
    printf("%lld\n", strtoimax(argv[1], NULL, 0));
  }
---
 mingw-w64-crt/Makefile.am              | 16 ++++++++++++++--
 mingw-w64-crt/lib-common/msvcrt.def.in | 10 ++++++++++
 mingw-w64-crt/lib32/msvcr100.def.in    | 10 ++++++++++
 mingw-w64-crt/lib32/msvcr110.def.in    | 10 ++++++++++
 mingw-w64-crt/lib32/msvcr70.def        |  5 +++++
 mingw-w64-crt/lib32/msvcr71.def        |  5 +++++
 mingw-w64-crt/lib32/msvcr80.def.in     |  5 +++++
 mingw-w64-crt/lib32/msvcr90.def.in     | 10 ++++++++++
 mingw-w64-crt/lib32/msvcr90d.def.in    | 10 ++++++++++
 mingw-w64-crt/lib64/msvcr100.def.in    | 10 ++++++++++
 mingw-w64-crt/lib64/msvcr110.def.in    | 10 ++++++++++
 mingw-w64-crt/lib64/msvcr80.def.in     |  5 +++++
 mingw-w64-crt/lib64/msvcr90.def.in     | 10 ++++++++++
 mingw-w64-crt/lib64/msvcr90d.def.in    | 10 ++++++++++
 mingw-w64-crt/misc/strtoimax.c         |  9 +++++++++
 mingw-w64-crt/misc/strtoumax.c         |  9 +++++++++
 mingw-w64-crt/stdio/atoll.c            |  7 +++++--
 mingw-w64-headers/crt/stdlib.h         |  1 -
 18 files changed, 147 insertions(+), 5 deletions(-)

diff --git a/mingw-w64-crt/Makefile.am b/mingw-w64-crt/Makefile.am
index 28d74c66a581..5aac06e5e544 100644
--- a/mingw-w64-crt/Makefile.am
+++ b/mingw-w64-crt/Makefile.am
@@ -439,8 +439,11 @@ src_crtdll=\
   misc/invalid_parameter_handler.c \
   misc/lc_locale_func.c \
   misc/seterrno.c \
+  misc/strtoimax.c \
+  misc/strtoumax.c \
   stdio/_scprintf.c \
   stdio/_vscprintf.c \
+  stdio/atoll.c \
   stdio/mingw_dummy__lock.c \
   stdio/mingw_lock.c
 
@@ -456,8 +459,11 @@ src_msvcrt10=\
   misc/invalid_parameter_handler.c \
   misc/lc_locale_func.c \
   misc/seterrno.c \
+  misc/strtoimax.c \
+  misc/strtoumax.c \
   stdio/_scprintf.c \
   stdio/_vscprintf.c \
+  stdio/atoll.c \
   stdio/mingw_dummy__lock.c \
   stdio/mingw_lock.c
 
@@ -468,8 +474,11 @@ src_msvcrt20=\
   misc/invalid_parameter_handler.c \
   misc/lc_locale_func.c \
   misc/seterrno.c \
+  misc/strtoimax.c \
+  misc/strtoumax.c \
   stdio/_scprintf.c \
   stdio/_vscprintf.c \
+  stdio/atoll.c \
   stdio/mingw_dummy__lock.c \
   stdio/mingw_lock.c
 
@@ -478,8 +487,11 @@ src_msvcrt40=\
   misc/invalid_parameter_handler.c \
   misc/lc_locale_func.c \
   misc/seterrno.c \
+  misc/strtoimax.c \
+  misc/strtoumax.c \
   stdio/_scprintf.c \
   stdio/_vscprintf.c \
+  stdio/atoll.c \
   stdio/mingw_dummy__lock.c \
   stdio/mingw_lock.c
 
@@ -563,7 +575,7 @@ src_libmingwex=\
   misc/mingw_wcstold.c \
   misc/mkstemp.c         misc/sleep.c           \
   misc/strnlen.c         misc/strsafe.c         \
-  misc/strtoimax.c       misc/strtoumax.c           misc/tdelete.c          
misc/tdestroy.c              misc/tfind.c           \
+  misc/tdelete.c         misc/tdestroy.c            misc/tfind.c           \
   misc/tsearch.c         misc/twalk.c           \
   misc/wcsnlen.c         misc/wcstof.c          \
   misc/wcstoimax.c       misc/wcstold.c             misc/wcstoumax.c        
misc/wctob.c                 misc/wctrans.c         \
@@ -582,7 +594,7 @@ src_libmingwex=\
   stdio/_Exit.c            stdio/_findfirst64i32.c   stdio/_findnext64i32.c   
stdio/_fstat.c \
   stdio/_fstat64i32.c      stdio/_ftime.c       \
   stdio/_stat.c            stdio/_stat64i32.c        stdio/_wfindfirst64i32.c 
stdio/_wfindnext64i32.c \
-  stdio/_wstat.c           stdio/_wstat64i32.c       stdio/asprintf.c         
stdio/atoll.c             stdio/fgetpos64.c       \
+  stdio/_wstat.c           stdio/_wstat64i32.c       stdio/asprintf.c         
stdio/fgetpos64.c       \
   stdio/fopen64.c          stdio/fseeko32.c          stdio/fseeko64.c         
stdio/fsetpos64.c         stdio/ftello.c          \
   stdio/ftello64.c         stdio/ftruncate64.c       stdio/lltoa.c            
stdio/lltow.c             stdio/lseek64.c         \
   stdio/mingw_fprintf.c    stdio/mingw_fprintfw.c    stdio/mingw_fscanf.c     
stdio/mingw_fwscanf.c     stdio/mingw_pformat.c   \
diff --git a/mingw-w64-crt/lib-common/msvcrt.def.in 
b/mingw-w64-crt/lib-common/msvcrt.def.in
index 942c4c4ebefe..695a4d7f7cba 100644
--- a/mingw-w64-crt/lib-common/msvcrt.def.in
+++ b/mingw-w64-crt/lib-common/msvcrt.def.in
@@ -387,7 +387,9 @@ _atodbl_l
 _atof_l
 _atoflt_l
 _atoi64
+atoll == _atoi64
 _atoi64_l
+_atoll_l == _atoi64_l
 _atoi_l
 _atol_l
 _atoldbl
@@ -1034,10 +1036,18 @@ _strtime
 ; _strtime_s replaced by emu
 _strtod_l
 _strtoi64
+strtoll == _strtoi64
+strtoimax == _strtoi64
 _strtoi64_l
+_strtoll_l == _strtoi64_l
+_strtoimax_l == _strtoi64_l
 _strtol_l
 _strtoui64
+strtoull == _strtoui64
+strtoumax == _strtoui64
 _strtoui64_l
+_strtoull_l == _strtoui64_l
+_strtoumax_l == _strtoui64_l
 _strtoul_l
 _strupr
 _strupr_l
diff --git a/mingw-w64-crt/lib32/msvcr100.def.in 
b/mingw-w64-crt/lib32/msvcr100.def.in
index 8e8dfb46096b..676589296de4 100644
--- a/mingw-w64-crt/lib32/msvcr100.def.in
+++ b/mingw-w64-crt/lib32/msvcr100.def.in
@@ -738,7 +738,9 @@ _atof_l
 _atoflt
 _atoflt_l
 _atoi64
+atoll == _atoi64
 _atoi64_l
+_atoll_l == _atoi64_l
 _atoi_l
 _atol_l
 _atoldbl
@@ -1402,10 +1404,18 @@ _strtime
 _strtime_s
 _strtod_l
 _strtoi64
+strtoll == _strtoi64
+strtoimax == _strtoi64
 _strtoi64_l
+_strtoll_l == _strtoi64_l
+_strtoimax_l == _strtoi64_l
 _strtol_l
 _strtoui64
+strtoull == _strtoui64
+strtoumax == _strtoui64
 _strtoui64_l
+_strtoull_l == _strtoui64_l
+_strtoumax_l == _strtoui64_l
 _strtoul_l
 _strupr
 _strupr_l
diff --git a/mingw-w64-crt/lib32/msvcr110.def.in 
b/mingw-w64-crt/lib32/msvcr110.def.in
index b864009b6613..2f2e19b3ce48 100644
--- a/mingw-w64-crt/lib32/msvcr110.def.in
+++ b/mingw-w64-crt/lib32/msvcr110.def.in
@@ -862,7 +862,9 @@ _atof_l
 _atoflt
 _atoflt_l
 _atoi64
+atoll == _atoi64
 _atoi64_l
+_atoll_l == _atoi64_l
 _atoi_l
 _atol_l
 _atoldbl
@@ -1535,10 +1537,18 @@ _strtime
 _strtime_s
 _strtod_l
 _strtoi64
+strtoll == _strtoi64
+strtoimax == _strtoi64
 _strtoi64_l
+_strtoll_l == _strtoi64_l
+_strtoimax_l == _strtoi64_l
 _strtol_l
 _strtoui64
+strtoull == _strtoui64
+strtoumax == _strtoui64
 _strtoui64_l
+_strtoull_l == _strtoui64_l
+_strtoumax_l == _strtoui64_l
 _strtoul_l
 _strupr
 _strupr_l
diff --git a/mingw-w64-crt/lib32/msvcr70.def b/mingw-w64-crt/lib32/msvcr70.def
index 5ec73e781a3f..43c469fc123e 100644
--- a/mingw-w64-crt/lib32/msvcr70.def
+++ b/mingw-w64-crt/lib32/msvcr70.def
@@ -259,6 +259,7 @@ _amsg_exit
 _assert
 _atodbl
 _atoi64
+atoll == _atoi64
 _atoldbl
 _beep
 _beginthread
@@ -581,7 +582,11 @@ _strrev
 _strset
 _strtime
 _strtoi64
+strtoll == _strtoi64
+strtoimax == _strtoi64
 _strtoui64
+strtoull == _strtoui64
+strtoumax == _strtoui64
 _strupr
 _swab
 _sys_errlist DATA
diff --git a/mingw-w64-crt/lib32/msvcr71.def b/mingw-w64-crt/lib32/msvcr71.def
index 1db6d0b58bf5..5ec0f2ab4ac1 100644
--- a/mingw-w64-crt/lib32/msvcr71.def
+++ b/mingw-w64-crt/lib32/msvcr71.def
@@ -253,6 +253,7 @@ _amsg_exit
 _assert
 _atodbl
 _atoi64
+atoll == _atoi64
 _atoldbl
 _beep
 _beginthread
@@ -576,7 +577,11 @@ _strrev
 _strset
 _strtime
 _strtoi64
+strtoll == _strtoi64
+strtoimax == _strtoi64
 _strtoui64
+strtoull == _strtoui64
+strtoumax == _strtoui64
 _strupr
 _swab
 _sys_errlist DATA
diff --git a/mingw-w64-crt/lib32/msvcr80.def.in 
b/mingw-w64-crt/lib32/msvcr80.def.in
index bb1ec8444208..42ded14affc2 100644
--- a/mingw-w64-crt/lib32/msvcr80.def.in
+++ b/mingw-w64-crt/lib32/msvcr80.def.in
@@ -114,6 +114,7 @@ _amsg_exit
 _assert
 _atodbl
 _atoi64
+atoll == _atoi64
 _atoldbl
 _beep
 _beginthread
@@ -842,7 +843,11 @@ _set_security_error_handler
 _snscanf
 _snwscanf
 _strtoi64
+strtoll == _strtoi64
+strtoimax == _strtoi64
 _strtoui64
+strtoull == _strtoui64
+strtoumax == _strtoui64
 _ungetwch
 _vscprintf
 _vscwprintf
diff --git a/mingw-w64-crt/lib32/msvcr90.def.in 
b/mingw-w64-crt/lib32/msvcr90.def.in
index 62789337b7ad..f6de7645e35f 100644
--- a/mingw-w64-crt/lib32/msvcr90.def.in
+++ b/mingw-w64-crt/lib32/msvcr90.def.in
@@ -363,7 +363,9 @@ _atof_l
 _atoflt
 _atoflt_l
 _atoi64
+atoll == _atoi64
 _atoi64_l
+_atoll_l == _atoi64_l
 _atoi_l
 _atol_l
 _atoldbl
@@ -1038,10 +1040,18 @@ _strtime
 _strtime_s
 _strtod_l
 _strtoi64
+strtoll == _strtoi64
+strtoimax == _strtoi64
 _strtoi64_l
+_strtoll_l == _strtoi64_l
+_strtoimax_l == _strtoi64_l
 _strtol_l
 _strtoui64
+strtoull == _strtoui64
+strtoumax == _strtoui64
 _strtoui64_l
+_strtoull_l == _strtoui64_l
+_strtoumax_l == _strtoui64_l
 _strtoul_l
 _strupr
 _strupr_l
diff --git a/mingw-w64-crt/lib32/msvcr90d.def.in 
b/mingw-w64-crt/lib32/msvcr90d.def.in
index 1175bfec1b9c..52c33dcf9751 100644
--- a/mingw-w64-crt/lib32/msvcr90d.def.in
+++ b/mingw-w64-crt/lib32/msvcr90d.def.in
@@ -414,7 +414,9 @@ _atof_l
 _atoflt
 _atoflt_l
 _atoi64
+atoll == _atoi64
 _atoi64_l
+_atoll_l == _atoi64_l
 _atoi_l
 _atol_l
 _atoldbl
@@ -1103,10 +1105,18 @@ _strtime
 _strtime_s
 _strtod_l
 _strtoi64
+strtoll == _strtoi64
+strtoimax == _strtoi64
 _strtoi64_l
+_strtoll_l == _strtoi64_l
+_strtoimax_l == _strtoi64_l
 _strtol_l
 _strtoui64
+strtoull == _strtoui64
+strtoumax == _strtoui64
 _strtoui64_l
+_strtoull_l == _strtoui64_l
+_strtoumax_l == _strtoui64_l
 _strtoul_l
 _strupr
 _strupr_l
diff --git a/mingw-w64-crt/lib64/msvcr100.def.in 
b/mingw-w64-crt/lib64/msvcr100.def.in
index aab982691303..1530a719f019 100644
--- a/mingw-w64-crt/lib64/msvcr100.def.in
+++ b/mingw-w64-crt/lib64/msvcr100.def.in
@@ -696,7 +696,9 @@ _atof_l
 _atoflt
 _atoflt_l
 _atoi64
+atoll == _atoi64
 _atoi64_l
+_atoll_l == _atoi64_l
 _atoi_l
 _atol_l
 _atoldbl
@@ -1349,10 +1351,18 @@ _strtime
 _strtime_s
 _strtod_l
 _strtoi64
+strtoll == _strtoi64
+strtoimax == _strtoi64
 _strtoi64_l
+_strtoll_l == _strtoi64_l
+_strtoimax_l == _strtoi64_l
 _strtol_l
 _strtoui64
+strtoull == _strtoui64
+strtoumax == _strtoui64
 _strtoui64_l
+_strtoull_l == _strtoui64_l
+_strtoumax_l == _strtoui64_l
 _strtoul_l
 _strupr
 _strupr_l
diff --git a/mingw-w64-crt/lib64/msvcr110.def.in 
b/mingw-w64-crt/lib64/msvcr110.def.in
index 60304f9fd0ef..b5b9e3ec5ced 100644
--- a/mingw-w64-crt/lib64/msvcr110.def.in
+++ b/mingw-w64-crt/lib64/msvcr110.def.in
@@ -822,7 +822,9 @@ _atof_l
 _atoflt
 _atoflt_l
 _atoi64
+atoll == _atoi64
 _atoi64_l
+_atoll_l == _atoi64_l
 _atoi_l
 _atol_l
 _atoldbl
@@ -1473,10 +1475,18 @@ _strtime
 _strtime_s
 _strtod_l
 _strtoi64
+strtoll == _strtoi64
+strtoimax == _strtoi64
 _strtoi64_l
+_strtoll_l == _strtoi64_l
+_strtoimax_l == _strtoi64_l
 _strtol_l
 _strtoui64
+strtoull == _strtoui64
+strtoumax == _strtoui64
 _strtoui64_l
+_strtoull_l == _strtoui64_l
+_strtoumax_l == _strtoui64_l
 _strtoul_l
 _strupr
 _strupr_l
diff --git a/mingw-w64-crt/lib64/msvcr80.def.in 
b/mingw-w64-crt/lib64/msvcr80.def.in
index 045052ec8a93..171f5850f1ff 100644
--- a/mingw-w64-crt/lib64/msvcr80.def.in
+++ b/mingw-w64-crt/lib64/msvcr80.def.in
@@ -195,6 +195,7 @@ _amsg_exit
 _assert
 _atodbl
 _atoi64
+atoll == _atoi64
 _atoldbl
 _beep
 _beginthread
@@ -530,7 +531,11 @@ _strrev
 _strset
 _strtime
 _strtoi64
+strtoll == _strtoi64
+strtoimax == _strtoi64
 _strtoui64
+strtoull == _strtoui64
+strtoumax == _strtoui64
 _strupr
 _swab
 _sys_errlist DATA
diff --git a/mingw-w64-crt/lib64/msvcr90.def.in 
b/mingw-w64-crt/lib64/msvcr90.def.in
index c8cf9b220262..876a672ea234 100644
--- a/mingw-w64-crt/lib64/msvcr90.def.in
+++ b/mingw-w64-crt/lib64/msvcr90.def.in
@@ -311,7 +311,9 @@ _atof_l
 _atoflt
 _atoflt_l
 _atoi64
+atoll == _atoi64
 _atoi64_l
+_atoll_l == _atoi64_l
 _atoi_l
 _atol_l
 _atoldbl
@@ -971,10 +973,18 @@ _strtime
 _strtime_s
 _strtod_l
 _strtoi64
+strtoll == _strtoi64
+strtoimax == _strtoi64
 _strtoi64_l
+_strtoll_l == _strtoi64_l
+_strtoimax_l == _strtoi64_l
 _strtol_l
 _strtoui64
+strtoull == _strtoui64
+strtoumax == _strtoui64
 _strtoui64_l
+_strtoull_l == _strtoui64_l
+_strtoumax_l == _strtoui64_l
 _strtoul_l
 _strupr
 _strupr_l
diff --git a/mingw-w64-crt/lib64/msvcr90d.def.in 
b/mingw-w64-crt/lib64/msvcr90d.def.in
index 2acdc3fcf7ee..26c5888e681f 100644
--- a/mingw-w64-crt/lib64/msvcr90d.def.in
+++ b/mingw-w64-crt/lib64/msvcr90d.def.in
@@ -356,7 +356,9 @@ _atof_l
 _atoflt
 _atoflt_l
 _atoi64
+atoll == _atoi64
 _atoi64_l
+_atoll_l == _atoi64_l
 _atoi_l
 _atol_l
 _atoldbl
@@ -1030,10 +1032,18 @@ _strtime
 _strtime_s
 _strtod_l
 _strtoi64
+strtoll == _strtoi64
+strtoimax == _strtoi64
 _strtoi64_l
+_strtoll_l == _strtoi64_l
+_strtoimax_l == _strtoi64_l
 _strtol_l
 _strtoui64
+strtoull == _strtoui64
+strtoumax == _strtoui64
 _strtoui64_l
+_strtoull_l == _strtoui64_l
+_strtoumax_l == _strtoui64_l
 _strtoul_l
 _strupr
 _strupr_l
diff --git a/mingw-w64-crt/misc/strtoimax.c b/mingw-w64-crt/misc/strtoimax.c
index 9e75f8a27503..7f09869cb0b1 100644
--- a/mingw-w64-crt/misc/strtoimax.c
+++ b/mingw-w64-crt/misc/strtoimax.c
@@ -31,6 +31,7 @@
 #define valid(n, b)    ((n) >= 0 && (n) < (b))
 
 intmax_t
+__cdecl
 strtoimax(const char * __restrict__ nptr, char ** __restrict__ endptr, int 
base)
        {
        register uintmax_t      accum;  /* accumulates converted value */
@@ -109,6 +110,14 @@ strtoimax(const char * __restrict__ nptr, char ** 
__restrict__ endptr, int base)
        else
                return (intmax_t)(minus ? -accum : accum);
        }
+intmax_t (__cdecl *__MINGW_IMP_SYMBOL(strtoimax))(const char* __restrict__, 
char ** __restrict__, int) = strtoimax;
 
 long long __attribute__ ((alias ("strtoimax")))
+__cdecl
 strtoll (const char* __restrict__ nptr, char ** __restrict__ endptr, int base);
+long long (__cdecl *__MINGW_IMP_SYMBOL(strtoll))(const char* __restrict__, 
char ** __restrict__, int) = strtoll;
+
+__int64 __attribute__ ((alias ("strtoimax")))
+__cdecl
+_strtoi64 (const char* __restrict__ nptr, char ** __restrict__ endptr, int 
base);
+__int64 (__cdecl *__MINGW_IMP_SYMBOL(_strtoi64))(const char* __restrict__, 
char ** __restrict__, int) = _strtoi64;
diff --git a/mingw-w64-crt/misc/strtoumax.c b/mingw-w64-crt/misc/strtoumax.c
index 2c24db14d829..d47a7c90d8f1 100644
--- a/mingw-w64-crt/misc/strtoumax.c
+++ b/mingw-w64-crt/misc/strtoumax.c
@@ -31,6 +31,7 @@
 #define valid(n, b)    ((n) >= 0 && (n) < (b))
 
 uintmax_t
+__cdecl
 strtoumax(const char * __restrict__ nptr, char ** __restrict__ endptr, int 
base)
        {
        register uintmax_t      accum;  /* accumulates converted value */
@@ -107,6 +108,14 @@ strtoumax(const char * __restrict__ nptr, char ** 
__restrict__ endptr, int base)
        else
                return minus ? -accum : accum;  /* (yes!) */
        }
+uintmax_t (__cdecl *__MINGW_IMP_SYMBOL(strtoumax))(const char* __restrict__, 
char ** __restrict__, int) = strtoumax;
 
 unsigned long long __attribute__ ((alias ("strtoumax")))
+__cdecl
 strtoull (const char* __restrict__ nptr, char ** __restrict__ endptr, int 
base);
+unsigned long long (__cdecl *__MINGW_IMP_SYMBOL(strtoull))(const char* 
__restrict__, char ** __restrict__, int) = strtoull;
+
+unsigned __int64 __attribute__ ((alias ("strtoumax")))
+__cdecl
+_strtoui64 (const char* __restrict__ nptr, char ** __restrict__ endptr, int 
base);
+unsigned __int64 (__cdecl *__MINGW_IMP_SYMBOL(_strtoui64))(const char* 
__restrict__, char ** __restrict__, int) = _strtoui64;
diff --git a/mingw-w64-crt/stdio/atoll.c b/mingw-w64-crt/stdio/atoll.c
index 39df0139f3d3..278c01cf9257 100644
--- a/mingw-w64-crt/stdio/atoll.c
+++ b/mingw-w64-crt/stdio/atoll.c
@@ -6,5 +6,8 @@
 #define __CRT__NO_INLINE
 #include <stdlib.h>
 
-long long atoll (const char * _c)
-       { return _atoi64 (_c); }
+long long __cdecl atoll(const char * nptr) { return strtoll(nptr, NULL, 10); }
+long long (__cdecl *__MINGW_IMP_SYMBOL(atoll))(const char *) = atoll;
+
+__int64 __attribute__((alias("atoll"))) __cdecl _atoi64(const char * nptr);
+__int64 (__cdecl *__MINGW_IMP_SYMBOL(_atoi64))(const char *) = _atoi64;
diff --git a/mingw-w64-headers/crt/stdlib.h b/mingw-w64-headers/crt/stdlib.h
index 1d864bbbdc49..128f3bf97f52 100644
--- a/mingw-w64-headers/crt/stdlib.h
+++ b/mingw-w64-headers/crt/stdlib.h
@@ -749,7 +749,6 @@ unsigned long __cdecl _lrotr(unsigned long,int);
 
   /* __CRT_INLINE using non-ansi functions */
 #ifndef __CRT__NO_INLINE
-  __MINGW_EXTENSION __CRT_INLINE long long  __cdecl atoll (const char * _c) { 
return _atoi64 (_c); }
   __MINGW_EXTENSION __CRT_INLINE char *__cdecl lltoa (long long _n, char * _c, 
int _i) { return _i64toa (_n, _c, _i); }
   __MINGW_EXTENSION __CRT_INLINE char *__cdecl ulltoa (unsigned long long _n, 
char * _c, int _i) { return _ui64toa (_n, _c, _i); }
   __MINGW_EXTENSION __CRT_INLINE long long  __cdecl wtoll (const wchar_t * _w) 
{ return _wtoi64 (_w); }
-- 
2.20.1



_______________________________________________
Mingw-w64-public mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public

Reply via email to