more fixes to MSC

git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@8515 626c5289-ae23-0410-ae9c-e8d60b6d4f22
This commit is contained in:
Marcelo Matus 2006-01-22 07:00:32 +00:00
commit 0ee6a0446a
6 changed files with 21 additions and 8 deletions

View file

@ -159,7 +159,7 @@ SWIG_From_dec(long long)(long long value)
} else { } else {
char temp[256]; char temp[256];
SV *obj = sv_newmortal(); SV *obj = sv_newmortal();
snprintf(temp, sizeof(temp),"%lld", value); sprintf(temp, "%lld", value);
sv_setpv(obj, temp); sv_setpv(obj, temp);
return obj; return obj;
} }
@ -222,7 +222,7 @@ SWIG_From_dec(unsigned long long)(unsigned long long value)
} else { } else {
char temp[256]; char temp[256];
SV *obj = sv_newmortal(); SV *obj = sv_newmortal();
snprintf(temp, sizeof(temp),"%llu", value); sprintf(temp, "%llu", value);
sv_setpv(obj, temp); sv_setpv(obj, temp);
return obj; return obj;
} }

View file

@ -176,6 +176,10 @@ typedef int (*SwigMagicFuncHack)(struct interpreter *, SV *, MAGIC *);
# endif # endif
#endif #endif
#ifndef SvUOK
# define SvUOK(sv) SvIOK_UV(sv)
#endif
#include <stdlib.h> #include <stdlib.h>
SWIGRUNTIME const char * SWIGRUNTIME const char *

View file

@ -285,7 +285,7 @@ namespace swig
return swig::as<T>(item, true); return swig::as<T>(item, true);
} catch (std::exception& e) { } catch (std::exception& e) {
char msg[1024]; char msg[1024];
snprintf(msg, sizeof(msg), "in sequence element %d ", _index); sprintf(msg, "in sequence element %d ", _index);
if (!PyErr_Occurred()) { if (!PyErr_Occurred()) {
%type_error(swig::type_name<T>()); %type_error(swig::type_name<T>());
} }
@ -485,7 +485,7 @@ namespace swig
if (!swig::check<value_type>(item)) { if (!swig::check<value_type>(item)) {
if (set_err) { if (set_err) {
char msg[1024]; char msg[1024];
snprintf(msg, sizeof(msg), "in sequence element %d of type %s", i, swig::type_name<value_type>()); sprintf(msg, "in sequence element %d", i);
SWIG_Error(SWIG_RuntimeError, msg); SWIG_Error(SWIG_RuntimeError, msg);
} }
return false; return false;

View file

@ -4,7 +4,10 @@
/* Add PyOS_snprintf for old Pythons */ /* Add PyOS_snprintf for old Pythons */
#if PY_VERSION_HEX < 0x02020000 #if PY_VERSION_HEX < 0x02020000
#define PyOS_snprintf snprintf #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(_WATCOM)
# define PyOS_snprintf _snprintf
#else
# define PyOS_snprintf snprintf
#endif #endif
/* A crude PyString_FromFormat implementation for old Pythons */ /* A crude PyString_FromFormat implementation for old Pythons */

View file

@ -61,7 +61,7 @@ SWIG_From_dec(unsigned long)(unsigned long value)
return SWIG_From(long)(%numeric_cast(value, long)); return SWIG_From(long)(%numeric_cast(value, long));
} else { } else {
char temp[256]; char temp[256];
snprintf(temp, sizeof(temp),"%lu", value); sprintf(temp, "%lu", value);
return Tcl_NewStringObj(temp,-1); return Tcl_NewStringObj(temp,-1);
} }
} }
@ -113,7 +113,7 @@ SWIG_From_dec(long long)(long long value)
return SWIG_From(long)(%numeric_cast(value,long)); return SWIG_From(long)(%numeric_cast(value,long));
} else { } else {
char temp[256]; char temp[256];
snprintf(temp, sizeof(temp),"%lld", value); sprintf(temp, "%lld", value);
return Tcl_NewStringObj(temp,-1); return Tcl_NewStringObj(temp,-1);
} }
} }
@ -162,7 +162,7 @@ SWIG_From_dec(unsigned long long)(unsigned long long value)
return SWIG_From(long long)(%numeric_cast(value, long long)); return SWIG_From(long long)(%numeric_cast(value, long long));
} else { } else {
char temp[256]; char temp[256];
snprintf(temp, sizeof(temp),"%llu", value); sprintf(temp, "%llu", value);
return Tcl_NewStringObj(temp,-1); return Tcl_NewStringObj(temp,-1);
} }
} }

View file

@ -343,15 +343,21 @@
%fragment("<stdio.h>","header") %{ %fragment("<stdio.h>","header") %{
#include <stdio.h> #include <stdio.h>
#if defined(_MSC_VER) || defined(__BORLANDC__) || defined(_WATCOM) #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(_WATCOM)
# ifndef snprintf
# define snprintf _snprintf # define snprintf _snprintf
# endif
#endif #endif
%} %}
%fragment("<stdlib.h>","header") %{ %fragment("<stdlib.h>","header") %{
#include <stdlib.h> #include <stdlib.h>
#ifdef _MSC_VER #ifdef _MSC_VER
# ifndef strtoull
# define strtoull _strtoui64 # define strtoull _strtoui64
# endif
# ifndef strtoll
# define strtoll _strtoi64 # define strtoll _strtoi64
# endif
#endif #endif
%} %}