Bug #15300

rb_frame_method_id_and_class deprecated in 2.6

Added by paddor (Patrik Wenger) almost 2 years ago. Updated over 1 year ago.

Target version:
ruby -v:
ruby 2.6.0preview3 (2018-11-06 trunk 65578) [x86_64-linux]


Coming from jasonroelofs/rice#105, related to #14192.

As far as I understand, this API has been deprecated, thus Rice won't compile anymore.

detail/method_data.cpp:19:48: error: ‘int rb_frame_method_id_and_class(ID*, VALUE*)’ is deprecated [-Werror=deprecated-declarations]
   if (!rb_frame_method_id_and_class(&id, &klass))
In file included from /home/p/.rubies/ruby-2.6.0-preview3/include/ruby-2.6.0/ruby/ruby.h:24:0,
                 from /home/p/.rubies/ruby-2.6.0-preview3/include/ruby-2.6.0/ruby.h:33,
                 from detail/ruby.hpp:19,
                 from detail/method_data.hpp:4,
                 from detail/method_data.cpp:1:
/home/p/.rubies/ruby-2.6.0-preview3/include/ruby-2.6.0/ruby/backward.h:53:16: note: declared here
 DEPRECATED(int rb_frame_method_id_and_class(ID *idp, VALUE *klassp));

Back in December 2017, there was no replacement API fixed yet.
ko1 (Koichi Sasada), are there any updates to this?

Updated by k0kubun (Takashi Kokubun) over 1 year ago

  • Assignee set to ko1 (Koichi Sasada)

Updated by ko1 (Koichi Sasada) over 1 year ago

  • Status changed from Open to Closed

Applied in changeset trunk|r66522.

remove "deprecated" for rb_frame_method_id_and_class [Bug #15300]

  • include/ruby/backward.h (rb_frame_method_id_and_class): we had labeled rb_frame_method_id_and_class() as deprecated because MRI internal doesn't use it, but we found there are user of this API in external C-extensions. Now we don't have proper alternative API and no time to make alternative API, so I remove "deprecated" label. [Bug #15300]

Updated by ko1 (Koichi Sasada) over 1 year ago

sorry for long absent. I remove "deprecated" for this API. Could you check it?


Updated by paddor (Patrik Wenger) over 1 year ago

I just noticed that Rice works perfectly under Ruby 2.6.2! Thank you so much.

Also available in: Atom PDF