aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog9
-rw-r--r--gc.c11
-rw-r--r--include/ruby/ruby.h2
3 files changed, 22 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index b302612f76..8812f9a231 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,12 @@
+Tue May 19 11:18:46 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
+
+ * include/ruby/ruby.h (rb_data_typed_object_alloc),
+ (rb_data_object_alloc): add old names for source level backward
+ compatibilities.
+
+ * gc.c (rb_data_object_alloc, rb_data_typed_object_alloc): add
+ aliases for binary level backward compatibilities.
+
Tue May 19 09:54:44 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* include/ruby/ruby.h (Data_Make_Struct0): needs function pointer
diff --git a/gc.c b/gc.c
index 830d9d8046..1244c2f582 100644
--- a/gc.c
+++ b/gc.c
@@ -1812,6 +1812,12 @@ rb_data_object_wrap(VALUE klass, void *datap, RUBY_DATA_FUNC dmark, RUBY_DATA_FU
return newobj_of(klass, T_DATA, (VALUE)dmark, (VALUE)dfree, (VALUE)datap);
}
+#undef rb_data_object_alloc
+RUBY_ALIAS_FUNCTION(rb_data_object_alloc(VALUE klass, void *datap,
+ RUBY_DATA_FUNC dmark, RUBY_DATA_FUNC dfree),
+ rb_data_object_wrap, (klass, datap, dmark, dfree));
+
+
VALUE
rb_data_object_zalloc(VALUE klass, size_t size, RUBY_DATA_FUNC dmark, RUBY_DATA_FUNC dfree)
{
@@ -1827,6 +1833,11 @@ rb_data_typed_object_wrap(VALUE klass, void *datap, const rb_data_type_t *type)
return newobj_of(klass, T_DATA | (type->flags & ~T_MASK), (VALUE)type, (VALUE)1, (VALUE)datap);
}
+#undef rb_data_typed_object_alloc
+RUBY_ALIAS_FUNCTION(rb_data_typed_object_alloc(VALUE klass, void *datap,
+ const rb_data_type_t *type),
+ rb_data_typed_object_wrap, (klass, datap, type));
+
VALUE
rb_data_typed_object_zalloc(VALUE klass, size_t size, const rb_data_type_t *type)
{
diff --git a/include/ruby/ruby.h b/include/ruby/ruby.h
index 4433dbcbbd..f26dac5ce1 100644
--- a/include/ruby/ruby.h
+++ b/include/ruby/ruby.h
@@ -1010,6 +1010,8 @@ typedef void (*RUBY_DATA_FUNC)(void*);
# define RUBY_UNTYPED_DATA_WARNING 0
# endif
#endif
+#define rb_data_object_alloc rb_data_object_wrap
+#define rb_data_typed_object_alloc rb_data_typed_object_wrap
VALUE rb_data_object_wrap(VALUE,void*,RUBY_DATA_FUNC,RUBY_DATA_FUNC);
VALUE rb_data_object_zalloc(VALUE,size_t,RUBY_DATA_FUNC,RUBY_DATA_FUNC);
VALUE rb_data_typed_object_wrap(VALUE klass, void *datap, const rb_data_type_t *);