intern.h: deprecate disable and enable super

* include/ruby/intern.h (rb_disable_super, rb_enable_super): warn
  as deprecated at build time, instead of ignoring silently or
  warning at runtime only.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48283 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
nobu 2014-11-05 08:20:31 +00:00
Родитель 35656631d7
Коммит 4b8cb23a36
3 изменённых файлов: 18 добавлений и 17 удалений

Просмотреть файл

@ -1,3 +1,9 @@
Wed Nov 5 17:20:29 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* include/ruby/intern.h (rb_disable_super, rb_enable_super): warn
as deprecated at build time, instead of ignoring silently or
warning at runtime only.
Wed Nov 5 16:55:52 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* proc.c (rb_f_lambda): remove deprecated function, which has been

Просмотреть файл

@ -371,8 +371,18 @@ VALUE rb_f_exit(int, const VALUE*);
VALUE rb_f_abort(int, const VALUE*);
void rb_remove_method(VALUE, const char*);
void rb_remove_method_id(VALUE, ID);
#define rb_disable_super(klass, name) ((void)0)
#define rb_enable_super(klass, name) ((void)0)
DEPRECATED(static inline void rb_disable_super(void));
DEPRECATED(static inline void rb_enable_super(void));
static inline void rb_disable_super(void)
{
/* obsolete - no use */
}
static inline void rb_enable_super(void)
{
rb_warning("rb_enable_super() is obsolete");
}
#define rb_disable_super(klass, name) rb_disable_super()
#define rb_enable_super(klass, name) rb_enable_super()
#define HAVE_RB_DEFINE_ALLOC_FUNC 1
typedef VALUE (*rb_alloc_func_t)(VALUE);
void rb_define_alloc_func(VALUE, rb_alloc_func_t);

Просмотреть файл

@ -814,21 +814,6 @@ rb_mod_remove_method(int argc, VALUE *argv, VALUE mod)
return mod;
}
#undef rb_disable_super
#undef rb_enable_super
void
rb_disable_super(VALUE klass, const char *name)
{
/* obsolete - no use */
}
void
rb_enable_super(VALUE klass, const char *name)
{
rb_warning("rb_enable_super() is obsolete");
}
static void
rb_export_method(VALUE klass, ID name, rb_method_flag_t noex)
{