Index: src/CompilationState.cc
===================================================================
--- src/CompilationState.cc	(revision 7f38b67a9dc4024ec3e7a9ae92c13720b3b5998b)
+++ src/CompilationState.cc	(revision 7f38b67a9dc4024ec3e7a9ae92c13720b3b5998b)
@@ -0,0 +1,48 @@
+//
+// Cforall Version 1.0.0 Copyright (C) 2018 University of Waterloo
+//
+// The contents of this file are covered under the licence agreement in the
+// file "LICENCE" distributed with Cforall.
+//
+// CompilationState.cc --
+//
+// Author           : Rob Schluntz
+// Created On       : Mon Ju1 30 10:47:01 2018
+// Last Modified By : Rob Schluntz
+// Last Modified On : Mon Ju1 30 10:46:25 2018
+// Update Count     : 2
+//
+
+bool
+	astp = false,
+	bresolvep = false,
+	bboxp = false,
+	bcodegenp = false,
+	ctorinitp = false,
+	declstatsp = false,
+	exprp = false,
+	expraltp = false,
+	genericsp = false,
+	libcfap = false,
+	nopreludep = false,
+	noprotop = false,
+	nomainp = false,
+	parsep = false,
+	resolvep = false,
+	symtabp = false,
+	treep = false,
+	tuplep = false,
+	validp = false,
+	errorp = false,
+	codegenp = false,
+	prettycodegenp = false,
+	linemarks = false;
+
+// bootstrapping:
+//   libcfap || treep
+
+// Local Variables: //
+// tab-width: 4 //
+// mode: c++ //
+// compile-command: "make install" //
+// End:  //
Index: src/CompilationState.h
===================================================================
--- src/CompilationState.h	(revision 7f38b67a9dc4024ec3e7a9ae92c13720b3b5998b)
+++ src/CompilationState.h	(revision 7f38b67a9dc4024ec3e7a9ae92c13720b3b5998b)
@@ -0,0 +1,48 @@
+//
+// Cforall Version 1.0.0 Copyright (C) 2018 University of Waterloo
+//
+// The contents of this file are covered under the licence agreement in the
+// file "LICENCE" distributed with Cforall.
+//
+// CompilationState.h --
+//
+// Author           : Rob Schluntz
+// Created On       : Mon Ju1 30 10:47:01 2018
+// Last Modified By : Rob Schluntz
+// Last Modified On : Mon Ju1 30 10:46:25 2018
+// Update Count     : 2
+//
+
+extern int yydebug;                   // set for -g flag (Grammar)
+extern bool
+	astp,
+	bresolvep,
+	bboxp,
+	bcodegenp,
+	ctorinitp,
+	declstatsp,
+	exprp,
+	expraltp,
+	genericsp,
+	libcfap,
+	nopreludep,
+	noprotop,
+	nomainp,
+	parsep,
+	resolvep,
+	symtabp,
+	treep,
+	tuplep,
+	validp,
+	errorp,
+	codegenp,
+	prettycodegenp,
+	linemarks;
+
+
+
+// Local Variables: //
+// tab-width: 4 //
+// mode: c++ //
+// compile-command: "make install" //
+// End:  //
Index: src/Makefile.am
===================================================================
--- src/Makefile.am	(revision 2ff9f4aa06a247501f3ad5e7a508e0ca808a99f8)
+++ src/Makefile.am	(revision 7f38b67a9dc4024ec3e7a9ae92c13720b3b5998b)
@@ -19,5 +19,6 @@
 
 SRC = main.cc \
-      MakeLibCfa.cc
+      MakeLibCfa.cc \
+      CompilationState.cc
 
 MAINTAINERCLEANFILES =
Index: src/main.cc
===================================================================
--- src/main.cc	(revision 2ff9f4aa06a247501f3ad5e7a508e0ca808a99f8)
+++ src/main.cc	(revision 7f38b67a9dc4024ec3e7a9ae92c13720b3b5998b)
@@ -28,4 +28,5 @@
 #include <string>                           // for char_traits, operator<<
 
+#include "CompilationState.h"
 #include "../config.h"                      // for CFA_LIBDIR
 #include "CodeGen/FixMain.h"                // for FixMain
@@ -72,30 +73,4 @@
 DeclarationNode * parseTree = nullptr;					// program parse tree
 
-extern int yydebug;										// set for -g flag (Grammar)
-bool
-	astp = false,
-	bresolvep = false,
-	bboxp = false,
-	bcodegenp = false,
-	ctorinitp = false,
-	declstatsp = false,
-	exprp = false,
-	expraltp = false,
-	genericsp = false,
-	libcfap = false,
-	nopreludep = false,
-	noprotop = false,
-	nomainp = false,
-	parsep = false,
-	resolvep = false,									// used in AlternativeFinder
-	symtabp = false,
-	treep = false,
-	tuplep = false,
-	validp = false,
-	errorp = false,
-	codegenp = false,
-	prettycodegenp = false,
-	linemarks = false;
-
 static void parse_cmdline( int argc, char *argv[], const char *& filename );
 static void parse( FILE * input, LinkageSpec::Spec linkage, bool shouldExit = false );
