# New Ticket Created by Will Coleda
# Please include the string: [perl #34430]
# in the subject line of all future correspondence about this issue.
# <URL: https://rt.perl.org/rt3/Ticket/Display.html?id=34430 >
Can I say again that I think it's cheating that python has tests directly in
t/ , so leo notices breakage there sooner? =-)
Attached is a patch that allows "(cd languages/tcl && make test)" to work
again. Looks like an unguarded access in MRO. Didn't self apply so Leo could
poke at it, in case the tcl pmcs are exploiting a hole in pmc2c2.pl.
Index: src/pmc.c
===================================================================
RCS file: /cvs/public/parrot/src/pmc.c,v
retrieving revision 1.97
diff -b -u -r1.97 pmc.c
--- src/pmc.c 10 Mar 2005 16:41:28 -0000 1.97
+++ src/pmc.c 14 Mar 2005 17:24:42 -0000
@@ -470,10 +470,11 @@
parent_type = pmc_type(interpreter, class_name);
if (!parent_type) /* abstract classes don't have a vtable */
break;
+ if (!Parrot_base_vtables[parent_type]) /* Makes Tcl Work Again */
+ break;
class = Parrot_base_vtables[parent_type]->class;
- if (!class) {
+ if (!class)
class = create_class_pmc(interpreter, parent_type);
- }
VTABLE_push_pmc(interpreter, mro, class);
if (pos >= total)
break;