From 29cd2ded5c56c613fe7edbf818d7e6252c2025d9 Mon Sep 17 00:00:00 2001 From: nobu Date: Wed, 7 Oct 2015 12:40:34 +0000 Subject: ruby.h: RB_OBJ_FROZEN_RAW * include/ruby/ruby.h (RB_OBJ_FROZEN_RAW): split from RB_OBJ_FROZEN. valid only for non-special-const objects. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52075 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- include/ruby/ruby.h | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'include/ruby') diff --git a/include/ruby/ruby.h b/include/ruby/ruby.h index cdb87a7fe6..ac90cf1c2f 100644 --- a/include/ruby/ruby.h +++ b/include/ruby/ruby.h @@ -1312,7 +1312,8 @@ struct RStruct { (RB_OBJ_TAINTABLE(x) && RB_FL_ABLE(s)) ? \ RB_OBJ_INFECT_RAW(x, s) : 0) -#define RB_OBJ_FROZEN(x) (RB_FL_ABLE(x) ? !!(RBASIC(x)->flags&RUBY_FL_FREEZE) : 1) +#define RB_OBJ_FROZEN_RAW(x) (RBASIC(x)->flags&RUBY_FL_FREEZE) +#define RB_OBJ_FROZEN(x) (!RB_FL_ABLE(x) || RB_OBJ_FROZEN_RAW(x)) #define RB_OBJ_FREEZE_RAW(x) (RBASIC(x)->flags |= RUBY_FL_FREEZE) #define RB_OBJ_FREEZE(x) rb_obj_freeze_inline((VALUE)x) @@ -1339,6 +1340,7 @@ struct RStruct { #define OBJ_UNTRUST(x) RB_OBJ_UNTRUST(x) #define OBJ_INFECT_RAW(x,s) RB_OBJ_INFECT_RAW(x,s) #define OBJ_INFECT(x,s) RB_OBJ_INFECT(x,s) +#define OBJ_FROZEN_RAW(x) RB_OBJ_FROZEN_RAW(x) #define OBJ_FROZEN(x) RB_OBJ_FROZEN(x) #define OBJ_FREEZE_RAW(x) RB_OBJ_FREEZE_RAW(x) #define OBJ_FREEZE(x) RB_OBJ_FREEZE(x) -- cgit v1.2.3