Sorry for the delay...work interfered with my playing and I had to transfer my CVS repo to my x86-64 machine. I don't know if I'd classify it as "silence thereafter..." as in the summary, but its pretty close :)
Here's the diff against the current CVS. It doesn't mess with the default class that needs the split for the return & exception. Brian Wheeler [EMAIL PROTECTED] Index: config/auto/jit.pl =================================================================== RCS file: /cvs/public/parrot/config/auto/jit.pl,v retrieving revision 1.33 diff -u -r1.33 jit.pl --- config/auto/jit.pl 8 Mar 2004 08:49:05 -0000 1.33 +++ config/auto/jit.pl 18 Oct 2004 05:25:57 -0000 @@ -171,9 +171,9 @@ else { Configure::Data->set( jitarchname => 'nojit', - jitcpuarch => 'i386', - jitcpu => 'I386', - jitosname => 'nojit', + jitcpuarch => $cpuarch, + jitcpu => $cpuarch, + jitosname => $osname, jitcapable => 0, execcapable => 0, cc_hasjit => '', Index: config/auto/memalign.pl =================================================================== RCS file: /cvs/public/parrot/config/auto/memalign.pl,v retrieving revision 1.10 diff -u -r1.10 memalign.pl --- config/auto/memalign.pl 13 Oct 2004 14:37:59 -0000 1.10 +++ config/auto/memalign.pl 18 Oct 2004 05:25:57 -0000 @@ -42,6 +42,13 @@ Configure::Data->set('malloc_header', 'stdlib.h'); } + if (Configure::Data->get('ptrsize') == Configure::Data->get('intsize')) { + Configure::Data->set('ptrcast','int'); + } + else { + Configure::Data->set('ptrcast','long'); + } + cc_gen('config/auto/mema On Thu, 2004-10-14 at 06:37, Leopold Toetsch wrote: > Brian Wheeler wrote: > > > > * cast warnings in default.pmc. Changing static int cant_do_method to > > static long cant_do_method makes it compile without warnings, but its > > not the right fix. > > Better would be to split the return statement and the exception in the > generated code. > > > Below is a patch which fixes the first 3. > > Doesn't apply. Please rediff to current CVS and attach the patch. > > Thanks, > leolign/test_c.in'); eval { cc_build(); }; unless ($@ || cc_run_capture() !~ /ok/) { Index: config/auto/memalign/test_c.in =================================================================== RCS file: /cvs/public/parrot/config/auto/memalign/test_c.in,v retrieving revision 1.4 diff -u -r1.4 test_c.in --- config/auto/memalign/test_c.in 13 Jul 2003 18:52:37 -0000 1.4 +++ config/auto/memalign/test_c.in 18 Oct 2004 05:25:57 -0000 @@ -9,6 +9,6 @@ int main(int argc, char **argv) { void *ptr = memalign(256, 17); - puts(ptr && ((int)ptr & 0xff) == 0 ? "ok" : "nix"); + puts(ptr && ((${ptrcast})ptr & 0xff) == 0 ? "ok" : "nix"); return 0; } Index: config/auto/memalign/test_c2.in =================================================================== RCS file: /cvs/public/parrot/config/auto/memalign/test_c2.in,v retrieving revision 1.3 diff -u -r1.3 test_c2.in --- config/auto/memalign/test_c2.in 13 Jul 2003 18:52:37 -0000 1.3 +++ config/auto/memalign/test_c2.in 18 Oct 2004 05:25:57 -0000 @@ -20,6 +20,6 @@ * arbitrary allocation size) */ int i = posix_memalign(&p, s, 177); - puts(((int)p & 0xff) == 0 && i == 0 ? "ok" : "nix"); + puts(((${ptrcast})p & 0xff) == 0 && i == 0 ? "ok" : "nix"); return i; }