[#17198] enhancing Ruby error messages for out of the bound constant Fixnum? — Guillaume Cottenceau <gc@...>

Hi,

11 messages 2001/07/03

[#17206] /* */ comments — Dave Thomas <Dave@...>

43 messages 2001/07/04
[#17207] Re: /* */ comments — Stephen White <spwhite@...> 2001/07/04

On Wed, 4 Jul 2001, Dave Thomas wrote:

[#17251] Re: /* */ comments — Sean Chittenden <sean-ruby-talk@...> 2001/07/04

> Over on http://www.rubygarden.org, dv posted a patch to parse.y that

[#17268] Re: /* */ comments — matz@... (Yukihiro Matsumoto) 2001/07/05

Hi,

[#17212] Ruby 1.6.4 Win32 .exe installer question — A Bull in the China Shop of Life <feoh@...>

Folks;

11 messages 2001/07/04

[#17225] Re: /* */ comments — Arnaud Meuret <ameuret@...4you.com>

|From: Mark Slagell [mailto:ms@iastate.edu]

17 messages 2001/07/04

[#17240] Ruby Mascot/logo — "Kevin Powick" <kpowick@...>

Hi there.

14 messages 2001/07/04

[#17281] Inheritance — "Aleksei Guzev" <aleksei.guzev@...>

15 messages 2001/07/05
[#17282] Re: Inheritance — ts <decoux@...> 2001/07/05

>>>>> "A" == Aleksei Guzev <aleksei.guzev@bigfoot.com> writes:

[#17348] Adding a method to a class at the top-level — Guillaume Cottenceau <gc@...>

Comrades,

14 messages 2001/07/05

[#17482] Aliases for class methods — "HarryO" <harryo@...>

Say I wanted to write my own version of File#open that adds some

23 messages 2001/07/08

[#17511] Ruby on Slashdot — jweirich@...

Ruby is currently mentioned on Slashdot. I posted some references.

29 messages 2001/07/08
[#17512] Re: Ruby on Slashdot — Tobias Reif <tobiasreif@...> 2001/07/08

Interesting...

[#17518] Re: Ruby on Slashdot — matz@... (Yukihiro Matsumoto) 2001/07/09

Hi,

[#17519] Re: Ruby on Slashdot — "James (ruby-talk)" <ruby@...> 2001/07/09

> |I thought about that too; what about Ruby being a standard?

[#17525] Re: Ruby on Slashdot — matz@... (Yukihiro Matsumoto) 2001/07/09

Hi,

[#17536] Re: Ruby on Slashdot — David Alan Black <dblack@...> 2001/07/09

Hello --

[#17572] Re: Constants and Variables — "HarryO" <harryo@...>

> If you want objects that don't change, try Object#freeze,

25 messages 2001/07/10

[#17732] Re: Array#sort! returns nil when array empty — hfulton@...

> Array#sort! returns nil if the array is empty, whereas ri

32 messages 2001/07/12
[#17736] Re: Array#sort! returns nil when array empty — Paul Brannan <pbrannan@...> 2001/07/12

On Fri, 13 Jul 2001 hfulton@pop-server.austin.rr.com wrote:

[#17739] Re: Array#sort! returns nil when array empty — ts <decoux@...> 2001/07/12

>>>>> "P" == Paul Brannan <pbrannan@atdesk.com> writes:

[#17746] Re: Array#sort! returns nil when array empty — Paul Brannan <pbrannan@...> 2001/07/12

On Fri, 13 Jul 2001, ts wrote:

[#17747] What is Array#- ? — Jim Freeze <jim@...> 2001/07/12

While following the Array thread, I noticed the minus

[#17752] Re: What is Array#- ? — Dave Thomas <Dave@...> 2001/07/12

Jim Freeze <jim@freeze.org> writes:

[#17753] Re: What is Array#- ? — Jim Freeze <jim@...> 2001/07/12

On Fri, 13 Jul 2001, Dave Thomas wrote:

[#17833] Extending objects — "Aleksei Guzev" <aleksei.guzev@...>

16 messages 2001/07/14
[#17834] Ruby-newbie seeks help with Rubywin starting IRB — "Euan Mee" <lucid@...> 2001/07/14

Once I fire up Rubywin, and then invoke _R_uby _I_rb from the

[#17839] Re: Ruby-newbie seeks help with Rubywin starting IRB — A Bull in the China Shop of Life <feoh@...> 2001/07/14

At 07:05 PM 7/14/01 +0900, Euan Mee spewed forth:

[#17859] Re: Creating methods on the fly — "HarryO" <harryo@...>

I

18 messages 2001/07/15

[#17925] Movement in scripting language communities to integrate XML-RPC — gsemones@... (Guerry Semones)

Greetings,

20 messages 2001/07/16
[#17934] Re: Movement in scripting language communities to integrate XML-RPC — Tobias Reif <tobiasreif@...> 2001/07/16

"out of the box" by including

[#18018] Broadcasting data — "HarryO" <harryo@...>

Does someone have an example of broadcasting data around a network using

12 messages 2001/07/18

[#18023] [ANN] libxslt Rubified! — Wai-Sun Chia <waisun.chia@...>

Hello,

16 messages 2001/07/18
[#18024] Re: [ANN] libxslt Rubified! — TAKAHASHI Masayoshi <maki@...> 2001/07/18

Wai-Sun Chia <waisun.chia@compaq.com> wrote:

[#18100] Looking for Ruby programming exercises — Wayne Vucenic <wvucenic@...> 2001/07/19

I've been learning Ruby, mostly with the Pickaxe book, and it's going

[#18188] Newbie. Sinking fast. Please help. — Matt <matt@...>

I bought Programming Ruby a number of months back and finally have an opportunity to try out Ruby. However, I can't get it to build. Actually, that's not quite accurate. It builds fine. It won't pass 'make test'.

12 messages 2001/07/20

[#18193] Re: 99 bottles of beer — "Dat Nguyen" <thucdat@...>

18 messages 2001/07/20
[#18204] Re: 99 bottles of beer — Glen Starchman <glen@...> 2001/07/20

99.downto(0){|x|w=" on the wall";u="#{x!=0?eval(x.to_s):'no more'}

[#18306] Ruby as opposed to Python? — "Mark Nenadov" <mnenadov@...>

Hello. I have toyed with the idea of trying Ruby out for some time now.

118 messages 2001/07/22
[#18759] Re: Ruby as opposed to Python? — Paul Prescod <paulp@...> 2001/07/29

Yukihiro Matsumoto wrote:

[#18774] Re: Ruby as opposed to Python? — "Florian G. Pflug" <fgp@...> 2001/07/30

On Mon, Jul 30, 2001 at 05:58:22AM +0900, Paul Prescod wrote:

[#18393] Trouble Using FXRuby on cygwin/Windows NT — rgilbert1@... (Robbie Gilbert)

Hi,

10 messages 2001/07/23

[#18566] Which database should I use? — Urban Hafner <the-master-of-bass@...>

Hello everybody,

17 messages 2001/07/26
[#18575] Re: Which database should I use? — Urban Hafner <the-master-of-bass@...> 2001/07/26

[#18582] Re: Which database should I use? — Michael Neumann <neumann@...> 2001/07/26

Urban Hafner wrote:

[ruby-talk:18027] rb_define_class_under appears to be broke on WIN32

From: Bryan Murphy <bryan@...>
Date: 2001-07-18 05:10:45 UTC
List: ruby-talk #18027
Hey guys,

rb_define_class_under() appears to be seriously broken on WIN32 (Microsoft Visual 
C++ 6.0 sp5) builds.  The same code I have works fine when built with g++/gcc on my 
Linux box.  Here is the quick breakdown:

rb_define_class_under() executes it's first few lines of code, and then passes 
control over to rb_define_class_id() which proceeds to segfault on the following 
line:  

RBASIC(klass)->klass = rb_singleton_class_new(RBASIC(super)->klass);

Unfortunately, I am relatively new to the Ruby code base and haven't been able to 
figure out what the cause of this problem is, but I can reproduce it 100% of the 
time and this happens with both 1.6.4 and the nightly 1.7.x snapshot.

Below is the code I am using that exhibits the problem.  I also have a few programs 
available that I used to narrow the problem down at this url:

http://strider.terralab.com/~bryan/rb-cpp-test.zip

SWIG makes consistent use of this function, so this could be a problem for anybody 
porting their SWIG modules to WIN32 (otherwise I'd just work around it).

Should I also submit this as a bug report?

Thanks,
Bryan

--[SNIP]--


Build:
cl.exe -nologo -DWIN32 -Zi -MD -O2b2xg- -G5 -GR -GX -Fm test4.cpp mswin32-
ruby16.lib -link /STACK:0x2000000

test4.cpp:
#include <iostream.h>
#include "ruby.h"

class ITestSwig
{
public:
        ITestSwig();
        virtual ~ITestSwig();

        virtual int Multiply(int, int) = 0;
};

class CTestSwig:
        public ITestSwig
{
public:
        CTestSwig();
        virtual ~CTestSwig();

        virtual int Multiply(int, int);
};

ITestSwig::ITestSwig()
{
        cout << "ITestSwig::Constructor" << endl;
}

ITestSwig::~ITestSwig()
{
        cout << "ITestSwig::Destructor" << endl;
}

CTestSwig::CTestSwig()
{
        cout << "CTestSwig::Constructor" << endl;
}

CTestSwig::~CTestSwig()
{
        cout << "CTestSwig::Destructor" << endl;
}

int CTestSwig::Multiply(int a, int b)
{
        return a * b;
}

VALUE rbModule, cTestSwig;

VALUE wrap_Multiply(VALUE self, VALUE a, VALUE b)
{
        CTestSwig *c;

        Data_Get_Struct(self, CTestSwig, c);

        int r = c->Multiply(NUM2INT(a), NUM2INT(b));

        return INT2NUM(r);
};

void wrap_FREE(void *p)
{
        CTestSwig *c = (CTestSwig *)p;

        delete c;
}

VALUE wrap_NEW(VALUE clss)
{
        CTestSwig *c = new CTestSwig();

        VALUE t = Data_Wrap_Struct(clss, 0, wrap_FREE, c);

        rb_obj_call_init(t, 0, NULL);

        return t;
}

#define RB_FUNC(func) ((VALUE (*)__(()))func)

int main(int argc, char **argv)
{
        ruby_init();

        ruby_script("embedded");

        rbModule = rb_define_module("TestSwig");

        cTestSwig = rb_define_class_under(rbModule, "CTestSwig", rb_cObject);
        rb_define_singleton_method(cTestSwig, "new", RB_FUNC(wrap_NEW), 0);
        rb_define_method(cTestSwig, "Multiply", RB_FUNC(wrap_Multiply), 2);

        rb_load_file("test4.rb");

        ruby_run();

        return 0;
}

test4.rb:
obj = TestSwig::CTestSwig.new()

print "4 * 22 = " + obj.Multiply(4,22).to_s

In This Thread

Prev Next