Index: src/SynTree/Declaration.h
===================================================================
--- src/SynTree/Declaration.h	(revision 933f32f2ae9703d54327e4727aceb5746433092d)
+++ src/SynTree/Declaration.h	(revision f474e917671c80fd81b2ffce8b4dac26709b333e)
@@ -286,5 +286,5 @@
 	AggregateDecl * set_body( bool body ) { AggregateDecl::body = body; return this; }
 
-	virtual void print( std::ostream &os, Indenter indent = {} ) const override;
+	virtual void print( std::ostream &os, Indenter indent = {} ) const override final;
 	virtual void printShort( std::ostream &os, Indenter indent = {} ) const override;
   protected:
Index: src/SynTree/Expression.h
===================================================================
--- src/SynTree/Expression.h	(revision 933f32f2ae9703d54327e4727aceb5746433092d)
+++ src/SynTree/Expression.h	(revision f474e917671c80fd81b2ffce8b4dac26709b333e)
@@ -731,4 +731,8 @@
 	virtual Expression * acceptMutator( Mutator & m ) { return m.mutate( this ); }
 	virtual void print( std::ostream & os, Indenter indent = {} ) const;
+
+	friend class ConverterNewToOld;
+  private:
+    TupleAssignExpr( StmtExpr * stmts );
 };
 
Index: src/SynTree/TupleExpr.cc
===================================================================
--- src/SynTree/TupleExpr.cc	(revision 933f32f2ae9703d54327e4727aceb5746433092d)
+++ src/SynTree/TupleExpr.cc	(revision f474e917671c80fd81b2ffce8b4dac26709b333e)
@@ -105,4 +105,10 @@
 }
 
+TupleAssignExpr::TupleAssignExpr( 
+	StmtExpr * s )
+: Expression(), stmtExpr(s) {
+}
+
+
 TupleAssignExpr::~TupleAssignExpr() {
 	delete stmtExpr;
