From a41b9d8e4291c0bfeba1657e219affcbeeb456b5 Mon Sep 17 00:00:00 2001
From: Eric Wong <e@80x24.org>
Date: Tue, 3 Nov 2015 03:42:19 +0000
Subject: [PATCH] include/ruby/ruby.h (struct RObject): hide iv_index_tbl type

This is an implementation detail and should not be exposed to
C extension users.  We may change this to id_table soon; and
id_table should not be exposed as a public API.

It is highly unlikely any existing C extensions require this;
so the risk of breakage is very low.  Ideally, all of RObject
could be hidden.
---
 include/ruby/ruby.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/include/ruby/ruby.h b/include/ruby/ruby.h
index 52f27a7..6486344 100644
--- a/include/ruby/ruby.h
+++ b/include/ruby/ruby.h
@@ -903,7 +903,7 @@ struct RObject {
 	struct {
 	    long numiv; /* only uses 32-bits */
 	    VALUE *ivptr;
-            struct st_table *iv_index_tbl; /* shortcut for RCLASS_IV_INDEX_TBL(rb_obj_class(obj)) */
+            void *iv_index_tbl; /* shortcut for RCLASS_IV_INDEX_TBL(rb_obj_class(obj)) */
 	} heap;
 	VALUE ary[ROBJECT_EMBED_LEN_MAX];
     } as;
-- 
EW

