added warning mode to script compiler error handler

This commit is contained in:
Marc Zinnschlag 2014-02-02 13:55:03 +01:00
parent 1deb0a7cdf
commit 8bcdf54570
2 changed files with 18 additions and 4 deletions

View file

@ -5,7 +5,7 @@ namespace Compiler
{
// constructor
ErrorHandler::ErrorHandler() : mWarnings (0), mErrors (0) {}
ErrorHandler::ErrorHandler() : mWarnings (0), mErrors (0), mWarningsMode (1) {}
// destructor
@ -35,10 +35,15 @@ namespace Compiler
// Generate a warning message.
void ErrorHandler::warning (const std::string& message, const TokenLoc& loc)
{
if (mWarningsMode==1)
{
++mWarnings;
report (message, loc, WarningMessage);
}
else if (mWarningsMode==2)
error (message, loc);
}
// Generate an error message.
@ -62,4 +67,9 @@ namespace Compiler
{
mErrors = mWarnings = 0;
}
void ErrorHandler::setWarningsMode (int mode)
{
mWarningsMode = mode;
}
}

View file

@ -16,6 +16,7 @@ namespace Compiler
{
int mWarnings;
int mErrors;
int mWarningsMode;
protected:
@ -62,6 +63,9 @@ namespace Compiler
virtual void reset();
///< Remove all previous error/warning events
void setWarningsMode (int mode);
///< // 0 ignore, 1 rate as warning, 2 rate as error
};
}