[#10853] Why limit class def to a constant or colon node? — Charles Oliver Nutter <charles.nutter@...>

Is there a historical reason why I can't do something like these:

12 messages 2007/04/03

[#10933] Cannot build with extra library path if previous version already installed — <noreply@...>

Bugs item #10140, was opened at 2007-04-16 17:32

10 messages 2007/04/16
[#10934] Re: [ ruby-Bugs-10140 ] Cannot build with extra library path if previous version already installed — nobu@... 2007/04/16

Hi,

[#10960] Re: [ ruby-Bugs-10140 ] Cannot build with extra library path if previous version already installed — "Michal Suchanek" <hramrach@...> 2007/04/18

On 4/16/07, nobu@ruby-lang.org <nobu@ruby-lang.org> wrote:

[#10967] Re: [ ruby-Bugs-10140 ] Cannot build with extra library path if previous version already installed — Nobuyoshi Nakada <nobu@...> 2007/04/19

Hi,

[#10970] Re: [ ruby-Bugs-10140 ] Cannot build with extra library path if previous version already installed — "Michal Suchanek" <hramrach@...> 2007/04/19

On 4/19/07, Nobuyoshi Nakada <nobu@ruby-lang.org> wrote:> Hi,>> At Wed, 18 Apr 2007 20:21:44 +0900,> Michal Suchanek wrote in [ruby-core:10960]:> > Yes. And this should also apply to extensions. The mkmf tests are now> > fine but the extension is linked with -L/sw/lib before -L../..>> Indeed.>>> Index: configure.in> ===================================================================> --- configure.in (revision 12191)> +++ configure.in (working copy)> @@ -1385,5 +1385,4 @@ if test "$enable_rpath" = yes; then> fi>> -LDFLAGS="-L. $LDFLAGS"> AC_SUBST(ARCHFILE)>This would break the previous fix so I did not even try to apply this ^

[#11003] miniruby loads extensions from already installed ruby — <noreply@...>

Bugs item #10303, was opened at 2007-04-23 10:44

10 messages 2007/04/23

[#11025] gsub with backslash characters in replacement string — "Adam Bozanich" <adam.boz@...>

Hello, spotted this one the other day:

10 messages 2007/04/26

Fw: Object#method and super. Is this a bug?

From: Calamitas <calamitates@...>
Date: 2007-04-22 21:45:45 UTC
List: ruby-core #11001
Forwarding this here too. Note that 1.9 doesn't seem to exhibit the
same problem.

Peter

---------- Forwarded message ----------
From: Calamitas <calamitates@gmail.com>
Date: Apr 22, 2007 11:39 PM
Subject: Re: Object#method and super. Is this a bug?
To: ruby-talk@ruby-lang.org


On 4/21/07, apefan@dodgeit.com <apefan@dodgeit.com> wrote:
> Baz#boo and Baz.new.method(:boo).call dosn't produce the same result.
> Does this surprise anyone?

This got broken in 1.8.3. This is indirectly caused by the patch in
http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-core/3672,
namely when search_iclass actually got removed afterwards. The patch
below should fix things again. I hope it doesn't break anything else.

Peter

PS: Matz, should rb_class_name really call rb_class_real? I would have
expected rb_class_name to give the module name for ICLASSes, but it
doesn't so I needed to change method_inspect as well.

--- eval.c.old  2007-04-22 22:59:13.000000000 +0200
+++ eval.c      2007-04-22 23:03:22.000000000 +0200
@@ -8966,7 +8966,6 @@
           (FL_TEST(rklass, FL_SINGLETON) || TYPE(rklass) == T_ICLASS)) {
        rklass = RCLASS(rklass)->super;
     }
-    if (TYPE(klass) == T_ICLASS) klass = RBASIC(klass)->klass;
     method = Data_Make_Struct(mklass, struct METHOD, bm_mark, free, data);
     data->klass = klass;
     data->recv = obj;
@@ -9410,7 +9409,7 @@
     VALUE method;
 {
     struct METHOD *data;
-    VALUE str;
+    VALUE str, klass;
     const char *s;
     char *sharp = "#";

@@ -9441,8 +9440,12 @@
     else {
        rb_str_buf_cat2(str, rb_class2name(data->rklass));
        if (data->rklass != data->klass) {
+            klass = data->klass;
+            if (TYPE(klass) == T_ICLASS) {
+              klass = RBASIC(klass)->klass;
+            }
            rb_str_buf_cat2(str, "(");
-           rb_str_buf_cat2(str, rb_class2name(data->klass));
+            rb_str_buf_cat2(str, rb_class2name(klass));
            rb_str_buf_cat2(str, ")");
        }
     }

In This Thread

Prev Next