#include "error.h" #include #include #include "tokenizer.h" static char errormsg[255]; static bool raised = false; static std::string warning_msg = ""; void error_raise(const char* msg) { if (!raised) { raised = true; sprintf(errormsg, "ERROR: %s at %d:%d.\n", msg, tkn_get_line() + 1, tkn_get_row() + 1); } } void error_warning(const char *msg) { char warningmsg[255]; sprintf(warningmsg, "WARNING: %s at %d:%d.\n", msg, tkn_get_line() + 1, tkn_get_row() + 1); warning_msg += warningmsg; } bool error_raised() { return raised; } void error_print(unsigned char* mem) { //char* msg = errormsg; //while (*msg != 0) *mem++ = *msg++; printf("%s", errormsg); } void error_print_warnings() { if (warning_msg == "") warning_msg = "Compilation OK.\n"; printf("%s", warning_msg.c_str()); }