Index: src/Common/ErrorObjects.h
===================================================================
--- src/Common/ErrorObjects.h	(revision 593370c331acdc999e4d5d6c09865db01b8c63db)
+++ src/Common/ErrorObjects.h	(revision 9d1e3f75d320ba7456c59ec8700423ad2c448c0a)
@@ -35,5 +35,5 @@
 class SemanticErrorException : public std::exception {
   public:
-  	SemanticErrorException() = default;
+	SemanticErrorException() = default;
 	SemanticErrorException( CodeLocation location, std::string error );
 	~SemanticErrorException() throw() {}
Index: src/ResolvExpr/CommonType.cc
===================================================================
--- src/ResolvExpr/CommonType.cc	(revision 593370c331acdc999e4d5d6c09865db01b8c63db)
+++ src/ResolvExpr/CommonType.cc	(revision 9d1e3f75d320ba7456c59ec8700423ad2c448c0a)
@@ -27,5 +27,10 @@
 #include "typeops.h"                     // for isFtype
 
-// #define DEBUG
+#define DEBUG
+#ifdef DEBUG
+#define PRINT(x) x
+#else
+#define PRINT(x)
+#endif
 
 namespace ResolvExpr {
@@ -70,7 +75,11 @@
 		// need unify to bind type variables
 		if ( unify( t1, t2, env, have, need, newOpen, indexer, common ) ) {
-			// std::cerr << "unify success: " << widenFirst << " " << widenSecond << std::endl;
+			PRINT(
+				std::cerr << "unify success: " << widenFirst << " " << widenSecond << std::endl;
+			)
 			if ( (widenFirst || t2->get_qualifiers() <= t1->get_qualifiers()) && (widenSecond || t1->get_qualifiers() <= t2->get_qualifiers()) ) {
-				// std::cerr << "widen okay" << std::endl;
+				PRINT(
+					std::cerr << "widen okay" << std::endl;
+				)
 				common->get_qualifiers() |= t1->get_qualifiers();
 				common->get_qualifiers() |= t2->get_qualifiers();
@@ -78,5 +87,7 @@
 			}
 		}
-		// std::cerr << "exact unify failed: " << t1 << " " << t2 << std::endl;
+		PRINT(
+			std::cerr << "exact unify failed: " << t1 << " " << t2 << std::endl;
+		)
 		return nullptr;
 	}
@@ -94,5 +105,7 @@
 			// special case where one type has a reference depth of 1 larger than the other
 			if ( diff > 0 || diff < 0 ) {
-				// std::cerr << "reference depth diff: " << diff << std::endl;
+				PRINT(
+					std::cerr << "reference depth diff: " << diff << std::endl;
+				)
 				Type * result = nullptr;
 				ReferenceType * ref1 = dynamic_cast< ReferenceType * >( type1 );
@@ -109,8 +122,12 @@
 				if ( result && ref1 ) {
 					// formal is reference, so result should be reference
-					// std::cerr << "formal is reference; result should be reference" << std::endl;
+					PRINT(
+						std::cerr << "formal is reference; result should be reference" << std::endl;
+					)
 					result = new ReferenceType( ref1->get_qualifiers(), result );
 				}
-				// std::cerr << "common type of reference [" << type1 << "] and [" << type2 << "] is [" << result << "]" << std::endl;
+				PRINT(
+					std::cerr << "common type of reference [" << type1 << "] and [" << type2 << "] is [" << result << "]" << std::endl;
+				)
 				return result;
 			}
