Index: src/CodeGen/CodeGenerator.cc
===================================================================
--- src/CodeGen/CodeGenerator.cc	(revision b2152e7a0addfb2f4eff511598c305a9bbc85368)
+++ src/CodeGen/CodeGenerator.cc	(revision d939274d90e070f24aa2934b1c5d66d8c1e8dd24)
@@ -10,6 +10,6 @@
 // Created On       : Mon May 18 07:44:20 2015
 // Last Modified By : Rob Schluntz
-// Last Modified On : Tue Jun 02 13:25:22 2015
-// Update Count     : 118
+// Last Modified On : Tue Jun 02 13:45:20 2015
+// Update Count     : 119
 //
 
Index: src/CodeGen/CodeGenerator.h
===================================================================
--- src/CodeGen/CodeGenerator.h	(revision b2152e7a0addfb2f4eff511598c305a9bbc85368)
+++ src/CodeGen/CodeGenerator.h	(revision d939274d90e070f24aa2934b1c5d66d8c1e8dd24)
@@ -10,6 +10,6 @@
 // Created On       : Mon May 18 07:44:20 2015
 // Last Modified By : Rob Schluntz
-// Last Modified On : Tue Jun 02 13:25:09 2015
-// Update Count     : 12
+// Last Modified On : Tue Jun 02 13:43:29 2015
+// Update Count     : 14
 //
 
Index: src/Common/utility.h
===================================================================
--- src/Common/utility.h	(revision b2152e7a0addfb2f4eff511598c305a9bbc85368)
+++ src/Common/utility.h	(revision d939274d90e070f24aa2934b1c5d66d8c1e8dd24)
@@ -9,7 +9,7 @@
 // Author           : Richard C. Bilson
 // Created On       : Mon May 18 07:44:20 2015
-// Last Modified By : Peter A. Buhr
-// Last Modified On : Tue May 19 15:34:57 2015
-// Update Count     : 3
+// Last Modified By : Rob Schluntz
+// Last Modified On : Fri May 29 16:17:02 2015
+// Update Count     : 7
 //
 
@@ -198,4 +198,14 @@
 }
 
+// it's nice to actually be able to increment iterators by an arbitrary amount
+template< typename Iterator >
+Iterator operator+(Iterator i, int inc) {
+	while ( inc > 0 ) {
+		++i;
+		--inc;
+	}
+	return i;
+}
+
 #endif // _UTILITY_H
 
Index: src/ControlStruct/MLEMutator.cc
===================================================================
--- src/ControlStruct/MLEMutator.cc	(revision b2152e7a0addfb2f4eff511598c305a9bbc85368)
+++ src/ControlStruct/MLEMutator.cc	(revision d939274d90e070f24aa2934b1c5d66d8c1e8dd24)
@@ -10,6 +10,6 @@
 // Created On       : Mon May 18 07:44:20 2015
 // Last Modified By : Rob Schluntz
-// Last Modified On : Tue Jun 02 13:35:49 2015
-// Update Count     : 91
+// Last Modified On : Tue Jun 02 13:43:01 2015
+// Update Count     : 92
 //
 
@@ -33,4 +33,6 @@
 		} // if
 
+		// a child statement may set the break label
+		// - if they do, attach it to the next statement
 		std::list< Statement * > &kids = cmpndStmt->get_kids();
 		for ( std::list< Statement * >::iterator k = kids.begin(); k != kids.end(); k++ ) {
@@ -38,5 +40,5 @@
 
 			if ( ! get_breakLabel().empty() ) {
-				std::list< Statement * >::iterator next = k; next++;
+				std::list< Statement * >::iterator next = k+1;
 				if ( next == kids.end() ) {
 					std::list<Label> ls; ls.push_back( get_breakLabel() );
@@ -58,5 +60,4 @@
 		} // if
 
-		//mutateAll( cmpndStmt->get_kids(), *this );
 		return cmpndStmt;
 	}
@@ -76,5 +77,5 @@
 	Statement *MLEMutator::mutate( ForStmt *forStmt ) {
 		enclosingLoops.push_back( Entry( forStmt ) );
-		maybeMutate( forStmt->get_body(), *this );
+		forStmt->set_body( maybeMutate( forStmt->get_body(), *this ) );
 
 		Entry &e = enclosingLoops.back();
@@ -185,4 +186,5 @@
 
 	Statement *MLEMutator::mutateLoop( Statement *bodyLoop, Entry &e ) {
+		// ensure loop body is a block
 		CompoundStmt *newBody;
 		if ( ! (newBody = dynamic_cast<CompoundStmt *>( bodyLoop )) ) {
@@ -216,5 +218,5 @@
 	}
 
-	//*** Entry's methods
+	//*** Entry's methods - ensure these labels can be set at most once
 	void MLEMutator::Entry::set_contExit( Label l ) {
 		assert ( contExit == "" || contExit == l );
Index: src/SynTree/Mutator.h
===================================================================
--- src/SynTree/Mutator.h	(revision b2152e7a0addfb2f4eff511598c305a9bbc85368)
+++ src/SynTree/Mutator.h	(revision d939274d90e070f24aa2934b1c5d66d8c1e8dd24)
@@ -9,7 +9,7 @@
 // Author           : Richard C. Bilson
 // Created On       : Mon May 18 07:44:20 2015
-// Last Modified By : Peter A. Buhr
-// Last Modified On : Mon May 18 10:12:28 2015
-// Update Count     : 3
+// Last Modified By : Rob Schluntz
+// Last Modified On : Fri May 29 16:34:08 2015
+// Update Count     : 4
 //
 #include <cassert>
@@ -104,5 +104,4 @@
 		assert( newnode );
 		return newnode;
-///	    return tree->acceptMutator( mutator );
 	} else {
 		return 0;
Index: src/SynTree/ObjectDecl.cc
===================================================================
--- src/SynTree/ObjectDecl.cc	(revision b2152e7a0addfb2f4eff511598c305a9bbc85368)
+++ src/SynTree/ObjectDecl.cc	(revision d939274d90e070f24aa2934b1c5d66d8c1e8dd24)
@@ -9,7 +9,7 @@
 // Author           : Richard C. Bilson
 // Created On       : Mon May 18 07:44:20 2015
-// Last Modified By : Peter A. Buhr
-// Last Modified On : Mon May 18 10:14:18 2015
-// Update Count     : 2
+// Last Modified By : Rob Schluntz
+// Last Modified On : Thu May 28 14:10:02 2015
+// Update Count     : 8
 //
 
@@ -65,4 +65,9 @@
 
 void ObjectDecl::printShort( std::ostream &os, int indent ) const {
+#if 0
+	if ( get_mangleName() != "") {
+		os << get_mangleName() << ": a "; 
+	} else 
+#endif
 	if ( get_name() != "" ) {
 		os << get_name() << ": a ";
