Fix meta method constructors
[gitmo/Mouse.git] / xs-src / Mouse.xs
index fba5778..5fca14f 100644 (file)
@@ -483,7 +483,7 @@ PPCODE:
 }
 
 SV*
-new_object_(SV* meta, ...)
+new_object(SV* meta, ...)
 CODE:
 {
     AV* const xc   = mouse_get_xc(aTHX_ meta);
@@ -492,7 +492,8 @@ CODE:
     RETVAL = mouse_instance_create(aTHX_ MOUSE_xc_stash(xc));
     mouse_class_initialize_object(aTHX_ meta, RETVAL, args, FALSE);
 }
-
+OUTPUT:
+    RETVAL
 
 void
 _initialize_object(SV* meta, SV* object, HV* args, bool ignore_triggers = FALSE)
@@ -501,16 +502,6 @@ CODE:
     mouse_class_initialize_object(aTHX_ meta, object, args, ignore_triggers);
 }
 
-void
-__xc(SV* meta)
-PPCODE:
-{
-    AV* const xc = mouse_get_xc(aTHX_ meta);
-    mXPUSHu(MOUSE_xc_flags(xc));
-    mXPUSHs(newRV_inc((SV*)MOUSE_xc_buildall(xc)));
-    mXPUSHs(newRV_inc((SV*)MOUSE_xc_demolishall(xc)));
-}
-
 MODULE = Mouse  PACKAGE = Mouse::Meta::Role
 
 BOOT:
@@ -569,7 +560,7 @@ CODE:
 
         PUSHMARK(SP);
         EXTEND(SP, 2);
-        PUSHs(RETVAL);
+        PUSHs(RETVAL); /* self */
         PUSHs(args);
         PUTBACK;