diff options
author | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2015-08-18 07:16:24 +0000 |
---|---|---|
committer | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2015-08-18 07:16:24 +0000 |
commit | 0eca22904bf18bdf864a7bb8dbce37ef14d35582 (patch) | |
tree | e5132713003f7f3e010d9609b301086615f66012 | |
parent | a36367533c611b28c7391e79048879ecc5456fd3 (diff) | |
download | ruby-0eca22904bf18bdf864a7bb8dbce37ef14d35582.tar.gz |
ruby.h: define RClass only in C
* include/ruby/ruby.h (RClass): define only in C, `__attribute__`
between `struct` and the name can't compile with g++.
[ruby-core:70297] [Bug #11426]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51623 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r-- | ChangeLog | 7 | ||||
-rw-r--r-- | include/ruby/ruby.h | 6 |
2 files changed, 8 insertions, 5 deletions
@@ -1,7 +1,8 @@ -Tue Aug 18 11:40:51 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> +Tue Aug 18 16:16:21 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> - * include/ruby/ruby.h (RClass): move `__attribute__` after the - keyword `struct` for g++. [ruby-core:70297] [Bug #11426] + * include/ruby/ruby.h (RClass): define only in C, `__attribute__` + between `struct` and the name can't compile with g++. + [ruby-core:70297] [Bug #11426] Mon Aug 17 20:56:36 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> diff --git a/include/ruby/ruby.h b/include/ruby/ruby.h index cbd4044d75..f0d53b3e11 100644 --- a/include/ruby/ruby.h +++ b/include/ruby/ruby.h @@ -825,10 +825,12 @@ struct RObject { ROBJECT(o)->as.heap.iv_index_tbl) #define RClass RClassDeprecated -struct DEPRECATED_TYPE(("RClass is internal use only"), -RClass { +#ifndef __cplusplus +DEPRECATED_TYPE(("RClass is internal use only"), +struct RClass { struct RBasic basic; }); +#endif #define RCLASS_SUPER(c) rb_class_get_superclass(c) #define RMODULE_IV_TBL(m) RCLASS_IV_TBL(m) #define RMODULE_CONST_TBL(m) RCLASS_CONST_TBL(m) |