LLVM's typedefs for int32_t etc. under MSVC (in Support/DataTypes.h) conflict with those used by other third-party libraries. Instead of these: #ifdef _MSC_VER typedef __int64 int64_t; typedef unsigned __int64 uint64_t; typedef signed int int32_t; typedef unsigned int uint32_t; typedef short int16_t; typedef unsigned short uint16_t; typedef signed char int8_t; typedef unsigned char uint8_t; typedef signed int ssize_t; #endif it would be preferable to use these: typedef __int8 int8_t; typedef __int16 int16_t; typedef __int32 int32_t; typedef __int64 int64_t; typedef unsigned __int8 uint8_t; typedef unsigned __int16 uint16_t; typedef unsigned __int32 uint32_t; typedef unsigned __int64 uint64_t; Does anyone feel strongly about this? - Mark Leone -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20090108/36618bd6/attachment.html>
On Jan 8, 2009, at 1:35 PM, Mark Leone wrote:> LLVM's typedefs for int32_t etc. under MSVC (in Support/DataTypes.h) > conflict with those used by other third-party libraries. Instead of > these: > > #ifdef _MSC_VER > typedef __int64 int64_t; > typedef unsigned __int64 uint64_t; > typedef signed int int32_t; > typedef unsigned int uint32_t; > typedef short int16_t; > typedef unsigned short uint16_t; > typedef signed char int8_t; > typedef unsigned char uint8_t; > typedef signed int ssize_t; > #endif > > it would be preferable to use these: > > typedef __int8 int8_t; > typedef __int16 int16_t; > typedef __int32 int32_t; > typedef __int64 int64_t; > typedef unsigned __int8 uint8_t; > typedef unsigned __int16 uint16_t; > typedef unsigned __int32 uint32_t; > typedef unsigned __int64 uint64_t; > > Does anyone feel strongly about this?That sounds fine to me, -Chris