Index: src/InitTweak/GenInit.cc
===================================================================
--- src/InitTweak/GenInit.cc	(revision 05807e989c74b3d956464b981002890eca36abe2)
+++ src/InitTweak/GenInit.cc	(revision 8b11840bc25cf6e5bbf2f00d4d19a1bf1d24e570)
@@ -115,10 +115,10 @@
 
 	void genInit( std::list< Declaration * > & translationUnit ) {
-		ReturnFixer::makeReturnTemp( translationUnit );
+		fixReturnStatements( translationUnit );
 		HoistArrayDimension::hoistArrayDimension( translationUnit );
 		CtorDtor::generateCtorDtor( translationUnit );
 	}
 
-	void ReturnFixer::makeReturnTemp( std::list< Declaration * > & translationUnit ) {
+	void fixReturnStatements( std::list< Declaration * > & translationUnit ) {
 		PassVisitor<ReturnFixer> fixer;
 		mutateAll( translationUnit, fixer );
Index: src/InitTweak/GenInit.h
===================================================================
--- src/InitTweak/GenInit.h	(revision 05807e989c74b3d956464b981002890eca36abe2)
+++ src/InitTweak/GenInit.h	(revision 8b11840bc25cf6e5bbf2f00d4d19a1bf1d24e570)
@@ -25,6 +25,9 @@
 	void genInit( std::list< Declaration * > & translationUnit );
 
-  /// generates a single ctor/dtor statement using objDecl as the 'this' parameter and arg as the optional argument
-  ImplicitCtorDtorStmt * genCtorDtor( const std::string & fname, ObjectDecl * objDecl, Expression * arg = nullptr );
+	/// Converts return statements into copy constructor calls on the hidden return variable
+	void fixReturnStatements( std::list< Declaration * > & translationUnit );
+
+	/// generates a single ctor/dtor statement using objDecl as the 'this' parameter and arg as the optional argument
+	ImplicitCtorDtorStmt * genCtorDtor( const std::string & fname, ObjectDecl * objDecl, Expression * arg = nullptr );
 
 	/// creates an appropriate ConstructorInit node which contains a constructor, destructor, and C-initializer
