Index: src/SynTree/FunctionDecl.cc
===================================================================
--- src/SynTree/FunctionDecl.cc	(revision ac71a86572d01aed1e339480e09e6506e81f3a09)
+++ src/SynTree/FunctionDecl.cc	(revision 2037f825f430b877faa16f93128ab3695c632dc3)
@@ -39,4 +39,5 @@
 	delete type;
 	delete statements;
+	deleteAll( oldDecls );
 }
 
Index: src/SynTree/Statement.cc
===================================================================
--- src/SynTree/Statement.cc	(revision ac71a86572d01aed1e339480e09e6506e81f3a09)
+++ src/SynTree/Statement.cc	(revision 2037f825f430b877faa16f93128ab3695c632dc3)
@@ -159,4 +159,5 @@
 	delete condition;
 	// destroy statements
+	deleteAll( statements );
 }
 
@@ -187,4 +188,5 @@
 CaseStmt::~CaseStmt() {
 	delete condition;
+	deleteAll( stmts );
 }
 
@@ -220,4 +222,5 @@
 WhileStmt::~WhileStmt() {
 	delete body;
+	delete condition;
 }
 
@@ -294,4 +297,6 @@
 TryStmt::~TryStmt() {
 	delete block;
+	deleteAll( handlers );
+	delete finallyBlock;
 }
 
