summaryrefslogtreecommitdiff
path: root/internal.h
diff options
context:
space:
mode:
authorKoichi Sasada <ko1@atdot.net>2019-08-09 11:00:34 +0900
committerKoichi Sasada <ko1@atdot.net>2019-08-09 11:05:11 +0900
commit71efad1ed391ee0c5398a76306fdbaaadd4dc52e (patch)
treed560b4a717ee7d15d23dc4ea02b1708f7d1d71ea /internal.h
parentc7acb37248d4cef76647f8bc7ebd7dc291d9a853 (diff)
introduce RCLASS_CLONED flag for inline cache.
Methods on duplicated class/module refer same constant inline cache (IC). Constant access lookup should be done for cloned class/modules but inline cache doesn't check it. To check it, this patch introduce new RCLASS_CLONED flag which are set when if class/module is cloned (both orig and dst). [Bug #15877]
Diffstat (limited to 'internal.h')
-rw-r--r--internal.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/internal.h b/internal.h
index bd7162e76c..c502fe076c 100644
--- a/internal.h
+++ b/internal.h
@@ -1056,6 +1056,7 @@ int rb_singleton_class_internal_p(VALUE sklass);
#define RCLASS_REFINED_CLASS(c) (RCLASS_EXT(c)->refined_class)
#define RCLASS_SERIAL(c) (RCLASS_EXT(c)->class_serial)
+#define RCLASS_CLONED FL_USER6
#define RICLASS_IS_ORIGIN FL_USER5
static inline void