https://bugs.exim.org/show_bug.cgi?id=2024
Bug ID: 2024 Summary: MSVC C++ warning due to conversion from ptrdiff_t to int in pcre_exec.c Product: PCRE Version: 8.40 Hardware: x86-64 OS: Windows Status: NEW Severity: wishlist Priority: medium Component: Code Assignee: p...@hermes.cam.ac.uk Reporter: mi...@fastmail.com CC: pcre-dev@exim.org Compiling PCRE-8.40 using any Visual Studio version and the x64 Microsoft compilers, a warning is thrown for pcre_exec.c, due to an implicit conversion of a pointer difference to int: 3rdparty\pcre-8.39\pcre_exec.c(672): warning C4244: 'initializing' : conversion from '__int64' to 'int', possible loss of data The relevant line (672): int len = (char *)&rdepth - (char *)eptr; int on x64 on Windows is still only 32 bits wide, while ptrdiff_t is 64 of course. Looking at the referenced pointers, it seems using 32 bits is safe. I therefore propose explicitly casting the subtraction result to an int, to get rid of the warning. Thanks, Milan -- You are receiving this mail because: You are on the CC list for the bug. -- ## List details at https://lists.exim.org/mailman/listinfo/pcre-dev