------- You are receiving this mail because: -------
You are on the CC list for the bug.
http://bugs.exim.org/show_bug.cgi?id=991
Summary: PCRE generates warnings when compiled on Windows x64
Product: PCRE
Version: 8.01
Platform: x86-64
OS/Version: Windows
Status: NEW
Severity: bug
Priority: medium
Component: Code
AssignedTo: ph10@???
ReportedBy: dpchiesa@???
CC: pcre-dev@???
I've compiled and used PCRE on Windows x86 for years, as part of IIRF, which is
an open-source URL Rewriter for IIS. Recently I tried compiling PCRE v8.02 for
Windows x64, following the same procedure as with Win32: cmake, and so on.
The compilation generates 91 warnings. All of them appear to be size
conversion warnings, about a potential loss of data converting from __int64 to
int, and other similar issues. Examples:
warning C4244: 'function' : conversion from '__int64' to 'int', possible loss
of data c:\dinoch\dev\pcre\pcre-8.02\src\pcre_dfa_exec.c 2398
or
warning C4267: '=' : conversion from 'size_t' to 'int', possible loss of data
c:\dinoch\dev\pcre\pcre-8.02\src\pcreposix.c 339
The basic problem is that strlen() on x86-64 returns a size_t, and in the code,
the result of strlen() is often assigned to int.
Now, I understand that in all likelihood, strings will not exceed 2^32
characters in length, and actual data loss is highly unlikely. Still it would
be nice to get a warning-free compile on x86-64.
So the request is, fixup PCRE to eliminate the compile-time warnings on Windows
x86-64.
If you need access to a Windows machine to assist in doing this, I'd be glad to
cooperate.
--
Configure bugmail:
http://bugs.exim.org/userprefs.cgi?tab=email