[#33948] Schedule for the 1.8.7 release — "Akinori MUSHA" <knu@...>
Hi, developers,
[#33955] --encoding affects script encoding — sheepman <sheepman@...>
こんばんは sheepman です。
なかだです。
[#33962] Ruby1.9.0でのインタプリタ組み込みについての質問 — Masayuki Yamaguchi <Yamaguchi.Masayuki@...>
山口と申します。
[#33966] Re: [ruby-cvs:22881] Ruby:r15644 (trunk): * test/ruby/test_m17n_comb.rb (TestM17NComb::test_str_chomp): test — Tanaka Akira <akr@...>
In article <200802291457.m1TEv6nh008515@ci.ruby-lang.org>,
まつもと ゆきひろです
[#33974] Test::Unit::Collector::Dirがtest_*.rb以外集めてくれない — "Ken Date" <itacchi@...>
こんにちは、伊達です。
[#33983] Re: [ruby-cvs:22913] Re: Ruby:r15674 (trunk): * gc.c (add_heap): sort heaps array in ascending order to use — Yukihiro Matsumoto <matz@...>
まつもと ゆきひろです
In article <E1JWAV5-0001MG-9W@x61.netlab.jp>,
[#34011] Should --verbose be equal to -v ? — Yugui <yugui@...>
Yuguiです。
まつもと ゆきひろです
西山和広です。
Yuguiです。
[#34020] MurmurHash problem — Nobuyoshi Nakada <nobu@...>
なかだです。
[#34030] uint32_t — KIMURA Koichi <kimura.koichi@...>
木村です。
[#34037] Ruby performance gains on SPARC — Yukihiro Matsumoto <matz@...>
まつもと ゆきひろです
[#34067] Array#take,take_while,drop,drop_whlie — "Yusuke ENDOH" <mame@...>
遠藤と申します。
[#34068] lgamma_r requires _REENTRANT on Solaris — "Yusuke ENDOH" <mame@...>
遠藤と申します。
[#34077] 異なるエンコーディングだと同じバイト列でも==にならない件 — rubikitch@...
るびきちです。
[#34086] extend spawn to change attributes of child process. — Tanaka Akira <akr@...>
spaen, system, exec, IO.popen で、起動する子プロセスの属性を
[#34093] 拡張ライブラリ初期化中でのmodule_eval — Kouhei Sutou <kou@...>
須藤です。
[#34095] (再送) Cygwin で Resolv.getaddress が失敗する — Kouhei Yanagita <yanagi@...>
こんにちは。柳田です。
こんばんは、植田と申します。
柳田です。
[#34105] rational.rb, complex.rb and mathn.rb — Tadayoshi Funaba <tadf@...>
rational と complex が組み込みになったことで、lib/mathn.rb の意義は薄
現時点で rational.rb と complex.rb を残しているのは、それが無難だから
で、かなり選択肢を絞った叩き台です。
けいじゅ@いしつかです.
原です。
> 私も Complex の組み込みは Rational とは比較にならないくらい、仕様が決め
まつもと ゆきひろです
> Mathモジュールは伝統的にlibmのラッパーであったので、それを逸
原です。
> (1) (-8)**Rational(1,2) は複素数1.0+1.7320508*i
[#34109] LP64: date.rb:321:in `convert': integer 86400000000000 too big to convert to `int' (RangeError) — Tanaka Akira <akr@...>
LP64 なマシンで test-all が動かなくなっています。
[#34144] [質問2点] C からの定数参照 & thread switching コストの低減 — Hidetoshi NAGAI <nagai@...>
永井@知能.九工大です.
[#34158] Complex組み込み — Masahiro TANAKA <masa16.tanaka@...>
Complexが組み込みになるそうですが、これはcomplex.rbを踏襲して、
原です。
> 今までの Complex は、complex.rb にほぼ残して、たとえば Rational 成分
原です。
> そうです。Complex が難しい、という話を書いておくと、
まつもと ゆきひろです
> |僕としては、/ 演算子の振舞いについて前向きに検討してほしいです。
まつもと ゆきひろです
> ふむ。では、/ のふるまいを
まつもと ゆきひろです
> |僕は、quo がいいと思います。
まつもと ゆきひろです
> となるようですが、別の実装として、
田中です。
> 最初に言っておきますが、気を悪くされたのならすみません。
村田です.
[#34159] ruby-trunk Marshal.dump bug — nagachika <rucila@...>
nagachika と申します。
[#34163] Array#shift/unshift の高速化 — wanabe <s.wanabe@...>
ワナベと申します。
[#34189] Re: [ruby-cvs:23106] Re: Ruby:r15866 (trunk): * numeric.c (num_quo): should convert its operand to Rational. — Tadayoshi Funaba <tadf@...>
間違って送ったので、再送。
> > > Log:
[ruby-dev:34040] Re: uint32_t
成瀬です。 U.Nakamura wrote: > In message "[ruby-dev:34032] Re: uint32_t" > on Mar.13,2008 17:30:41, <naruse@airemix.com> wrote: > | この時点では uint32_t でなく unsigned int なので実際に uint32_t になるのは r15760 ですね。 > | なにはともあれ r15762 でビルドは通るようになっていると思います。 > > ext/digest/defs.hでuint32_tをtypedefしようとしているせいで、 > inttypes.hがない環境ではビルドが通らないようになってますが :) > > これどうしましょうかね。 > uint8_tとuint64_t(可能なら)もrubyで用意するようにしてこの辺ま > るごと消すのがいいんですかね。 とりあえずこんな感じでどうでしょう。 -- NARUSE, Yui <naruse@airemix.com> DBDB A476 FDBD 9450 02CD 0EFC BCE3 C388 472E C1EA
Attachments (1)
--- configure.in (revision 15770)
+++ configure.in (working copy)
@@ -620,18 +620,39 @@ AC_CHECK_TYPES(struct timespec)
AC_CHECK_TYPE(fd_mask, [AC_DEFINE(HAVE_RB_FD_INIT, 1)])
-test ${rb_cv_type_uint32_t+set} && ac_cv_type_uint32_t=yes
-AC_CHECK_TYPE(uint32_t)
-if test ${ac_cv_type_uint32_t} != yes; then
- AC_CACHE_CHECK([unsigned 32bit int],
- rb_cv_type_uint32_t,
- [for type in short int long; do
- type="unsigned $type"
- AC_COMPILE_IFELSE(AC_LANG_BOOL_COMPILE_TRY([], [sizeof($type) == 4]),
- [rb_cv_type_uint32_t=$type; break], [])
- done])
- AC_DEFINE_UNQUOTED(uint32_t, $rb_cv_type_uint32_t)
+dnl RUBY_DEFINT [typename] [size] [signed]
+AC_DEFUN([RUBY_DEFINT], [dnl
+AC_CACHE_CHECK([for $1], [rb_cv_type_$1],
+[AC_COMPILE_IFELSE([AC_LANG_PROGRAM([AC_INCLUDES_DEFAULT([$4])
+typedef $1 t; int s = sizeof(t) == 42;])],
+ [rb_cv_type_$1=yes],
+ [case m4_bmatch([$2], [^[1-9][0-9]*$], $2, [$ac_cv_sizeof_]AS_TR_SH($2)) in
+ "1") rb_cv_type_$1="m4_if([$3], [], [signed ], [$3 ])char";;
+ "$ac_cv_sizeof_short") rb_cv_type_$1="m4_if([$3], [], [], [$3 ])short";;
+ "$ac_cv_sizeof_int") rb_cv_type_$1="m4_if([$3], [], [], [$3 ])int";;
+ "$ac_cv_sizeof_long") rb_cv_type_$1="m4_if([$3], [], [], [$3 ])long";;
+ "$ac_cv_sizeof_long_long") rb_cv_type_$1="m4_if([$3], [], [], [$3 ])long long";;
+ "$ac_cv_sizeof___int64") rb_cv_type_$1="m4_if([$3], [], [], [$3 ])__int64";;
+ *) rb_cv_type_$1=no;;
+ esac])])
+if test "${rb_cv_type_$1}" != no; then
+ AC_DEFINE([HAVE_]AS_TR_CPP($1), 1)
+ test "${rb_cv_type_$1}" = yes || AC_DEFINE_UNQUOTED($1, [$rb_cv_type_$1])
fi
+])
+
+RUBY_DEFINT(int8_t, 1)
+RUBY_DEFINT(uint8_t, 1, unsigned)
+RUBY_DEFINT(int16_t, 2)
+RUBY_DEFINT(uint16_t, 2, unsigned)
+RUBY_DEFINT(int32_t, 4)
+RUBY_DEFINT(uint32_t, 4, unsigned)
+RUBY_DEFINT(int64_t, 8)
+RUBY_DEFINT(uint64_t, 8, unsigned)
+RUBY_DEFINT(int128_t, 16)
+RUBY_DEFINT(uint128_t, 16, unsigned)
+RUBY_DEFINT(intptr_t, void*)
+RUBY_DEFINT(uintptr_t, void*, unsigned)
AC_CACHE_CHECK(for stack end address, rb_cv_stack_end_address,
[rb_cv_stack_end_address=no
--- ext/digest/defs.h (revision 15770)
+++ ext/digest/defs.h (working copy)
@@ -16,18 +16,4 @@
# define __END_DECLS
#endif
-#if defined(HAVE_INTTYPES_H)
-# include <inttypes.h>
-#elif !defined __CYGWIN__ || !defined __uint8_t_defined
- typedef unsigned char uint8_t;
- typedef unsigned int uint32_t;
-# if SIZEOF_LONG == 8
- typedef unsigned long uint64_t;
-# elif SIZEOF_LONG_LONG == 8
- typedef unsigned LONG_LONG uint64_t;
-# else
-# define NO_UINT64_T
-# endif
-#endif
-
#endif /* DEFS_H */
--- win32/Makefile.sub (revision 15770)
+++ win32/Makefile.sub (working copy)
@@ -368,6 +368,31 @@ $(CONFIG_H): $(MKFILES) $(srcdir)/win32/
#define uint32_t unsigned int
#define HAVE_STRUCT_STAT_ST_RDEV 1
#define HAVE_ST_RDEV 1
+#define int8_t signed char
+#define HAVE_UINT8_T 1
+#define uint8_t unsigned char
+#define HAVE_INT16_T 1
+#define int16_t short
+#define HAVE_UINT16_T 1
+#define uint16_t unsigned short
+#define HAVE_INT32_T 1
+#define int32_t int
+#define HAVE_UINT32_T 1
+#define uint32_t unsigned int
+#define HAVE_INT64_T HAVE_LONG_LONG
+#define int64_t __int64
+#define HAVE_UINT64_T HAVE_LONG_LONG
+#define uint64_t unsigned __int64
+#define HAVE_INTPTR_T 1
+#define HAVE_UINTPTR_T 1
+!if "$(ARCH)" == "x64" || "$(ARCH)" == "ia64"
+#define intptr_t __int64
+#define uintptr_t unsigned __int64
+!else
+#define intptr_t long
+#define uintptr_t unsigned long
+!endif
+#endif
#define GETGROUPS_T int
#define RETSIGTYPE void
!if !defined(WIN32_WCE)