http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46464
Summary: libiberty pointer size assumptions for Win64 incorrect
Product: gcc
Version: unknown
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: other
AssignedTo: [email protected]
ReportedBy: [email protected]
Target: x86_64-*-mingw32
md5.h incorrectly assumes the size of a pointer to be a long int. On Win64,
this isn't the case. There was discussion and a proposed patch here:
http://gcc.gnu.org/ml/gcc-patches/2009-03/msg00638.html
And a ping here:
http://gcc.gnu.org/ml/gcc-patches/2009-09/msg01515.html
And then the issue died.
The proposed patch does an ifdef on _WIN64. There may be a more elegant
solution, such as using a configure test to see if uintptr_t is defined, and to
use that. I really don't know. I just don't want the issue to slip away
untouched.
Also note that to the best of my knowledge, it appears that the issue has not
yet been addressed in the year and two months since that last ping. If it has,
then I apologize for the bug report.
One more thing. I couldn't find libiberty in the list of components to write
the bug against, so I wrote it against "other".