Bug #3783
closedReplace Calls to rb_error_frozen() with rb_check_frozen()
Description
=begin
This patch replaces lines of the form:
if (OBJ_FROZEN(obj)) rb_error_frozen("object");
with:
rb_check_frozen(obj);
This is simpler, and produces error messages that are more consistent and precise.
(It feels wrong cluttering the bug tracker with things like this. Would they be better posted to the list or sent as a "pull" request?)
=end
Files
Updated by ko1 (Koichi Sasada) about 15 years ago
=begin
Hi,
(2010/09/02 13:20), Run Paint Run Run wrote:
This patch replaces lines of the form:
if (OBJ_FROZEN(obj)) rb_error_frozen("object");
with:
rb_check_frozen(obj);
This is simpler, and produces error messages that are more consistent and precise.(It feels wrong cluttering the bug tracker with things like this. Would they be better posted to the list or sent as a "pull" request?)
I agree about this modification.
How about to make a macro to avoid C function call overhead?
example:
#define RB_CHECK_FROZEN(obj)
(OBJ_FROZEN(obj) ? rb_error_frozen(rb_obj_classname(obj) : 0)
more simply:
#define rb_check_frozen(obj)
(OBJ_FROZEN(obj) ? rb_error_frozen(rb_obj_classname(obj) : 0)
--
// SASADA Koichi at atdot dot net
=end
Updated by nobu (Nobuyoshi Nakada) about 15 years ago
- Status changed from Open to Closed
- % Done changed from 0 to 100
=begin
This issue was solved with changeset r29583.
Run Paint, thank you for reporting this issue.
Your contribution to Ruby is greatly appreciated.
May Ruby be with you.
=end