cvsuser     05/03/30 06:04:40

  Modified:    classes  closure.pmc eval.pmc sub.pmc
               t/pmc    mmd.t
  Log:
  MMD 10 - fix Sub PMC marking
  
  Revision  Changes    Path
  1.24      +2 -1      parrot/classes/closure.pmc
  
  Index: closure.pmc
  ===================================================================
  RCS file: /cvs/public/parrot/classes/closure.pmc,v
  retrieving revision 1.23
  retrieving revision 1.24
  diff -u -r1.23 -r1.24
  --- closure.pmc       26 Mar 2005 12:07:24 -0000      1.23
  +++ closure.pmc       30 Mar 2005 14:04:39 -0000      1.24
  @@ -1,6 +1,6 @@
   /*
   Copyright: 2001-2003 The Perl Foundation.  All Rights Reserved.
  -$Id: closure.pmc,v 1.23 2005/03/26 12:07:24 leo Exp $
  +$Id: closure.pmc,v 1.24 2005/03/30 14:04:39 leo Exp $
   
   =head1 NAME
   
  @@ -57,6 +57,7 @@
   
       void mark () {
           struct Parrot_sub * sub = PMC_sub(SELF);
  +        SUPER();
           mark_stack(INTERP, sub->pad_stack);
       }
   
  
  
  
  1.40      +1 -13     parrot/classes/eval.pmc
  
  Index: eval.pmc
  ===================================================================
  RCS file: /cvs/public/parrot/classes/eval.pmc,v
  retrieving revision 1.39
  retrieving revision 1.40
  diff -u -r1.39 -r1.40
  --- eval.pmc  26 Mar 2005 12:07:24 -0000      1.39
  +++ eval.pmc  30 Mar 2005 14:04:39 -0000      1.40
  @@ -1,6 +1,6 @@
   /*
   Copyright: 2001-2003 The Perl Foundation.  All Rights Reserved.
  -$Id: eval.pmc,v 1.39 2005/03/26 12:07:24 leo Exp $
  +$Id: eval.pmc,v 1.40 2005/03/30 14:04:39 leo Exp $
   
   =head1 NAME
   
  @@ -61,18 +61,6 @@
           sub_data->seg = NULL;
       }
   
  -    void mark() {
  -        parrot_sub_t sub_data;
  -        PObj *name;
  -
  -        sub_data = PMC_sub(SELF);
  -        if (!sub_data)
  -            return;
  -        name = (PObj*)sub_data->name;
  -        if (name)
  -            pobject_lives(INTERP, name);
  -    }
  -
       void destroy() {
           /*
            * If the compiled code contained any .sub (or .pcc.sub)
  
  
  
  1.74      +2 -2      parrot/classes/sub.pmc
  
  Index: sub.pmc
  ===================================================================
  RCS file: /cvs/public/parrot/classes/sub.pmc,v
  retrieving revision 1.73
  retrieving revision 1.74
  diff -u -r1.73 -r1.74
  --- sub.pmc   26 Mar 2005 12:07:24 -0000      1.73
  +++ sub.pmc   30 Mar 2005 14:04:39 -0000      1.74
  @@ -1,6 +1,6 @@
   /*
   Copyright: 2001-2003 The Perl Foundation.  All Rights Reserved.
  -$Id: sub.pmc,v 1.73 2005/03/26 12:07:24 leo Exp $
  +$Id: sub.pmc,v 1.74 2005/03/30 14:04:39 leo Exp $
   
   =head1 NAME
   
  @@ -119,7 +119,7 @@
       void init () {
           PMC_sub(SELF) = new_sub(INTERP);
           PMC_pmc_val(SELF) = NULL;
  -        PObj_active_destroy_SET(SELF);
  +        PObj_custom_mark_destroy_SETALL(SELF);
   #if 0
           if (Interp_flags_TEST(INTERP, PARROT_DEBUG_FLAG))
               printf("Address of base segment is %p\n",
  
  
  
  1.18      +1 -3      parrot/t/pmc/mmd.t
  
  Index: mmd.t
  ===================================================================
  RCS file: /cvs/public/parrot/t/pmc/mmd.t,v
  retrieving revision 1.17
  retrieving revision 1.18
  diff -u -r1.17 -r1.18
  --- mmd.t     30 Mar 2005 12:54:37 -0000      1.17
  +++ mmd.t     30 Mar 2005 14:04:40 -0000      1.18
  @@ -1,6 +1,6 @@
   #! perl -w
   # Copyright: 2001-2003 The Perl Foundation.  All Rights Reserved.
  -# $Id: mmd.t,v 1.17 2005/03/30 12:54:37 leo Exp $
  +# $Id: mmd.t,v 1.18 2005/03/30 14:04:40 leo Exp $
   
   =head1 NAME
   
  @@ -355,7 +355,6 @@
   pir_output_is(<<'CODE', <<'OUT', "MMD on argument count");
   .namespace ["main"]
   .sub main @MAIN
  -    sweepoff  # TODO
       p("ok 1\n")
       p("-twice", "ok 2\n")
   .end
  @@ -386,7 +385,6 @@
   pir_output_is(<<'CODE', <<'OUT', "MMD on mative types");
   .namespace ["main"]
   .sub main @MAIN
  -    sweepoff  # TODO
       p("ok 1\n")
       p(42)
   .end
  
  
  

Reply via email to