Index: src/main.cc
===================================================================
--- src/main.cc	(revision f326f991b29be15df1c48ee29bf3e49f7a7ba81a)
+++ src/main.cc	(revision f77f12e2096336ecd8398d4ba8978354d6a0445b)
@@ -10,5 +10,5 @@
 // Created On       : Fri May 15 23:12:02 2015
 // Last Modified By : Rob Schluntz
-// Last Modified On : Thu Mar 31 14:00:12 2016
+// Last Modified On : Mon Apr 11 17:49:38 2016
 // Update Count     : 200
 //
@@ -56,5 +56,5 @@
 
 static void parse( FILE * input, LinkageSpec::Type t, bool shouldExit = false );
-static void dump( std::list< Declaration * > & translationUnit );
+static void dump( std::list< Declaration * > & translationUnit, std::ostream & out = std::cout );
 
 bool
@@ -308,5 +308,7 @@
 	} catch ( SemanticError &e ) {
 		if ( errorp ) {
-			dump( translationUnit );
+			std::cerr << "---AST at error:---" << std::endl;
+			dump( translationUnit, std::cerr );
+			std::cerr << std::endl << "---End of AST, begin error message:---\n" << std::endl;
 		}
 		e.print( std::cerr );
@@ -348,5 +350,5 @@
 }
 
-static void dump( std::list< Declaration * > & translationUnit ) {
+static void dump( std::list< Declaration * > & translationUnit, std::ostream & out ) {
 	std::list< Declaration * > decls;
 	if ( noprotop ) {
@@ -357,5 +359,5 @@
 	}
 
-	printAll( decls, std::cout );
+	printAll( decls, out );
 	deleteAll( translationUnit );
 }
