summaryrefslogtreecommitdiff
path: root/internal.h
diff options
context:
space:
mode:
authornobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2013-09-04 07:28:28 +0000
committernobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2013-09-04 07:28:28 +0000
commitcb3c8119a72d88421f05812b47177a8691d2b454 (patch)
tree5dae7cc51dfd149c01653ca312a2cf06795d21c3 /internal.h
parenteeb39e0152f94aaaf3b503f6719ce5b6c50a1481 (diff)
internal.h: fix vm_state_version_t
* internal.h (vm_state_version_t): use uint64_t when it is larger than LONG_LONG, and fallback to unsigned long. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42826 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'internal.h')
-rw-r--r--internal.h8
1 files changed, 5 insertions, 3 deletions
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;