Index: src/ResolvExpr/Alternative.cc
===================================================================
--- src/ResolvExpr/Alternative.cc	(revision 25fcb84f4d4e0dd6a778f8ce5a1bb0777e946a31)
+++ src/ResolvExpr/Alternative.cc	(revision 4e7cc5ce2dc595291e1db11003b8781c0294643b)
@@ -27,5 +27,5 @@
 
 namespace ResolvExpr {
-	Alternative::Alternative() : cost( Cost::zero ), cvtCost( Cost::zero ), expr( 0 ) {}
+	Alternative::Alternative() : cost( Cost::zero ), cvtCost( Cost::zero ), expr( nullptr ) {}
 
 	Alternative::Alternative( Expression *expr, const TypeEnvironment &env, const Cost& cost )
@@ -48,5 +48,5 @@
 	}
 
-	Alternative::Alternative( Alternative && other ) : cost( other.cost ), cvtCost( other.cvtCost ), expr( other.expr ), env( other.env ) {
+	Alternative::Alternative( Alternative && other ) : cost( other.cost ), cvtCost( other.cvtCost ), expr( other.expr ), env( std::move( other.env ) ) {
 		other.expr = nullptr;
 	}
@@ -58,5 +58,5 @@
 		cvtCost = other.cvtCost;
 		expr = other.expr;
-		env = other.env;
+		env = std::move( other.env );
 		other.expr = nullptr;
 		return *this;
Index: src/ResolvExpr/TypeEnvironment.cc
===================================================================
--- src/ResolvExpr/TypeEnvironment.cc	(revision 25fcb84f4d4e0dd6a778f8ce5a1bb0777e946a31)
+++ src/ResolvExpr/TypeEnvironment.cc	(revision 4e7cc5ce2dc595291e1db11003b8781c0294643b)
@@ -50,5 +50,5 @@
 	}
 
-	EqvClass::EqvClass() : type( 0 ), allowWidening( true ) {
+	EqvClass::EqvClass() : type( nullptr ), allowWidening( true ) {
 	}
 
@@ -159,6 +159,6 @@
 
 	void TypeEnvironment::print( std::ostream &os, Indenter indent ) const {
-		for ( std::list< EqvClass >::const_iterator i = env.begin(); i != env.end(); ++i ) {
-			i->print( os, indent );
+		for ( const EqvClass & theClass : env ) {
+			theClass.print( os, indent );
 		} // for
 	}
