All --

I changed the Jako makefile to use imcc instead of assemble.pl,
but I noticed that the mandelzoom example no longer cleared
the screen between screen updates. So, I manually assembed its
languages/jako/examples/mandelzoom.pasm with assemble.pl with
the idea of comparing the results of dissassemble.pl on the
one assembled with imcc and the one assembled with assemble.pl.

However, disassemble.pl dies while looking at the immc assembled
version (the assemble.pl assembled version disassembles fine):

Unrecognized constant type code '0'! at
/home/gregor/src/parrot-cvs/lib/Parrot/PackFile/Constant.pm line 198,
<GEN0> line 7.

(I have applied the patch below to make the error message useful.)

I grubbed around in languages/imcc/pbc.c a bit to see if I could
tell if anything was obviously wrong, but didn't see anything.

Maybe disassemble.pl isn't meant to be used?

ASIDE:
I'm also wondering if our use of character constants (ord("x") in Perl,
'x' in C) to specify the constant types might present a character
set problem on some platforms? If we build a PBC on an ASCII
platform, won't the character value for 'n' be different than on
an EBCDIC platform?


I'd like to stick with imcc as my assembler, but I need to figure
out why the behavior of mandelzoom differs depending upon how it
was assembled. I'll need to figure out some other way if I can't
use disassemble.pl to do it.


Regards,

-- Gregor

-- 
Gregor Purdy                            [EMAIL PROTECTED]
Focus Research, Inc.               http://www.focusresearch.com/








Index: lib/Parrot/PackFile/Constant.pm
===================================================================
RCS file: /cvs/public/parrot/lib/Parrot/PackFile/Constant.pm,v
retrieving revision 1.11
diff -u -r1.11 Constant.pm
--- lib/Parrot/PackFile/Constant.pm     19 Aug 2002 23:17:26 -0000     
1.11
+++ lib/Parrot/PackFile/Constant.pm     10 Jul 2003 12:33:02 -0000
@@ -195,7 +195,7 @@
   } elsif ($type == $type_codes{'PFC_KEY'}) {
     $value = shift_key($string);
   } else {
-    die;
+    die "Unrecognized constant type code '$type'!";
   }
  
   $self->{TYPE}  = $type;


Reply via email to