summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--include/ruby/ruby.h5
2 files changed, 9 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 017dbc1d93..909706d304 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+Thu Apr 1 09:54:27 2010 Nobuyoshi Nakada <nobu@ruby-lang.org>
+
+ * include/ruby/ruby.h (RUBY_{DEFAULT,NEVER}_FREE): added.
+ [ruby-dev:40889]
+
Thu Apr 1 04:55:08 2010 Tanaka Akira <akr@fsij.org>
* time.c (rb_big_abs_find_minbit): fix handling the last word.
diff --git a/include/ruby/ruby.h b/include/ruby/ruby.h
index 71205dcf05..26bd2ee065 100644
--- a/include/ruby/ruby.h
+++ b/include/ruby/ruby.h
@@ -757,7 +757,10 @@ VALUE rb_data_typed_object_alloc(VALUE klass, void *datap, const rb_data_type_t
int rb_typeddata_is_kind_of(VALUE, const rb_data_type_t *);
void *rb_check_typeddata(VALUE, const rb_data_type_t *);
#define Check_TypedStruct(v,t) rb_check_typeddata((VALUE)(v),t)
-#define RUBY_TYPED_DEFAULT_FREE ((void (*)(void *))-1)
+#define RUBY_DEFAULT_FREE ((RUBY_DATA_FUNC)-1)
+#define RUBY_NEVER_FREE ((RUBY_DATA_FUNC)0)
+#define RUBY_TYPED_DEFAULT_FREE RUBY_DEFAULT_FREE
+#define RUBY_TYPED_NEVER_FREE RUBY_NEVER_FREE
#define Data_Wrap_Struct(klass,mark,free,sval)\
rb_data_object_alloc(klass,sval,(RUBY_DATA_FUNC)mark,(RUBY_DATA_FUNC)free)