[#10492] Ruby 1.8.6 preview3 has been released — "Akinori MUSHA" <knu@...>

Hi,

26 messages 2007/03/04
[#10500] Re: Ruby 1.8.6 preview3 has been released — Hugh Sasse <hgs@...> 2007/03/05

On Mon, 5 Mar 2007, Akinori MUSHA wrote:

[#10507] Dynamic Array#join with block — <noreply@...>

Patches item #9055, was opened at 2007-03-05 19:57

12 messages 2007/03/05
[#10520] Re: [ ruby-Patches-9055 ] Dynamic Array#join with block — Nobuyoshi Nakada <nobu@...> 2007/03/06

Hi,

[#10594] grave bug in 1.8.6's thread implementation — Sylvain Joyeux <sylvain.joyeux@...4x.org>

In ext/thread/thread.c, remove_one leaves the list in an inconsistent state.

15 messages 2007/03/14
[#10596] Re: [PATCH] grave bug in 1.8.6's thread implementation — MenTaLguY <mental@...> 2007/03/14

On Thu, 15 Mar 2007 00:15:57 +0900, Sylvain Joyeux <sylvain.joyeux@m4x.org> wrote:

[#10597] Re: [PATCH] grave bug in 1.8.6's thread implementation — Sylvain Joyeux <sylvain.joyeux@...4x.org> 2007/03/14

> > The fix is in thread-mutex-remove_one.diff.

[#10598] Re: [PATCH] grave bug in 1.8.6's thread implementation — MenTaLguY <mental@...> 2007/03/14

On Thu, 15 Mar 2007 01:19:04 +0900, Sylvain Joyeux <sylvain.joyeux@m4x.org> wrote:

[#10599] Re: [PATCH] grave bug in 1.8.6's thread implementation — Sylvain Joyeux <sylvain.joyeux@...4x.org> 2007/03/14

On Wednesday 14 March 2007 17:29, MenTaLguY wrote:

[#10600] Re: [PATCH] grave bug in 1.8.6's thread implementation — MenTaLguY <mental@...> 2007/03/14

On Thu, 15 Mar 2007 01:48:42 +0900, Sylvain Joyeux <sylvain.joyeux@m4x.org> wrote:

[#10615] Multiton in standard library — TRANS <transfire@...>

Hi--

16 messages 2007/03/15
[#10619] Re: Multiton in standard library — Tom Pollard <tomp@...> 2007/03/16

[#10620] Re: Multiton in standard library — TRANS <transfire@...> 2007/03/16

On 3/15/07, Tom Pollard <tomp@earthlink.net> wrote:

[#10646] Marshal.dump shouldn't complain about singletons if the _dump method is defined — <noreply@...>

Bugs item #9376, was opened at 2007-03-19 15:58

12 messages 2007/03/19
[#10647] Re: [ ruby-Bugs-9376 ] Marshal.dump shouldn't complain about singletons if the _dump method is defined — Urabe Shyouhei <shyouhei@...> 2007/03/19

noreply@rubyforge.org wrote:

[#10648] Re: [ ruby-Bugs-9376 ] Marshal.dump shouldn't complain about singletons if the _dump method is defined — Sylvain Joyeux <sylvain.joyeux@...4x.org> 2007/03/19

On Monday 19 March 2007 18:01, Urabe Shyouhei wrote:

[#10651] Re: [ ruby-Bugs-9376 ] Marshal.dump shouldn't complain about singletons if the _dump method is defined — Yukihiro Matsumoto <matz@...> 2007/03/19

Hi,

[#10665] Re: [ ruby-Bugs-9376 ] Marshal.dump shouldn't complain about singletons if the _dump method is defined — "Chris Carter" <cdcarter@...> 2007/03/20

On 3/19/07, Yukihiro Matsumoto <matz@ruby-lang.org> wrote:

[#10712] Ruby Method Signatures (was Re: Multiton in standard library) — "Rick DeNatale" <rick.denatale@...>

On 3/19/07, TRANS <transfire@gmail.com> wrote:

10 messages 2007/03/21
[#10715] Re: Ruby Method Signatures (was Re: Multiton in standard library) — Jos Backus <jos@...> 2007/03/22

On 3/19/07, TRANS <transfire@gmail.com> wrote:

[#10798] Virtual classes and 'real' classes -- why? — "John Lam (CLR)" <jflam@...>

I was wondering if someone could help me understand why there's a parallel =

12 messages 2007/03/28
[#10799] Re: Virtual classes and 'real' classes -- why? — MenTaLguY <mental@...> 2007/03/28

On Thu, 29 Mar 2007 04:44:16 +0900, "John Lam (CLR)" <jflam@microsoft.com> wrote:

[ ruby-Bugs-9462 ] BUGS in metaclasses inheritance

From: <noreply@...>
Date: 2007-03-22 10:19:10 UTC
List: ruby-core #10729
Bugs item #9462, was opened at 22/03/2007 11:19
You can respond by visiting: 
http://rubyforge.org/tracker/?func=detail&atid=1698&aid=9462&group_id=426

Category: Core
Group: 1.8.x
Status: Open
Resolution: None
Priority: 3
Submitted By: Chauk-Mean P (chauk-mean)
Assigned to: Nobody (None)
Summary: BUGS in metaclasses inheritance

Initial Comment:
 
The inheritance between metaclasses (noted between parentheses) should be as defined in the object.c source code (best seen with a fixed font) :

 *                            +------------------+
 *                            |                  |
 *              Object---->(Object)              |
 *               ^  ^        ^  ^                | 
 *               |  |        |  |                |
 *               |  |  +-----+  +---------+      |
 *               |  |  |                  |      |
 *               |  +-----------+         |      |
 *               |     |        |         |      | 
 *        +------+     |     Module--->(Module)  |
 *        |            |        ^         ^      |
 *   OtherClass-->(OtherClass)  |         |      |
 *                              |         |      | 
 *                            Class---->(Class)  |
 *                              ^                |
 *                              |                |
 *                              +----------------+
 *
 
 
The following code and output show that the actual inheritance between the metaclasses is incorrect :

def inspect_class name, obj
  puts "#################"
  puts "class : #{name} - id : #{obj.object_id}"
  puts "superclass : #{obj.superclass.name } - id : #{obj.superclass.object_id}" if obj.superclass
  puts "#################"
end
class OtherClass
end

class Object
  inspect_class self.name, self
end

class << Object
  inspect_class "(Object)", self
end

class Module
  inspect_class self.name, self
end

class << Module
  inspect_class "(Module)", self
end

class Class
  inspect_class self.name, self
end

class << Class
  inspect_class "(Class)", self
end

class OtherClass
  inspect_class self.name, self
end

class << OtherClass
  inspect_class "(OtherClass)", self
end


The output :

#################
class : Object - id : 22251190
#################
#################
class : (Object) - id : 22251160
superclass : Class - id : 22251170
#################
#################
class : Module - id : 22251180 
superclass : Object - id : 22251190
#################
#################
class : (Module) - id : 22251150
superclass : Class - id : 22251170
#################
#################
class : Class - id : 22251170 
superclass : Module - id : 22251180
#################
#################
class : (Class) - id : 22251140
superclass :  - id : 22251140
#################
#################
class : OtherClass - id : 24175280 
superclass : Object - id : 22251190
#################
#################
class : (OtherClass) - id : 24175220
superclass :  - id : 22251140
#################


The bugs :
- The superclass of (OtherClass) is (Class) instead of (Object) !
- The superclass of (Class) is (Class) instead of (Module) !
- The superclass of (Module) is (Class) instead of (Object) !

Chauk-Mean.


----------------------------------------------------------------------

You can respond by visiting: 
http://rubyforge.org/tracker/?func=detail&atid=1698&aid=9462&group_id=426

In This Thread

Prev Next