[前][次][番号順一覧][スレッド一覧]

ruby-changes:7247

From: akr <ko1@a...>
Date: Fri, 22 Aug 2008 05:33:11 +0900 (JST)
Subject: [ruby-changes:7247] Ruby:r18766 (trunk): * include/ruby/ruby.h (INT2NUM): just use a simple macro on LP64.

akr	2008-08-22 05:30:06 +0900 (Fri, 22 Aug 2008)

  New Revision: 18766

  http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=18766

  Log:
    * include/ruby/ruby.h (INT2NUM): just use a simple macro on LP64.
      (UINT2NUM): ditto.

  Modified files:
    trunk/ChangeLog
    trunk/include/ruby/ruby.h

Index: include/ruby/ruby.h
===================================================================
--- include/ruby/ruby.h	(revision 18765)
+++ include/ruby/ruby.h	(revision 18766)
@@ -451,31 +451,36 @@
 
 VALUE rb_uint2big(VALUE);
 VALUE rb_int2big(SIGNED_VALUE);
+
+#if SIZEOF_INT < SIZEOF_VALUE
+# define INT2NUM(v) INT2FIX((int)(v))
+# define UINT2NUM(v) LONG2FIX((unsigned int)(v))
+#else
 static inline VALUE
 INT2NUM(int v)
 {
-# if SIZEOF_VALUE <= SIZEOF_INT
     if (!FIXABLE(v))
 	return rb_int2big(v);
-# endif
     return INT2FIX(v);
 }
+
 static inline VALUE
-LONG2NUM(long v)
-{
-    if (FIXABLE(v)) return LONG2FIX(v);
-    return rb_int2big(v);
-}
-static inline VALUE
 UINT2NUM(unsigned int v)
 {
-# if SIZEOF_VALUE <= SIZEOF_INT
     if (!POSFIXABLE(v))
 	return rb_uint2big(v);
-# endif
     return LONG2FIX(v);
 }
+#endif
+
 static inline VALUE
+LONG2NUM(long v)
+{
+    if (FIXABLE(v)) return LONG2FIX(v);
+    return rb_int2big(v);
+}
+
+static inline VALUE
 ULONG2NUM(unsigned long v)
 {
     if (POSFIXABLE(v)) return LONG2FIX(v);
Index: ChangeLog
===================================================================
--- ChangeLog	(revision 18765)
+++ ChangeLog	(revision 18766)
@@ -1,3 +1,8 @@
+Fri Aug 22 05:29:17 2008  Tanaka Akira  <akr@f...>
+
+	* include/ruby/ruby.h (INT2NUM): just use a simple macro on LP64.
+	  (UINT2NUM): ditto.
+
 Fri Aug 22 05:10:07 2008  Tanaka Akira  <akr@f...>
 
 	* io.c (rb_file_open_generic): take filename as a VALUE.

--
ML: ruby-changes@q...
Info: http://www.atdot.net/~ko1/quickml/

[前][次][番号順一覧][スレッド一覧]