diff options
-rw-r--r-- | ChangeLog | 8 | ||||
-rw-r--r-- | configure.in | 1 | ||||
-rw-r--r-- | defines.h | 4 | ||||
-rw-r--r-- | eval.c | 12 |
4 files changed, 21 insertions, 4 deletions
@@ -1,3 +1,11 @@ +Thu Jul 24 16:05:22 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net> + + * configure.in (AC_C_VOLATILE): check if volatile works. + + * defines.h (volatile): removed. + + * eval.c (rb_thread_group): Thread#group. [new] + Thu Jul 24 15:50:42 JST 2003 GOTOU Yuuzou <gotoyuzo@notwork.org> * ext/openssl/extconf.rb: add check for win32 OpenSSL libraries. diff --git a/configure.in b/configure.in index 96fabbf96d..ea0a466111 100644 --- a/configure.in +++ b/configure.in @@ -475,6 +475,7 @@ AC_C_BIGENDIAN AC_C_CONST AC_C_CHAR_UNSIGNED AC_C_INLINE +AC_C_VOLATILE AC_CACHE_CHECK(whether right shift preserve sign bit, rb_cv_rshift_sign, [AC_TRY_RUN([ @@ -12,10 +12,6 @@ #define RUBY -#if !defined(__STDC__) && !defined(_MSC_VER) -# define volatile -#endif - #ifdef __cplusplus # ifndef HAVE_PROTOTYPES # define HAVE_PROTOTYPES 1 @@ -9178,6 +9178,17 @@ rb_thread_abort_exc_set(thread, val) return val; } +VALUE +rb_thread_group(thread) + VALUE thread; +{ + VALUE group = rb_thread_check(thread)->thgroup; + if (!group) { + group = Qnil; + } + return group; +} + #define THREAD_ALLOC(th) do {\ th = ALLOC(struct thread);\ \ @@ -10024,6 +10035,7 @@ Init_Thread() rb_define_method(rb_cThread, "priority", rb_thread_priority, 0); rb_define_method(rb_cThread, "priority=", rb_thread_priority_set, 1); rb_define_method(rb_cThread, "safe_level", rb_thread_safe_level, 0); + rb_define_method(rb_cThread, "group", rb_thread_group, 0); rb_define_method(rb_cThread, "[]", rb_thread_aref, 1); rb_define_method(rb_cThread, "[]=", rb_thread_aset, 2); |