123456789101112131415161718192021222324252627 |
- #include "ast.hpp"
- #include <iostream>
- #include "parser.hpp"
- #include "compiler.hpp"
- #include "error.hpp"
-
- void yy::parser::error(const yy::location& loc, const std::string& msg) {
- std::cerr << "An error occured: " << msg << std::endl;
- }
-
- int main(int argc, char** argv) {
- if(argc != 2) {
- std::cerr << "please enter a file to compile." << std::endl;
- exit(1);
- }
- compiler cmp(argv[1]);
-
- try {
- cmp("program.o");
- } catch(unification_error& err) {
- err.pretty_print(std::cerr, cmp.get_file_manager(), cmp.get_type_manager());
- } catch(type_error& err) {
- err.pretty_print(std::cerr, cmp.get_file_manager());
- } catch (compiler_error& err) {
- err.pretty_print(std::cerr, cmp.get_file_manager());
- }
- }
|