Index: src/SymTab/Autogen.cc
===================================================================
--- src/SymTab/Autogen.cc	(revision fb24492e00fbd7d87707069b8f786859f049c418)
+++ src/SymTab/Autogen.cc	(revision 9554d9b8896c38886ce2b6bb9384a2f1927f81d6)
@@ -10,5 +10,5 @@
 // Created On       : Thu Mar 03 15:45:56 2016
 // Last Modified By : Rob Schluntz
-// Last Modified On : Wed May 11 13:22:03 2016
+// Last Modified On : Thu May 26 14:14:09 2016
 // Update Count     : 1
 //
@@ -163,4 +163,29 @@
 	/// Creates a new type decl that's the same as src, but renamed and with only the ?=?, ?{} (default and copy), and ^?{} assertions (for complete types only)
 	TypeDecl *cloneAndRename( TypeDecl *src, const std::string &name ) {
+		// TypeDecl *dst = new TypeDecl( name, src->get_storageClass(), 0, src->get_kind() );
+
+		// if ( src->get_kind() == TypeDecl::Any ) {
+		// 	TypeInstType *opParamType = new TypeInstType( Type::Qualifiers(), name, dst );
+		// 	FunctionType *opFunctionType = new FunctionType( Type::Qualifiers(), false );
+		// 	opFunctionType->get_parameters().push_back(
+		// 		new ObjectDecl( "", DeclarationNode::NoStorageClass, LinkageSpec::Cforall, 0, new PointerType( Type::Qualifiers(), opParamType->clone() ), 0 ) );
+		// 	FunctionDecl *ctorAssert = new FunctionDecl( "?{}", DeclarationNode::NoStorageClass, LinkageSpec::Cforall, opFunctionType->clone(), 0, false, false );
+		// 	FunctionDecl *dtorAssert = new FunctionDecl( "^?{}", DeclarationNode::NoStorageClass, LinkageSpec::Cforall, opFunctionType->clone(), 0, false, false );
+
+		// 	opFunctionType->get_parameters().push_back(
+		// 		new ObjectDecl( "", DeclarationNode::NoStorageClass, LinkageSpec::Cforall, 0, opParamType, 0 ) );
+		// 	FunctionDecl *copyCtorAssert = new FunctionDecl( "?{}", DeclarationNode::NoStorageClass, LinkageSpec::Cforall, opFunctionType->clone(), 0, false, false );
+
+		// 	opFunctionType->get_returnVals().push_back(
+		// 		new ObjectDecl( "", DeclarationNode::NoStorageClass, LinkageSpec::Cforall, 0, opParamType->clone(), 0 ) );
+		// 	FunctionDecl *assignAssert = new FunctionDecl( "?=?", DeclarationNode::NoStorageClass, LinkageSpec::Cforall, opFunctionType, 0, false, false );
+
+
+		// 	dst->get_assertions().push_back( assignAssert );
+		// 	dst->get_assertions().push_back( ctorAssert );
+		// 	dst->get_assertions().push_back( dtorAssert );
+		// 	dst->get_assertions().push_back( copyCtorAssert );
+		// }
+
 		TypeDecl *dst = new TypeDecl( src->get_name(), src->get_storageClass(), 0, src->get_kind() );
 		cloneAll(src->get_assertions(), dst->get_assertions());
