Index: src/Validate/ImplementEnumFunc.cpp
===================================================================
--- src/Validate/ImplementEnumFunc.cpp	(revision 8315947b914ae5bb9508eeafa64f85f406f80c05)
+++ src/Validate/ImplementEnumFunc.cpp	(revision 7db4fcd41f6e480c127ac67aab54ad38567b44b9)
@@ -25,7 +25,4 @@
 		: decl(decl),
 		  functionNesting{functionNesting},
-		//   quasi_void_decl(new ast::StructDecl(decl->location,
-		//   	"quasi_void", ast::AggregateDecl::Struct,
-		// 	{}, ast::Linkage::AutoGen)),
 		  proto_linkage{ast::Linkage::Cforall} {}
 
@@ -194,5 +191,5 @@
         {new ast::ObjectDecl(getLocation(), "_i", new ast::EnumInstType(decl))},
         {new ast::ObjectDecl(getLocation(), "_ret",
-            new ast::BasicType(ast::BasicKind::UnsignedInt))});
+            new ast::BasicType(ast::BasicKind::SignedInt))});
 }
 
@@ -229,5 +226,5 @@
 	return genProto(
 		"fromInt_unsafe",
-		{new ast::ObjectDecl(getLocation(), "_i", new ast::BasicType(ast::BasicKind::UnsignedInt))},
+		{new ast::ObjectDecl(getLocation(), "_i", new ast::BasicType(ast::BasicKind::SignedInt))},
 		{new ast::ObjectDecl(getLocation(), "_ret", new ast::EnumInstType(decl))}
 	);
@@ -238,5 +235,5 @@
 		"fromInstance",
 		{new ast::ObjectDecl(getLocation(), "_i", new ast::EnumInstType(decl))},
-		{new ast::ObjectDecl(getLocation(), "_ret", new ast::BasicType(ast::BasicKind::UnsignedInt))}
+		{new ast::ObjectDecl(getLocation(), "_ret", new ast::BasicType(ast::BasicKind::SignedInt))}
 	);
 }
@@ -285,5 +282,5 @@
 		func->location,
 		new ast::VariableExpr(func->location, param),
-		new ast::BasicType(ast::BasicKind::UnsignedInt),
+		new ast::BasicType(ast::BasicKind::SignedInt),
 		ast::GeneratedFlag::ExplicitCast
 	);
@@ -383,5 +380,5 @@
 			func->location,
 			new ast::VariableExpr( func->location, func->params.front() ),
-			new ast::BasicType( ast::BasicKind::UnsignedInt ),
+			new ast::BasicType( ast::BasicKind::SignedInt ),
 			ast::GeneratedFlag::ExplicitCast
 		)});
@@ -407,5 +404,5 @@
 		func->location,
 		new ast::VariableExpr(func->location, func->params.front()),
-		new ast::BasicType( ast::BasicKind::UnsignedInt ),
+		new ast::BasicType( ast::BasicKind::SignedInt ),
 			ast::GeneratedFlag::ExplicitCast);
 	func->stmts = new ast::CompoundStmt(
