PERL PERL6 INTERNALS 36 DYNCLASSES OS X TEST FAILURES A PERL TASK
Date: Fri, 04 Mar 2005 10:25:15 +0100

Subject: dynclasses OS X test failures - a Perl task
From: lt@no-spam (Leopold Toetsch)

It's really nice to have the desk cluttered with 3 PCs. I ran t/dynclass/pyint_1.imc parallel through gdb and tried to track down, why it segfaults on OS X.

Eventually I found this:

$ grep -2 parents dynclasses/pynci.dump
linux/i386:

'class' => 'PyNCI',
'parents' => [
'NCI',
'PyFunc',

OS X:

'parents' => [
'PyFunc',
'NCI',

That's the reason, why a Sub is called, where there is none - PyNCI has the wrong vtable entry for invoke.

I'd be glad if some folks could have a look at the PMC compiler classes/pmc2c2.pl and lib/Parrot/Pmc2c.pm. Something seems to be fishy somewhere.

Thanks,
leo

Date: Fri, 4 Mar 2005 13:25:40 -0500 (EST)

Subject: Re: dynclasses OS X test failures - a Perl task
From: doughera@no-spam (Andy Dougherty)
On Fri, 4 Mar 2005, Leopold Toetsch wrote:

> It's really nice to have the desk cluttered with 3 PCs. I ran > t/dynclass/pyint_1.imc parallel through gdb and tried to track down, why it > segfaults on OS X.
>
> Eventually I found this:
>
> $ grep -2 parents dynclasses/pynci.dump >
> linux/i386:
>
> 'class' => 'PyNCI',
> 'parents' => [
> 'NCI',
> 'PyFunc',
>
> OS X:
>
> 'parents' => [
> 'PyFunc',
> 'NCI',
>
> That's the reason, why a Sub is called, where there is none - PyNCI has the > wrong vtable entry for invoke.
>
> I'd be glad if some folks could have a look at the PMC compiler > classes/pmc2c2.pl and lib/Parrot/Pmc2c.pm. Something seems to be fishy > somewhere.

I was hoping to get a look at this today, but instead, got stuck here:

make: *** No rule to make target `blib/include/unicode/ucnv.h', needed by `src/string_primitives.o'. Stop.


I don't remember seeing this before. How is anyone getting past this?
Hmm. Looking further, it looks as if the Makefile has decided not to build icu/ at all. Odd. Does anyone know if this is an intended side-effect of Dan's string work?

If no-one beats me to it, I'll look into the broken dependency on Monday, and then maybe on Tuesday I'll be able to look at the dynaclass/pyint core dump some more.

-- Andy Dougherty doughera@no-spam

Date: Sat, 05 Mar 2005 09:58:22 +0100

Subject: Re: dynclasses OS X test failures - a Perl task
From: lt@no-spam (Leopold Toetsch)
Andy Dougherty wrote:
> make: *** No rule to make target `blib/include/unicode/ucnv.h', > needed by `src/string_primitives.o'. Stop.

This was fixed by Bernhard yesterday.

leo

Date: Sat, 05 Mar 2005 10:02:20 +0100

Subject: Re: dynclasses OS X test failures - a Perl task
From: lt@no-spam (Leopold Toetsch)
Andy Dougherty wrote:
>> Eventually I found this:
>>
>> $ grep -2 parents dynclasses/pynci.dump >>
>> linux/i386:

>> OS X:
>>
>> 'parents' => [
>> 'PyFunc',
>> 'NCI',

After make cvsclean; per Configure.pl; ... I got the correct parents ordering. Seems that the parents somewhere go through a hash which then produces either ordering.

leo

Date: Sat, 05 Mar 2005 11:20:00 +0100

Subject: Re: dynclasses OS X test failures - a Perl task
From: lt@no-spam (Leopold Toetsch)
Andy Dougherty wrote:
> On Fri, 4 Mar 2005, Leopold Toetsch wrote:

>> I'd be glad if some folks could have a look at the PMC compiler >> classes/pmc2c2.pl and lib/Parrot/Pmc2c.pm. Something seems to be fishy >> somewhere.

Fixed. Old code that assumed there's just one flag so a hash was used.

leo

Date: Mon, 7 Mar 2005 09:09:34 -0500 (EST)

Subject: Re: dynclasses OS X test failures - a Perl task
From: doughera@no-spam (Andy Dougherty)
On Sat, 5 Mar 2005, Leopold Toetsch wrote:

> Andy Dougherty wrote:
>> make: *** No rule to make target `blib/include/unicode/ucnv.h', needed >> by `src/string_primitives.o'. Stop.
>
> This was fixed by Bernhard yesterday.

Thanks. I must have missed his fix by just a few hours. I'll check today that the dynaclasses/py* are working for me.

-- Andy Dougherty doughera@no-spam

Date: Mon, 7 Mar 2005 17:39:15 -0500 (EST)

Subject: Re: dynclasses OS X test failures - a Perl task
From: doughera@no-spam (Andy Dougherty)
On Mon, 7 Mar 2005, Andy Dougherty wrote:

> On Sat, 5 Mar 2005, Leopold Toetsch wrote:
>
>> Andy Dougherty wrote:
>>> make: *** No rule to make target `blib/include/unicode/ucnv.h', needed >>> by `src/string_primitives.o'. Stop.
>> >> This was fixed by Bernhard yesterday.
>
> Thanks. I must have missed his fix by just a few hours. I'll check today > that the dynaclasses/py* are working for me.

Yup, they are. Great. The only remaining failure now is under op/trans.
I've posted a patch for that separately.

-- Andy Dougherty doughera@no-spam