URL:
<https://savannah.gnu.org/support/?110296>
Summary: AC_TYPE_PID_T defines pid_t incorrectly on 64-bit
MSVC
Project: Autoconf
Submitted by: haible
Submitted on: Mon 24 Aug 2020 01:36:11 AM CEST
Category: None
Priority: 5 - Normal
Severity: 3 - Normal
Status: None
Privacy: Public
Assigned to: None
Originator Email:
Open/Closed: Open
Discussion Lock: Any
Operating System: Microsoft Windows
_______________________________________________________
Details:
On 64-bit native Windows, pid_t has to be a 64-bit type, as explained in
https://lists.gnu.org/archive/html/bug-gnulib/2020-08/msg00209.html .
With mingw, there is no problem, as mingw defines pid_t correctly.
But on MSVC (and MSVC/clang), the type pid_t is not defined, neither by the
standard header files nor by the compiler. The AC_TYPE_PID_T therefore kicks
in and defines it. But it defines it incorrectly, namely to 'int', where
instead 'long long' or '__int64' is the correct definition. For compatibility
with MSVC versions < 14 (older than 2015), it is best to use '__int64', as
support for 'long long' was only added in MSVC 14 (Visual Studio 2015).
Patch is attached.
_______________________________________________________
Reply to this item at:
<https://savannah.gnu.org/support/?110296>
_______________________________________________
Message sent via Savannah
https://savannah.gnu.org/