summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/ruby/util.h18
1 files changed, 16 insertions, 2 deletions
diff --git a/include/ruby/util.h b/include/ruby/util.h
index febd87d3e5..1c52c576da 100644
--- a/include/ruby/util.h
+++ b/include/ruby/util.h
@@ -40,9 +40,9 @@ extern "C" {
#endif
#endif
-#define scan_oct ruby_scan_oct
+#define scan_oct(s,l,e) (int)ruby_scan_oct(s,l,e)
unsigned long ruby_scan_oct(const char *, size_t, size_t *);
-#define scan_hex ruby_scan_hex
+#define scan_hex(s,l,e) (int)ruby_scan_hex(s,l,e)
unsigned long ruby_scan_hex(const char *, size_t, size_t *);
#if defined(__CYGWIN32__) || defined(_WIN32)
@@ -70,6 +70,20 @@ double ruby_strtod(const char *, char **);
#undef strtod
#define strtod(s,e) ruby_strtod(s,e)
+#if defined _MSC_VER && _MSC_VER >= 1300
+#pragma warning(push)
+#pragma warning(disable:4723)
+#endif
+static inline double
+ruby_div0(double x)
+{
+ double t = 0.0;
+ return x / t;
+}
+#if defined _MSC_VER && _MSC_VER >= 1300
+#pragma warning(pop)
+#endif
+
void ruby_each_words(const char *, void (*)(const char*, int, void*), void *);
#if defined(__cplusplus)