aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--internal.h8
2 files changed, 10 insertions, 3 deletions
diff --git a/ChangeLog b/ChangeLog
index 583a288695..b3bd45cc02 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+Wed Sep 4 16:28:14 2013 Nobuyoshi Nakada <nobu@ruby-lang.org>
+
+ * internal.h (vm_state_version_t): use uint64_t when it is larger than
+ LONG_LONG, and fallback to unsigned long.
+
Wed Sep 4 15:37:05 2013 NARUSE, Yui <naruse@ruby-lang.org>
* enc/trans/utf8_mac-tbl.rb: fix r42789.
diff --git a/internal.h b/internal.h
index 7d51334043..0a5f5a70cc 100644
--- a/internal.h
+++ b/internal.h
@@ -244,10 +244,12 @@ struct rb_subclass_entry {
rb_subclass_entry_t *next;
};
-#if HAVE_UINT64_T
- typedef uint64_t vm_state_version_t;
+#if defined(HAVE_UINT64_T) && (!defined(HAVE_LONG_LONG) || SIZEOF_UINT64_T > SIZEOF_LONG_LONG)
+typedef uint64_t vm_state_version_t;
+#elif defined(HAVE_LONG_LONG)
+typedef unsigned LONG_LONG vm_state_version_t;
#else
- typedef unsigned long long vm_state_version_t;
+typedef unsigned long vm_state_version_t;
#endif
struct rb_method_entry_struct;