Index: src/Tuples/TupleAssignment.cc
===================================================================
--- src/Tuples/TupleAssignment.cc	(revision 00e80b633a432a5f2dd71a751f485834972ba720)
+++ src/Tuples/TupleAssignment.cc	(revision 7d49b72057cbd655ebb1eca536c21ec24bf995a0)
@@ -203,4 +203,12 @@
 			}
 		}
+
+		for ( ResolvExpr::Alternative & alt : lhs ) {
+			// every LHS value must be a reference - some come in with a cast expression, if it doesn't just cast to reference here.
+			// TODO: can this somehow be merge with the cast code directly above?
+			if ( ! dynamic_cast< ReferenceType * >( alt.expr->get_result() ) ) {
+				alt.expr = new CastExpr( alt.expr, new ReferenceType( Type::Qualifiers(), alt.expr->get_result()->clone() ) );
+			}
+		}
 	}
 
