Author: chromatic
Date: Thu Dec 18 12:09:21 2008
New Revision: 34076

Modified:
   trunk/src/multidispatch.c

Log:
[MMD] Removed two unnecessary clone operations on MultiSubs.  As currently the
candidate list doesn't get sorted in place, there's no reason to clone it.

Modified: trunk/src/multidispatch.c
==============================================================================
--- trunk/src/multidispatch.c   (original)
+++ trunk/src/multidispatch.c   Thu Dec 18 12:09:21 2008
@@ -782,9 +782,7 @@
 
     type_tuple = mmd_build_type_tuple_from_long_sig(interp, long_sig);
 
-    candidate_list = VTABLE_clone(interp, multi_sub);
-
-    return Parrot_mmd_sort_candidates(interp, type_tuple, candidate_list);
+    return Parrot_mmd_sort_candidates(interp, type_tuple, multi_sub);
 }
 
 
@@ -868,7 +866,6 @@
         return PMCNULL;
 
     arg_tuple  = Parrot_mmd_arg_tuple_func(interp);
-    candidates = VTABLE_clone(interp, candidates);
 
     return Parrot_mmd_sort_candidates(interp, arg_tuple, candidates);
 }

Reply via email to