Driver ------ if valid program (syntactically and semantically) // Write Assembly outFile.open (fileNameBase + ".s"); CodeGeneratorVisitor cgv (outFile); root->accept (&cgv); outFile.close (); cout << "Writing executable to \"" << fileNameBase << "\"\n"; string gccCall = "gcc -m32 -g " + fileNameBase + ".s -o " + fileNameBase; int result = system (gccCall.c_str ()); if (result == -1) cout << "Error occurred while attempting to build executable!\n"; else cout << "Success!\n";