[svn:parrot] r38262 - in trunk/src: ops pmc

whiteknight at svn.parrot.org whiteknight at svn.parrot.org
Tue Apr 21 23:38:27 UTC 2009


Author: whiteknight
Date: Tue Apr 21 23:38:26 2009
New Revision: 38262
URL: https://trac.parrot.org/parrot/changeset/38262

Log:
undo the last commit because it exposes an error elsewhere that I didn't see. Posted a message to TT #213 to explain the problem and propose a solution

Modified:
   trunk/src/ops/core.ops
   trunk/src/pmc/fixedpmcarray.pmc
   trunk/src/pmc/resizablepmcarray.pmc

Modified: trunk/src/ops/core.ops
==============================================================================
--- trunk/src/ops/core.ops	Tue Apr 21 23:08:45 2009	(r38261)
+++ trunk/src/ops/core.ops	Tue Apr 21 23:38:26 2009	(r38262)
@@ -745,7 +745,8 @@
 }
 
 inline op get_addr(out INT, invar PMC) {
-    $1 = (INTVAL)($2);
+    void *ptr = VTABLE_get_pointer(interp, $2);
+    $1        = (INTVAL)ptr;
 }
 
 =back

Modified: trunk/src/pmc/fixedpmcarray.pmc
==============================================================================
--- trunk/src/pmc/fixedpmcarray.pmc	Tue Apr 21 23:08:45 2009	(r38261)
+++ trunk/src/pmc/fixedpmcarray.pmc	Tue Apr 21 23:38:26 2009	(r38262)
@@ -47,7 +47,7 @@
         const INTVAL n = SELF.elements();
 
         if (n > 1)
-           Parrot_quicksort(interp, (void **)SELF.get_pointer(), n, cmp_func);
+           Parrot_quicksort(interp, (void **)PMC_array(SELF), n, cmp_func);
     }
 
 /*
@@ -212,18 +212,6 @@
 
 /*
 
-=item C<void* get_pointer()>
-
-=cut
-
-*/
-
-    VTABLE void* get_pointer() {
-        return PMC_array(SELF);
-    }
-
-/*
-
 =item C<INTVAL get_integer_keyed_int(INTVAL key)>
 
 Returns the integer value of the element at index C<key>.

Modified: trunk/src/pmc/resizablepmcarray.pmc
==============================================================================
--- trunk/src/pmc/resizablepmcarray.pmc	Tue Apr 21 23:08:45 2009	(r38261)
+++ trunk/src/pmc/resizablepmcarray.pmc	Tue Apr 21 23:38:26 2009	(r38262)
@@ -348,18 +348,6 @@
 
 /*
 
-=item C<void* get_pointer()>
-
-=cut
-
-*/
-
-    VTABLE void* get_pointer() {
-        return PMC_array(SELF);
-    }
-
-/*
-
 =item C<void push_float(FLOATVAL value)>
 
 =item C<void push_integer(INTVAL value)>


More information about the parrot-commits mailing list