diff --git a/src/Reactor/LLVMReactor.cpp b/src/Reactor/LLVMReactor.cpp
index 6858cc2..62b97c5 100644
--- a/src/Reactor/LLVMReactor.cpp
+++ b/src/Reactor/LLVMReactor.cpp
@@ -6693,16 +6693,9 @@
 		Nucleus::createUnreachable();
 	}
 
-	void Return(bool ret)
+	void Return(RValue<Int> ret)
 	{
-		Nucleus::createRet(V(Nucleus::createConstantBool(ret)));
-		Nucleus::setInsertBlock(Nucleus::createBasicBlock());
-		Nucleus::createUnreachable();
-	}
-
-	void Return(const Int &ret)
-	{
-		Nucleus::createRet(ret.loadValue());
+		Nucleus::createRet(ret.value);
 		Nucleus::setInsertBlock(Nucleus::createBasicBlock());
 		Nucleus::createUnreachable();
 	}
diff --git a/src/Reactor/Reactor.hpp b/src/Reactor/Reactor.hpp
index 6303c03..04ca358 100644
--- a/src/Reactor/Reactor.hpp
+++ b/src/Reactor/Reactor.hpp
@@ -24,6 +24,7 @@
 
 namespace sw
 {
+	class Bool;
 	class Byte;
 	class SByte;
 	class Byte4;
@@ -119,20 +120,26 @@
 		struct type;
 	};
 
-	template<> struct
-	IntLiteral<Int>
+	template<>
+	struct IntLiteral<Bool>
+	{
+		typedef bool type;
+	};
+
+	template<>
+	struct IntLiteral<Int>
 	{
 		typedef int type;
 	};
 
-	template<> struct
-	IntLiteral<UInt>
+	template<>
+	struct IntLiteral<UInt>
 	{
 		typedef unsigned int type;
 	};
 
-	template<> struct
-	IntLiteral<Long>
+	template<>
+	struct IntLiteral<Long>
 	{
 		typedef int64_t type;
 	};
@@ -143,8 +150,8 @@
 		struct type;
 	};
 
-	template<> struct
-	FloatLiteral<Float>
+	template<>
+	struct FloatLiteral<Float>
 	{
 		typedef float type;
 	};
@@ -2224,8 +2231,7 @@
 	bool branch(RValue<Bool> cmp, BasicBlock *bodyBB, BasicBlock *endBB);
 
 	void Return();
-	void Return(bool ret);
-	void Return(const Int &ret);
+	void Return(RValue<Int> ret);
 
 	template<class T>
 	void Return(const Pointer<T> &ret);
diff --git a/src/Reactor/SubzeroReactor.cpp b/src/Reactor/SubzeroReactor.cpp
index eab0bf7..154967b 100644
--- a/src/Reactor/SubzeroReactor.cpp
+++ b/src/Reactor/SubzeroReactor.cpp
@@ -6507,16 +6507,9 @@
 		Nucleus::createUnreachable();
 	}
 
-	void Return(bool ret)
+	void Return(RValue<Int> ret)
 	{
-		Nucleus::createRet(Nucleus::createConstantInt(ret));
-		Nucleus::setInsertBlock(Nucleus::createBasicBlock());
-		Nucleus::createUnreachable();
-	}
-
-	void Return(const Int &ret)
-	{
-		Nucleus::createRet(ret.loadValue());
+		Nucleus::createRet(ret.value);
 		Nucleus::setInsertBlock(Nucleus::createBasicBlock());
 		Nucleus::createUnreachable();
 	}
