えぐち@エスアンドイーです。

value.c で、

  void
  rb_const_set(klass, id, val)
      VALUE klass;
      ID id;
      VALUE val;
  {   
      return rb_shvar_set(klass, id, val);
  }

とあり、たしかに rb_shvar_set() は void ですが、
SunOS4 の cc はここで警告します。

多分 return は余計なんだと思います。
#もっと深遠な理由があるようにも見えますが。。。特に定数(仮称)廻り

	えぐち

Index: variable.c =================================================================== RCS file: /usr/home/eguchi/cvs.netlab.co.jp/ruby/variable.c,v retrieving revision 1.4 diff -d -u -6 -r1.4 variable.c --- variable.c 1999/11/17 07:30:36 1.4 +++ variable.c 1999/11/19 11:44:26 @@ -1260,13 +1260,13 @@ void rb_const_set(klass, id, val) VALUE klass; ID id; VALUE val; { - return rb_shvar_set(klass, id, val); + rb_shvar_set(klass, id, val); } void rb_shvar_assign(klass, id, val) VALUE klass; ID id; @@ -1328,13 +1328,13 @@ void rb_define_shvar(klass, name, val) VALUE klass; const char *name; VALUE val; { - return rb_define_const(klass, name, val); + rb_define_const(klass, name, val); } void rb_define_global_const(name, val) const char *name; VALUE val;