Patch 1728247 added to types.h: #ifndef HAVE_INTMAX_T #ifdef SIZEOF_LONG_LONG typedef long long int intmax_t; #else typedef long intmax_t; #endif #endif
#ifndef HAVE_INTMAX_T #ifdef SIZEOF_LONG_LONG typedef unsigned long long int uintmax_t; #else typedef unsigned long uintmax_t; #endif #endif This will not compile with MSVC 6 as *long long* and *unsigned long long* are not supported. __int64 should be used under Windows. __int64 was is used in snmp_client.c using an #ifdef for WIN32. I think MSVC 7 may support long long, but we are maintaining support for MSVC 6. I thought that the correct way to fix this was to change: typedef long long intmax_t; typedef unsigned long long uintmax_t; to: typedef int64_t intmax_t; typedef uint64_t uintmax_t; The Windows net-snmp-config.h defines HAVE_UINT64_T, and also has a typedef of: typedef unsigned __int64 uint64_t; Using int64_t and uint64_t compiles fine with Windows and Linux. Is this the preferred fix or should we just #ifdef Windows again? Alex ------------------------------------------------------------------------- This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ _______________________________________________ Net-snmp-coders mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/net-snmp-coders
